Google Distributed Cloud te permite rotar las autoridades certificadoras (AC) de los clústeres de usuario para actualizar los certificados y las claves privadas que autentican y encriptan la comunicación del sistema. Rotar la AC de tu clúster de usuario de forma periódica y después de cualquier posible incidente de seguridad te ayuda a mantener la seguridad del clúster. La rotación automatizada de la AC requiere certificados activos y válidos.
Si los certificados de tu clúster vencieron, debes renovarlos de forma manual para restablecer las operaciones del clúster.
Cómo funciona la rotación de la AC
Cuando ejecutas el comando bmctl update credentials certificate-authorities rotate,
Google Distributed Cloud realiza las siguientes acciones:
El comando crea y sube nuevas autoridades certificadoras (CAs) del clúster para la CA del clúster, la CA de etcd y la CA de proxy frontal al espacio de nombres del clúster de usuario en el clúster de administrador.
Los controladores del clúster de administrador reemplazan las autoridades certificadoras del clúster de usuario por las que se generaron hace poco.
Los controladores del clúster de administrador distribuyen los nuevos certificados de CA públicos y los pares de claves de certificado de hoja a los componentes del sistema del clúster de usuario.
El comando también actualiza el Secret
stackdriver-prometheus-etcd-scrape, que Google Distributed Cloud creó durante la creación del clúster. Prometheus requiere este Secret para recopilar métricas de etcd.
Antes de comenzar
Antes de rotar la autoridad certificadora de tu clúster, planifica de acuerdo con las siguientes condiciones e impactos:
Asegúrate de que los clústeres de administrador y de usuario estén en la versión 1.9.0 o superior antes de comenzar la rotación de CA.
La rotación del CA es incremental, lo que permite que los componentes del sistema se comuniquen durante la rotación.
Una rotación de CA reinicia varias veces el servidor de la API, otros procesos del plano de control y cada nodo del clúster. Cada etapa de una rotación de CA avanza de manera similar a una actualización de clúster. Si bien el clúster de usuario permanece operativo durante una rotación de AC, debes esperar que las cargas de trabajo se reinicien y se reprogramen.
Si tu clúster de usuario no tiene un plano de control de alta disponibilidad, puedes esperar períodos breves de tiempo de inactividad del plano de control durante la rotación de las AC.
No se permiten las operaciones de administración de clústeres durante la rotación de la AC.
La duración de la rotación de la CA depende del tamaño de tu clúster. Por ejemplo, la rotación de la CA puede tardar alrededor de dos horas en completarse para un clúster con un plano de control y 50 nodos trabajadores.
Limitaciones
La capacidad de rotación de autoridades certificadoras tiene las siguientes limitaciones:
La rotación de la CA del clúster de usuario no actualiza los certificados que emite un administrador de forma manual, incluso si la CA del clúster firma los certificados. Actualiza y redistribuye los certificados emitidos de forma manual después de que se complete la rotación de la CA del clúster de usuario.
Una vez iniciada, no se puede pausar ni revertir la rotación de la CA.
Inicia una rotación de CA del clúster
De forma predeterminada, los certificados TLS tienen un período de vencimiento de 1 año, mientras que el
certificado clientconfig-operator tiene un período de vencimiento de 10 años (para las versiones anteriores a la 1.36.100, el certificado clientconfig-operator vence después de cinco años).
Google Distributed Cloud renueva estos certificados cuando rotas las autoridades certificadoras. Google Distributed Cloud también renueva los certificados TLS de 1 año durante
las actualizaciones del clúster. Para las versiones anteriores a la 1.36.100, te recomendamos que actualices tus clústeres con regularidad para mantenerlos
seguros y compatibles, y para evitar que venzan los certificados TLS, y
que realices una rotación de la AC al menos una vez cada cinco años.
Usa el siguiente comando para iniciar el proceso de rotación de la CA:
bmctl update credentials certificate-authorities rotate --cluster CLUSTER_NAME \
--kubeconfig KUBECONFIG
Reemplaza lo siguiente:
CLUSTER_NAME: Es el nombre del clúster en el que deseas rotar las CA.KUBECONFIGes la ruta al archivo kubeconfig del clúster de administrador. Para los clústeres autoadministrados, este archivo es el archivo kubeconfig del clúster.
El comando de bmctl se cierra después de que la CA se rota con éxito y se genera un archivo kubeconfig nuevo. La ruta estándar para el archivo kubeconfig es bmctl-workspace/CLUSTER_NAME/CLUSTER_NAME-kubeconfig.
Soluciona problemas de rotación de CA de clústeres
El comando bmctl update credentials muestra el progreso de la rotación de la CA.
El archivo update-credentials.log asociado se guarda en el siguiente directorio con marca de tiempo:
bmctl-workspace/CLUSTER_NAME/log/update-credentials-TIMESTAMP