Comprende el impacto de las fallas en GKE en Bare Metal

GKE en Bare Metal está diseñado para limitar el alcance de fallas y priorizar la funcionalidad que es fundamental para la continuidad del negocio. En este documento, se explica cómo se ve afectada la funcionalidad de los clústeres cuando hay una falla. Esta información puede ayudarte a priorizar áreas para solucionar problemas si tienes un problema.

La funcionalidad principal de GKE en Bare Metal incluye las siguientes categorías:

  • Ejecuta cargas de trabajo: Las cargas de trabajo existentes pueden seguir ejecutándose. Esta es la consideración más importante para mantener la continuidad del negocio. Incluso si tu clúster tiene un problema, las cargas de trabajo existentes podrían seguir ejecutándose sin interrupciones.
  • Administrar cargas de trabajo: Puedes crear, actualizar y borrar cargas de trabajo. Esta es la segunda consideración más importante para escalar las cargas de trabajo cuando aumenta el tráfico, incluso si el clúster tiene un problema.
  • Administrar clústeres de usuario: Puedes administrar nodos y actualizar, actualizar y borrar clústeres de usuario. Esto es menos importante que las consideraciones del ciclo de vida de la aplicación. Si hay capacidad disponible en los nodos existentes, la imposibilidad de modificar los clústeres de usuario no afecta las cargas de trabajo del usuario.
  • Administrar clústeres de administrador: Puedes actualizar el clúster de administrador.
    • Para las implementaciones que usan clústeres de administrador y de usuario independientes, esta es la consideración menos importante porque el clúster de administrador no aloja ninguna carga de trabajo del usuario. Si el clúster de administrador tiene un problema, las cargas de trabajo de tu aplicación en otros clústeres seguirán ejecutándose sin interrupciones.
    • Si usas otros modelos de implementación, como híbridos o independientes, el clúster de administrador ejecuta las cargas de trabajo de la aplicación. Si el clúster de administrador tiene un problema y el plano de control está inactivo, tampoco puedes administrar las cargas de trabajo de la aplicación ni los componentes del clúster de usuario.

En las siguientes secciones, se usan estas categorías de funcionalidad principal para describir el impacto de tipos específicos de situaciones de falla. Cuando hay una interrupción como parte de una situación de falla, también se anota la duración (orden) de la interrupción, siempre que sea posible.

Fallas de nodos

Un nodo en GKE alojado en Bare Metal puede dejar de funcionar o volverse inaccesible en la red. Según el grupo de nodos y el clúster de los que forme parte la máquina con errores, existen varios modos de falla diferentes.

Nodo del plano de control

En la siguiente tabla, se describe el comportamiento de los nodos que forman parte del plano de control en GKE en Bare Metal:

Ejecuta cargas de trabajo Administrar cargas de trabajo Administra clústeres de usuarios Administrar clústeres de administrador
Interrupción (duración) Sin interrupciones Posible interrupción (desconocida) Posible interrupción (desconocida) Posible interrupción (desconocida)
Explicación Si la falla del nodo afecta al nodo del plano de control único en un clúster de usuario sin alta disponibilidad (HA) o si afecta a menos de la mitad de los nodos del plano de control en un clúster de usuario con alta disponibilidad, se produce una interrupción. El quórum del plano de control del clúster de usuario se pierde. Si la falla del nodo afecta al nodo del plano de control único en un clúster de administrador que no tiene alta disponibilidad o si afecta al menos a la mitad de los nodos del plano de control en un clúster de administrador con alta disponibilidad, se produce una interrupción. Se pierde el quórum del plano de control del clúster de administrador. Si la falla del nodo afecta al nodo del plano de control único en un clúster de administrador que no tiene alta disponibilidad o si afecta al menos a la mitad de los nodos del plano de control en un clúster de administrador con alta disponibilidad, se produce una interrupción. Se pierde el quórum del plano de control del clúster de administrador.
Recuperación Para obtener más información, consulta cómo recuperarte de la pérdida de quórum. Para obtener más información, consulta cómo recuperarte de la pérdida de quórum. Para obtener más información, consulta cómo recuperarte de la pérdida de quórum.
Prevención Implementa clústeres de usuario en modo de alta disponibilidad para minimizar la posibilidad de interrupciones. Implementa los clústeres de administrador en modo de alta disponibilidad para minimizar la posibilidad de interrupciones. Implementa los clústeres de administrador en modo de alta disponibilidad para minimizar la posibilidad de interrupciones.

