Actualice los certificados de apiserver para el clúster HA k8s

Actualice los certificados de apiserver para el clúster HA k8s

Tengo un clúster HA k8s creado por kubeadm. Me gustaría actualizar el certificado del servidor API para agregar SAN adicionales. Para ello seguí algunos pasos descritos en otrocorreo, pero lo que hice para el clúster HA:

  • Certificados de servidor API eliminadosen todos los nodos del plano de control

  • Mapa de configuración actual de kubeadm recuperado

kubectl get configmap kubeadm-config \
  --namespace kube-system \
  --output jsonpath={{ .data.ClusterConfiguration }}
  • Lo ampliamos con la parte de configuración necesaria.
apiServer:
  certSANs:
    - localhost
    - 127.0.0.1
  • Nuevos certificados generados con configuración actualizada.en todos los nodos del plano de control

kubeadm init phase certs apiserver --config <config_path>

  • Contenedor del servidor API reiniciadoen todos los nodos del plano de control

  • Configuración actualizada en el clúster

kubeadm init phase upload-config kubeadm --config <config_path>

La pregunta es si estos pasos son correctos o hay otra manera que es más sencilla?

Respuesta1

La forma más rápida que se me ocurre es esta:

# remove current apiserver certificates
sudo rm /etc/kubernetes/pki/apiserver.*

# generate new certificates
sudo kubeadm init phase certs apiserver --apiserver-cert-extra-sans=localhost,127.0.0.1

Recuerde que debe ejecutarlo en todos los nodos de control simple.

información relacionada