Assigning a Kubernetes Pod to a Specific Node

30 minutes
  • 2 Learning Objectives

About this Hands-on Lab

Kubernetes scheduling usually doesn’t need much help in order to determine which node to run a pod on. However, you may occasionally wish to have a little more control. In this lab, you will be able to practice the process of ensuring a pod runs on a specific node.

Learning Objectives

Successfully complete this lab by achieving the following learning objectives:

Configure the `auth-gateway` Pod to Only Run on `k8s-worker2`

Locate the auth-gateway pod in the beebox-auth namespace. Modify the pod, using a label and a nodeSelector constraint, so it will always be scheduled on k8s-worker2. You will need to delete and re-create the pod in order for these changes to take effect.

You can find a YAML descriptor for this pod at /home/cloud_user/auth-gateway.yml.

Configure the `auth-data` Deployment’s Replica Pods to Only Run on `k8s-worker2`

You will find the auth-data deployment in the beebox-auth namespace. Modify the deployment, using a nodeSelector constraint, so its replica pods will always run on k8s-worker2. These changes should take effect once you make this change via a rolling deployment.

You can find a YAML descriptor for this pod at /home/cloud_user/auth-data.yml.

Additional Resources

You are working for BeeBox, a company that provides regular shipments of bees to customers. The company has a few pods running in their Kubernetes cluster that depend on special services that exist outside the cluster. These services are highly sensitive, and the security team has asked that they be exposed only to certain network segments.

Unfortunately, only the k8s-worker2 node exists in the network segment shared by these services. This means only pods on the k8s-worker2 node will be able to access these sensitive external services, and pods on the k8s-worker1 or k8s-control nodes cannot access them.

Your task is to reconfigure the auth-gateway pod and the auth-data deployment's replica pods so they will always run on the k8s-worker2 node.

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?