Nodo del balanceador de cargas

En la siguiente tabla, se describe el comportamiento de los nodos que alojan los balanceadores de cargas en GKE en Bare Metal. Esta guía solo se aplica a los balanceadores de cargas en paquetes con el modo de capa 2. Para el balanceo de cargas manual, consulta los modos de falla de tus balanceadores de cargas externos:

Ejecuta cargas de trabajo Administrar cargas de trabajo Administra clústeres de usuarios Administrar clústeres de administrador
Interrupción (duración) Posible interrupción (varía) Posible interrupción (varía) Posible interrupción (varía) Posible interrupción (varía)
Explicación Si las cargas de trabajo externas dependen del balanceador de cargas del plano de datos para comunicarse con las cargas de trabajo en el clúster y solo tienes un nodo del balanceador de cargas, se produce una interrupción. La dirección IP virtual del plano de control del clúster de usuario reside en un nodo del balanceador de cargas. Si el grupo de nodos del balanceador de cargas del clúster de usuario no tiene alta disponibilidad, se produce una interrupción. La dirección IP virtual del plano de control del clúster de administrador reside en un nodo del balanceador de cargas. Si el grupo de nodos del balanceador de cargas del clúster de administrador no tiene alta disponibilidad, se produce una interrupción. La dirección IP virtual del plano de control del clúster de administrador reside en un nodo del balanceador de cargas. Si el grupo de nodos del balanceador de cargas del clúster de administrador no tiene alta disponibilidad, se produce una interrupción.
Recuperación

Si hay varios nodos del balanceador de cargas, la conmutación por error de MetalLB ocurre en unos segundos.

Si no tiene alta disponibilidad, considera implementar nodos del balanceador de cargas adicionales.

Si hay alta disponibilidad, la conmutación por error es automática y se realiza en segundos.

Si no tiene alta disponibilidad, considera implementar nodos del balanceador de cargas adicionales

Si hay alta disponibilidad, la conmutación por error es automática y se realiza en segundos.

Si no tiene alta disponibilidad, considera implementar nodos del balanceador de cargas adicionales.

Si hay alta disponibilidad, la conmutación por error es automática y se realiza en segundos.

Si no tiene alta disponibilidad, considera implementar nodos del balanceador de cargas adicionales.

Prevención Para minimizar la posibilidad de interrupciones, implementa grupos de nodos del balanceador de cargas en modo de alta disponibilidad. Para minimizar la posibilidad de interrupciones, implementa grupos de nodos del balanceador de cargas en modo de alta disponibilidad. Para minimizar la posibilidad de interrupciones, implementa grupos de nodos del balanceador de cargas en modo de alta disponibilidad. Para minimizar la posibilidad de interrupciones, implementa grupos de nodos del balanceador de cargas en modo de alta disponibilidad.

Nodo trabajador

En la siguiente tabla, se describe el comportamiento de los nodos trabajadores en GKE en Bare Metal:

Ejecuta cargas de trabajo Administrar cargas de trabajo Administra clústeres de usuarios Administrar clústeres de administrador
Interrupción (duración) Interrupción posible (orden de segundos) Sin interrupciones Sin interrupciones Sin interrupciones
Explicación

Los Pods que se ejecutan en el nodo con errores se interrumpen y se reprograman de forma automática en otros nodos en buen estado con un tiempo de espera de expulsión predeterminado de 5 minutos.

