Discovering Pod Resource Usage with Kubernetes Metrics
Introduction
Kubernetes metrics allow you to gain insight into a wide variety of data about your Kubernetes applications. You can use these metrics to gain insight into how your compute resources are being used. In this lab, you will have the opportunity to hone your skills by investigating existing pods running in a Kubernetes cluster to determine which ones are using the most CPU.
Solution
Log in to the lab server using the credentials provided:
ssh cloud_user@<PUBLIC_IP_ADDRESS>
Install Kubernetes Metrics Server
Install Kubernetes Metrics Server:
kubectl apply -f https://raw.githubusercontent.com/linuxacademy/content-cka-resources/master/metrics-server-components.yaml
Verify Metrics Server is responsive:
kubectl get --raw /apis/metrics.k8s.io/
It may take a few minutes for Metrics Server to become responsive to requests.
Locate the CPU-Using Pod and Write Its Name to a File
In the
beebox-mobile
namespace, determine which pod with the labelapp=auth
is using the most CPU:kubectl top pod -n beebox-mobile --sort-by cpu --selector app=auth
If you get an error message saying metrics are not available, wait a few minutes and then run the command again.
Write the name of the pod to a file:
echo auth-proc > /home/cloud_user/cpu-pod-name.txt