Create Kubernetes Nginx Ingress Controller for External API Traffic

Lab Steps

lock
Logging in to the Amazon Web Services Console
lock
Connecting to the CloudAcademy Web based K8s IDE
lock
Install Cilium CNI
lock
Install Nginx Ingress Controller
lock
Deploy the API Deployment and Service Resources
lock
Deploy the API Ingress Resource
lock
Perform External API Test

The hands-on lab is part of these learning paths

Building, Deploying, and Running Containers in Production
course-steps 5 certification 3 lab-steps 14 description 1
Building and Deploying a Cloud Native Application
course-steps 4 certification 1 lab-steps 6

Ready for the real environment experience?

DifficultyIntermediate
Time Limit1h 30m
Students18
Ratings
5/5
star star star star star

Description

If you're building and deploying cloud native applications and microservices, then Kubernetes is the must have platform. Kubernetes provides superior container-orchestration, deployment, scaling, and management. When it comes to securing application traffic within Kubernetes, consider using Network Policies.

Being able to consume Kubernetes hosted services externally is a common requirement. Kubernetes provides the Ingress resource type to implement this requirement. In this Lab you learn how to deploy an Nginx Ingress Controller and install and expose a sample API service using an Ingress resource.

 

Lab Objectives

Upon completion of this Lab, you will be able to:

You should:

  • Be comfortable with basic Linux command line administration
  • Be comfortable with basic Kubernetes cluster administration

Lab Environment

This Lab will start with the following AWS resources provisioned automatically for you:

  • A single EC2 instance, named k8s.cluster.cloudacademy.platform.instance, which will have a public IP address attached. This will be the instance that you will connect to using your local workstation browser.

To achieve the Lab end state, you will be walked through the process of:

  • Using your local workstation browser to remotely connect to k8s.cluster.cloudacademy.platform.instance
  • Install and setup the Nginx Ingress Controller
  • Deploy a ready made Programming Languages themed API into a Kubernetes cluster
  • Create and deploy an Ingress resource to expose the API externally
  • Test and validate the API externally

 

About the Author

Students12993
Labs28
Courses66
Learning paths15

Jeremy is the DevOps Content Lead at Cloud Academy where he specializes in developing technical training documentation for DevOps.

He has a strong background in software engineering, and has been coding with various languages, frameworks, and systems for the past 20+ years. In recent times, Jeremy has been focused on DevOps, Cloud, Security, and Machine Learning.

Jeremy holds professional certifications for both the AWS and GCP cloud platforms.
 

Covered Topics