Skip to main content

Pregunta 8 - Información del Control Plane

Question 8 | Get Controlplane Information

Ssh into the controlplane node with ssh cluster1-controlplane1. Check how the controlplane components kubelet, kube-apiserver, kube-scheduler, kube-controller-manager and etcd are started/installed on the controlplane node. Also find out the name of the DNS application and how it's started/installed on the controlplane node.

Write your findings into file /opt/course/8/controlplane-components.txt. The file should be structured like:

/opt/course/8/controlplane-components.txt

kubelet: [TYPE] kube-apiserver: [TYPE] kube-scheduler: [TYPE] kube-controller-manager: [TYPE] etcd: [TYPE] dns: [TYPE] [NAME] Choices of [TYPE] are: not-installed, process, static-pod, pod


Esta pregunta puede ser muy rápida si sabes dónde buscar.

# Si no queremos entrar vía ssh podemos solo verificar los pods del namespace kube-system con el sufijo control-plane
kubectl get pods -n kube-system -o name | grep control-plane
pod/etcd-kind-cluster-control-plane
pod/kube-apiserver-kind-cluster-control-plane
pod/kube-controller-manager-kind-cluster-control-plane
pod/kube-scheduler-kind-cluster-control-plane

# Caso quieras verificar vía ssh
ssh cluster1-controlplane1
root@cluster1-controlplane1:~# ls -lha /etc/kubernetes/manifests/
kube-controller-manager.yaml
etcd.yaml
kube-apiserver.yaml
kube-scheduler.yaml
# Todos los anteriores ya son static-pod y podríamos saberlo sin necesidad de entrar aquí vía ssh

# si kubelet es un proceso se mostrará aquí
ps aux | grep kubelet
# o verificar que el servicio está ejecutándose
systemctl status kubelet

# Para verificar el dns
kubeclt get pods -n kube-system # y verás que coredns debe estar ejecutándose
kubectl get ds,deploy -n kubesystem # Solo para verificar si este pod vino de un deploy o de un daemonset, lo que importa es el nombre para nosotros

Por fin tendremos en el archivo /opt/course/8/controlplane-components.txt.

kubelet: process
kube-apiserver: static-pod
kube-scheduler: static-pod
kube-controller-manager: static-pod
etcd: static-pod
dns: pod coredns