Si las aplicaciones de usuario tienen capacidad de carga de trabajo libre y se distribuyen en varios nodos, los clientes que implementan los reintentos no pueden observar la interrupción.

Los Pods se reinician de forma automática en los nodos en buen estado.

Si el clúster no tiene capacidad libre, la interrupción puede durar hasta que se agreguen nodos nuevos.

Recuperación Si el clúster no tiene capacidad libre, debes implementar más nodos repartidos en varias zonas con fallas y mover las cargas de trabajo con errores a los nodos nuevos.
Prevención

Implementa nodos que se distribuyan en varias zonas con fallas.

Implementa cargas de trabajo con varias réplicas distribuidas en varias zonas de falla para minimizar la posibilidad de interrupciones.

Falla de almacenamiento

El almacenamiento en GKE en Bare Metal puede dejar de funcionar o volverse inaccesible en la red. Según el almacenamiento que falle, existen varios modos de falla.

etcd

El contenido de etcd podría dañarse debido a un cierre desgraciado del nodo o a una falla subyacente del almacenamiento. En la siguiente tabla, se describe el comportamiento de la funcionalidad principal debido a fallas de etcd:

Ejecuta cargas de trabajo Administrar cargas de trabajo Administra clústeres de usuarios Administrar clústeres de administrador
Interrupción (duración) Sin interrupciones Posible interrupción (desconocida) Posible interrupción (desconocida) Posible interrupción (desconocida)
Explicación Si las cargas de trabajo existentes no dependen del plano de control de Kubernetes, continúan funcionando sin interrupciones. Si etcd falla en un clúster de usuario del plano de control único o en no menos de la mitad de los nodos del plano de control en un clúster de usuario con alta disponibilidad, se produce una interrupción. Se pierde el quórum del plano de control del clúster de usuario. Si etcd falla en un solo clúster de administrador del plano de control o falla en no menos de la mitad de los nodos del plano de control en un clúster de administrador de alta disponibilidad, se produce una interrupción. Se pierde el quórum del plano de control del clúster de administrador. Si etcd falla en un solo clúster de administrador del plano de control o falla en no menos de la mitad de los nodos del plano de control en un clúster de administrador de alta disponibilidad, se produce una interrupción. Se pierde el quórum del plano de control del clúster de administrador.
Recuperación Para obtener más información, consulta cómo recuperarte de la pérdida de quórum. Para obtener más información, consulta cómo recuperarte de la pérdida de quórum. Para obtener más información, consulta cómo recuperarte de la pérdida de quórum.
Prevención Para minimizar la posibilidad de interrupciones, implementa los clústeres de usuario en modo de alta disponibilidad. Para minimizar la posibilidad de interrupciones, implementa los clústeres de administrador en modo de alta disponibilidad. Para minimizar la posibilidad de interrupciones, implementa los clústeres de administrador en modo de alta disponibilidad.

Aplicación del usuario PersistentVolume

En la siguiente tabla, se describe el comportamiento de la funcionalidad principal debido al error de PersistentVolume:

Ejecuta cargas de trabajo Administrar cargas de trabajo Administra clústeres de usuarios Administrar clústeres de administrador
Interrupción (duración) Posible interrupción (desconocida) Sin interrupciones Sin interrupciones Sin interrupciones
Explicación Las cargas de trabajo que usan PersistentVolume are affected. con errores
Recuperación
Prevención Para minimizar la posibilidad de interrupciones, implementa la carga de trabajo del usuario en modo de alta disponibilidad.

Bit fluido. Disco dañado

La corrupción de un disco Fluent Bit no afecta ninguna funcionalidad principal, pero sí afecta la capacidad de recopilar e inspeccionar registros en Google Cloud.

A veces, el evento SIGSEGV se puede observar a partir de los registros de stackdriver-log-forwarder. Este error puede deberse a los registros almacenados en búfer dañados en el disco.

Fluent Bit tiene un mecanismo para filtrar y descartar los fragmentos rotos. Esta función está disponible en la versión fluent-bit (v1.8.3) que se usa en GKE en Bare Metal.

