If you want to deploy a Metrics Server in Kubernetes, then you definately first must create a namespace for it to reside it, adopted by putting in the precise metrics server.
Step 1 – Set up the Metrics Server
Utilizing kubectl
kubectl apply -f https://github.com/kubernetes-sigs/metrics-server/releases/obtain/v0.5.0/elements.yaml
Utilizing helm
kubectl create namespace metrics
helm set up metrics-server
steady/metrics-server
--version 2.9.0
--namepsace metrics
Step 2 – Get the Metrics Server Standing
In case you used kubectl
above, then it’s best to have the ability to run:
kubectl get apiservice v1beta1.metrics.k8s.io -o json | jq '.standing'
In any other case with helm
, run:
kubectl describe hpa
Step 3 – Verifying the Metrics Server Setup
In case you get the next output, then it simply means the server isn’t prepared but, wait a second longer:
{
"circumstances": [
{
"lastTransitionTime": "2022-04-13T13:26:45Z",
"message": "endpoints for service/metrics-server in "kube-system" have no addresses with port name "https"",
"reason": "MissingEndpoints",
"status": "False",
"type": "Available"
}
]
}
When the Metrics Server is prepared, you’re going to get a response as follows:
{
"circumstances": [
{
"lastTransitionTime": "2022-04-13T13:27:08Z",
"message": "all checks passed",
"reason": "Passed",
"status": "True",
"type": "Available"
}
]
}
Step 4 – A tip to be alerted when prepared
You possibly can at all times watch
the above command as a substitute of operating the identical command time and again above, whereas ready for the server to turn out to be obtainable:
watch -n1 "kubectl get apiservice v1beta1.metrics.k8s.io -o json | jq '.standing'"