Launching An EKS Cluster With eksctl

1 hour
  • 4 Learning Objectives

About this Hands-on Lab

Elastic Kubernetes Service (EKS) is a fully managed Kubernetes service from AWS. In this lab, you will work with the AWS command-line interface and console, using command-line utilities like `eksctl` and `kubectl` to launch an EKS cluster, provision a Kubernetes Deployment and Pod running instances of `nginx`, and create a `LoadBalancer` Service to expose your application over the internet.

Learning Objectives

Successfully complete this lab by achieving the following learning objectives:

Log In to the Provided EC2 Instance

Log in to the EC2 instance provided in the lab environment using the public IP address, cloud_user username, and password provided in the lab interface.

Provision an EKS Cluster

Use eksctl to provision an EKS cluster with three worker nodes in us-east-1.
Use Kubernetes version 1.16 or later.

Create a Deployment on Your EKS Cluster

Using kubectl and the provided Service and Deployment definition files provided in the EKS Basics GitHub repository:

  • Create a LoadBalancer Service.
  • Check the status of your LoadBalancer Service using kubectl.
  • Create an NGINX Deployment.
  • Check the status of your cluster, Deployment, and Pods using kubectl.
  • When NGINX is up and running, check that you can access your application using the DNS name of the LoadBalancerprovided in the kubectl get service output.
Test the High Availability Features of Your EKS Cluster
  1. In the EC2 console, terminate all the worker nodes.
  2. Check the status of your cluster, Deployment, and Pods using kubectl. After a few minutes, you should see EKS launching new instances to keep your Service running.
  3. When the cluster is back to a steady state, check that your application is up and running using curl.

Additional Resources

You are a DevOps engineer who has been tasked with creating a test Elastic Kubernetes Service cluster, as well as ensuring kubectl functions as expected when utilizing EKS. You've been provided with test Service and Deployment definitions and a pre-configured EC2 instance to serve as the EKS admin interface for your environment.

Service and Deployment Files

Note: All AWS resources should be created in the us-east-1 region.

What are Hands-on Labs

Hands-on Labs are real environments created by industry experts to help you learn. These environments help you gain knowledge and experience, practice without compromising your system, test without risk, destroy without fear, and let you learn from your mistakes. Hands-on Labs: practice your skills before delivering in the real world.

Sign In
Welcome Back!

Psst…this one if you’ve been moved to ACG!

Get Started
Who’s going to be learning?