De LoadBalancer IP

Si todas las direcciones IP en los grupos asignados están ocupadas actualmente, los servicios LoadBalancer recién creados no pueden adquirir una dirección IP LoadBalancer. Esta situación afecta la capacidad de los clientes del servicio para comunicarse con los servicios LoadBalancer.

Para recuperarse del agotamiento de esta dirección IP, asigna más direcciones IP al grupo de direcciones mediante la modificación del recurso personalizado del clúster.

Vencimiento del certificado

GKE en Bare Metal genera una autoridad certificada (CA) autofirmada durante el proceso de instalación del clúster. La CA tiene un vencimiento de 10 años y es responsable de generar los certificados, que vencen después de un año. Rota los certificados con regularidad para evitar el tiempo de inactividad del clúster. Puedes rotar los certificados con la actualización del clúster, que es el método recomendado. Si no puedes actualizar tu clúster, puedes realizar una rotación de AC a pedido. Para obtener más información sobre los certificados de clúster, consulta Certificados y requisitos de PKI en la documentación de Kubernetes.

Si los certificados del clúster vencieron, deben renovarse de forma manual.

Ejecuta cargas de trabajo Administrar cargas de trabajo Administra clústeres de usuarios Administrar clústeres de administrador
Interrupción (duración) Sin interrupciones Posible interrupción (desconocida) Posible interrupción (desconocida) Posible interrupción (desconocida)
Explicación Si las cargas de trabajo de los usuarios no se comunican con los componentes del plano de control de Kubernetes, no habrá interrupciones. Si las autoridades certificadoras de los clústeres de usuario vencen, se producirá una interrupción. Si las autoridades certificadoras de los clústeres de administrador vencen, se interrumpirá. Si las autoridades certificadoras de los clústeres de usuario vencen, se interrumpirá.
Recuperación

Sigue los pasos para renovar los certificados de forma manual en el clúster de usuario.

Sigue los pasos para renovar los certificados de forma manual en el clúster de usuario.

Sigue los pasos para renovar los certificados de forma manual en el clúster de usuario.

Prevención La configuración supervisa el vencimiento del certificado. Se puede encontrar una métrica de ejemplo kubelet_certificate_manager_server_expiration_seconds en la lista de métricas.

Fallas de actualización

Ejecuta cargas de trabajo Administrar cargas de trabajo Administra clústeres de usuarios Administrar clústeres de administrador
Interrupción (duración) Sin interrupciones Sin interrupciones Posible interrupción (desconocida) Posible interrupción (desconocida)
Explicación

Si la actualización falla en el plano de control del clúster de usuario, NO habrá ninguna interrupción en las cargas de trabajo existentes.

Si la actualización falla en un nodo trabajador en particular, las cargas de trabajo en ese nodo se vaciarán y se moverán a otros nodos en buen estado si hay capacidad adicional en los nodos en buen estado.

La actualización se detendrá si alguno de los nodos del plano de control no se actualiza. El clúster seguirá funcionando si la actualización falla si el clúster de usuario tiene alta disponibilidad. Si la actualización falla en el plano de control del clúster de administrador, se producirá una interrupción hasta que finalice. Si la actualización falla en el plano de control del clúster de administrador, se producirá una interrupción hasta que finalice.
Recuperación Se puede volver a intentar la actualización. Para obtener más información, consulta cómo diagnosticar problemas de actualización y reanudar la suscripción. Se puede volver a intentar la actualización. Para obtener más información, consulta cómo diagnosticar problemas de actualización y reanudar la suscripción.
Prevención Para obtener más información, consulta cómo crear una copia de seguridad antes de la actualización. Para obtener más información, consulta cómo crear una copia de seguridad antes de la actualización.

¿Qué sigue?

Para obtener más información sobre problemas conocidos de productos y soluciones alternativas, consulta Problemas conocidos de GKE en Bare Metal.