Crypto Trends

Step-by-Step Elastic Kubernetes Service (EKS) Cluster Setup with Auto Mode via AWS Console and eksctl

What is EKS Auto Mode?

EKS Auto Mode is a management enhancement for Amazon Elastic Kubernetes Service (EKS) that simplifies the operational management of Kubernetes clusters and extends AWS’s control beyond the cluster itself. It automates the setup and management of the infrastructure required for running workloads, including compute, networking, storage, and scaling, while integrating deeply with AWS services like EC2, EBS, and ELB

Key Features of EKS Auto Mode

Streamlined Management: Production-ready clusters with minimal operational overhead and automation of key tasks.

Automated Compute and Scaling:

· Automated node lifecycle, scaling with Karpenter, and GPU support.

· Regular node replacements for security (21-day max lifetime).

Networking and Load Balancing:

· Automates Pod/service networking with IPv4/IPv6 support.

· Integrates with AWS Elastic Load Balancers for seamless traffic management.

Cost Optimization:

· Automatically consolidates workloads and terminates unused nodes.

· Supports cost-saving configurations like Spot instances.

Security:

· Immutable AMIs, SELinux enforcement, and no direct SSH/SSM access.

· Regular updates to enhance security posture.

Customizability:

· Custom NodePools and NodeClasses for specialized workloads.

· Support for DaemonSets to add custom monitoring/services.

AWS Integration: Fully integrates with EC2, EBS, ELB, and other AWS services.

EKS Auto Mode Pricing:

EKS Auto Mode Pricing simplifies Amazon EKS cluster management by automatically selecting and scaling the underlying infrastructure. Pricing includes:

  1. EC2 Instance Costs: Standard charges for the EC2 instances provisioned for your workloads.
  2. Management Fee: A per-hour fee for each EC2 instance, which varies by instance type, to cover the automation of infrastructure management.

Auto Mode dynamically optimizes resource usage and scales across Availability Zones, ensuring high availability and cost-effectiveness. You only pay for the compute and management fees associated with your active workloads

Step 1: Create EKS Cluster with Auto Mode

Open the AWS Management Console, search for EKS, and click on Elastic Kubernetes Service

Click on Create cluster

Select Quick configuration (with EKS Auto Mode) to enable EKS Auto Mode

Enter the EKS cluster name and select the Kubernetes version

Click Create recommended role to create the Cluster IAM role

Select AWS Service as the trusted entity

Select EKS as the service and EKS-Auto Cluster as the use case, then click Next

Here, you can view the permission policies. After reviewing, click Next

Enter the role name and click Create role

The role has been successfully created for the EKS Auto Cluster

Click Create recommended role to create the Node IAM role

Select AWS Service as the trusted entity

Select EKS as the service name and EKS Auto Node as the use case

The permission policies for EKS Auto Node are added. Click Next to proceed

Enter the role name and click Create role

The role has been successfully created

Refresh the Node IAM role, select the role you created, then choose the VPC and Subnets

You can now view the EKS Auto Mode capabilities

Here, you can see that the EKS Auto Mode value is set to enabled

Click Create to initialize the creation of the cluster

The cluster creation request has been submitted, and it will take some time to complete

Once the EKS cluster is created, you will see EKS Auto Mode displayed as Enabled

Step 2: Disable EKS Auto Mode

Go to the EKS Cluster dashboard and click on Manager

Uncheck the Use EKS Auto Mode option to disable

Click Save changes

Type confirm to delete the EKS Auto Mode nodes, then click Delete

Now, you will see the EKS Auto Mode status updated to Disabled

Method 2: Create an EKS Auto Mode Cluster with eksctl

To create an EKS Auto Mode cluster using eksctl, ensure you have the eksctl CLI installed. Then, run this command: eksctl create cluster — name=devops-auto-mode — enable-auto-mode. This will create a cluster named devops-auto-mode with EKS Auto Mode enabled

If you encounter the error “unknown flag: — enable-auto-mode”, it means your eksctl version is outdated.

Upgrade the eksctl version to the latest release

Run the brew update command to update Homebrew

Run the brew upgrade eksctl command to upgrade eksctl to the latest version

Now, run the command eksctl create cluster — name=devops-auto-mode — enable-auto-mode to create the EKS Auto Mode cluster

You will be able to view the newly created EKS cluster in the AWS Management Console

Navigate to the newly created EKS cluster in the AWS Management Console, where you will see that EKS Auto Mode is set to Enabled

Disabling EKS Auto Mode is not possible using the eksctl command. To remove Auto Mode, you need to delete the existing cluster and recreate it without enabling Auto Mode. To delete the cluster, run this command eksctl delete cluster — name=devops-auto-mode

Conclusion

EKS Auto Mode simplifies Kubernetes cluster management by automating infrastructure and operational tasks, making it easier to deploy and maintain production-ready environments. With features like automated scaling, cost optimization, enhanced security, and seamless AWS integration, it provides a balanced approach to managing workloads effectively while reducing operational overhead

Keep Learning, Keep EKS-ing!!!

For more insightful content on AWS best practices, cloud security, devops and technology updates, don’t forget to follow me! 🚀

Feel free to reach out to me, if you have any other queries or suggestions

Stay connected on Linkedin https://www.linkedin.com/in/mahendran-selvakumar/

Related Articles

Leave a Reply

Your email address will not be published. Required fields are marked *

Back to top button