Comprende el impacto de las fallas en Google Distributed Cloud

Google Distributed Cloud está diseñado para limitar el alcance de las fallas y priorizar la funcionalidad que es fundamental para la continuidad empresarial. En este documento, se explica cómo se ve afectada la funcionalidad de tus clústeres cuando hay una falla. Esta información puede ayudarte a priorizar las áreas para solucionar problemas si tienes un problema.

La funcionalidad principal de Google Distributed Cloud 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 empresarial. Incluso si tu clúster tiene un problema, las cargas de trabajo existentes pueden 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 el tráfico aumenta, incluso si el clúster tiene un problema.
  • Administra clústeres de usuarios: Puedes administrar nodos, actualizar, mejorar 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 clústeres de usuarios no afecta las cargas de trabajo.
  • Administrar clústeres de administrador: Puedes actualizar y mejorar el clúster de administrador.
    • Para las implementaciones que usan clústeres de administrador y de usuario separados, esta es la consideración menos importante, ya que el clúster de administrador no aloja ninguna carga de trabajo de usuario. Si tu clúster de administrador tiene un problema, las cargas de trabajo de la aplicación en otros clústeres seguirán ejecutándose sin interrupciones.
    • Si usas otros modelos de implementación, como híbrido o independiente, el clúster de administrador ejecuta 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 indica la duración (orden) de la interrupción, cuando es posible.

Fallas de nodos

Un nodo en Google Distributed Cloud podría dejar de funcionar o volverse inaccesible en la red. Según el grupo de nodos y el clúster del que forma 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 Google Distributed Cloud:

Ejecuta cargas de trabajo Administrar cargas de trabajo Administra clústeres de usuarios Administrar clústeres de administrador
Interrupción (duración) Sin interrupciones Interrupción posible (desconocida) Interrupción posible (desconocida) Interrupción posible (desconocida)
Explicación Si la falla del nodo afecta el nodo del plano de control único en un clúster de usuario que no es de alta disponibilidad (HA) o si afecta no menos de la mitad de los nodos del plano de control en un clúster de usuario de HA, habrá interrupción. Se pierde el quórum del plano de control del clúster de usuario. Si la falla del nodo afecta el nodo del plano de control único en un clúster de administrador que no es de HA o si afecta no menos de la mitad de los nodos del plano de control en un clúster de administrador de HA, habrá interrupción. Se pierde el quórum del plano de control del clúster de administrador. Si la falla del nodo afecta el nodo del plano de control único en un clúster de administrador que no es de HA o si afecta no menos de la mitad de los nodos del plano de control en un clúster de administrador de HA, habrá 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 recuperarse de la pérdida de quórum. Para obtener más información, consulta cómo recuperarse de la pérdida de quórum. Para obtener más información, consulta cómo recuperarse de la pérdida de quórum.
Prevención Implementa clústeres de usuario en modo de HA para minimizar la posibilidad de interrupción. Implementa clústeres de administrador en modo de HA para minimizar la posibilidad de interrupción. Implementa clústeres de administrador en modo de HA para minimizar la posibilidad de interrupción.

Nodo del balanceador de cargas

En la siguiente tabla, se describe el comportamiento de los nodos que alojan los balanceadores de cargas en Google Distributed Cloud. Esta guía solo se aplica a los balanceadores de cargas en paquete con 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) Interrupción posible (varía) Interrupción posible (varía) Interrupción posible (varía) Interrupción posible (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, habrá 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 es de HA, habrá 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 es de HA, habrá 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 es de HA, habrá interrupción.
Recuperación

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

Si no es de HA, considera implementar nodos del balanceador de cargas adicionales.

Si es de HA, la conmutación por error es automática y se realiza en segundos.

Si no es de HA, considera implementar nodos del balanceador de cargas adicionales.

Si es de HA, la conmutación por error es automática y se realiza en segundos.

Si no es de HA, considera implementar nodos del balanceador de cargas adicionales.

Si es de HA, la conmutación por error es automática y se realiza en segundos.

Si no es de HA, considera implementar nodos del balanceador de cargas adicionales.

Prevención Para minimizar la posibilidad de interrupción, implementa grupos de nodos del balanceador de cargas en modo de HA. Para minimizar la posibilidad de interrupción, implementa grupos de nodos del balanceador de cargas en modo de HA. Para minimizar la posibilidad de interrupción, implementa grupos de nodos del balanceador de cargas en modo de HA. Para minimizar la posibilidad de interrupción, implementa grupos de nodos del balanceador de cargas en modo de HA.

Nodo trabajador

En la siguiente tabla, se describe el comportamiento de los nodos trabajador en Google Distributed Cloud:

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 automáticamente 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 entre varios nodos, la interrupción no se puede observar para los clientes que implementan reintentos.

Los Pods se reinician automáticamente en nodos en buen estado.

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

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

Implementa nodos que se distribuyan en varias zonas de falla.

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

Falla de almacenamiento

El almacenamiento en Google Distributed Cloud podría dejar de funcionar o volverse inaccesible en la red. Según el almacenamiento que falla, existen varios modos de falla diferentes.

etcd

El contenido de los directorios /var/lib/etcd y /var/lib/etcd-events puede dañarse si se apaga el nodo de forma incorrecta o si hay una falla subyacente del almacenamiento. En la siguiente tabla, se describe el comportamiento de la funcionalidad principal debido a las 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 Interrupción posible (desconocida) Interrupción posible (desconocida) Interrupción posible (desconocida)
Explicación Si las cargas de trabajo existentes no dependen del plano de control de Kubernetes, seguirán funcionando sin interrupciones. Si etcd falla en un solo clúster de usuario del plano de control o falla en no menos de la mitad de los nodos del plano de control en un clúster de usuario de HA, habrá 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 HA, habrá 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 HA, habrá 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 recuperarse de la pérdida de quórum. Para obtener más información, consulta cómo recuperarse de la pérdida de quórum. Para obtener más información, consulta cómo recuperarse de la pérdida de quórum.
Prevención Para minimizar la posibilidad de interrupción, implementa clústeres de usuario en modo de HA. Para minimizar la posibilidad de interrupción, implementa clústeres de administrador en modo de HA. Para minimizar la posibilidad de interrupción, implementa clústeres de administrador en modo de HA.

PersistentVolume de la aplicación de usuario

En la siguiente tabla, se describe el comportamiento de la funcionalidad principal debido a la falla de un PersistentVolume:

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 (desconocida) Sin interrupciones Sin interrupciones Sin interrupciones
Explicación Las cargas de trabajo que usan el PersistentVolume are affected. con errores se ven afectadas.
Recuperación
Prevención Para minimizar la posibilidad de interrupción, implementa la carga de trabajo del usuario en HA mode.

Disco dañado de Fluent Bit

El daño de un disco de Fluent Bit no afecta ninguna funcionalidad principal, pero sí afecta la capacidad de recopilar y revisar registros en Google Cloud.

A veces, se puede observar el evento SIGSEGV en 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 de fluent-bit (v1.8.3) que se usa en Google Distributed Cloud.

Sin IP de LoadBalancer

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

Para recuperarte de este agotamiento de la dirección IP, asigna más direcciones IP al grupo de direcciones modificando el recurso personalizado del clúster.

Vencimiento del certificado:

Google Distributed Cloud genera una autoridad certificadora (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 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 actualizando tu clúster, que es el método recomendado. Si no puedes actualizar tu clúster, puedes realizar una rotación de CA 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 vencieron los certificados del clúster, se deben renovar 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 Interrupción posible (desconocida) Interrupción posible (desconocida) Interrupción posible (desconocida)
Explicación Si las cargas de trabajo del usuario no se comunican con los componentes del plano de control de Kubernetes no habrá interrupciones. Si vencen las autoridades certificadoras de los clústeres de usuario, habrá una interrupción. Si vencen las autoridades certificadoras de los clústeres de administrador, habrá una interrupción. Si vencen las autoridades certificadoras de los clústeres de usuario, habrá interrupción.
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 Configura monitores para el vencimiento de certificados. Se puede encontrar una métrica de ejemplo kubelet_certificate_manager_server_expiration_seconds en la lista de métricas.

Errores 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 Interrupción posible (desconocida) Interrupción posible (desconocida)
Explicación

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

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

La actualización se detendrá si alguno de los nodos del plano de control no se actualiza. El clúster sigue funcionando si la actualización falla si el clúster de usuario es de HA. Si la actualización falla en el plano de control del clúster de administrador, habrá interrupción hasta que finalice la actualización. Si la actualización falla en el plano de control del clúster de administrador, habrá interrupción hasta que finalice la actualización.
Recuperación La actualización se puede volver a intentar. Para obtener más información, consulta cómo diagnosticar problemas de actualización y reanudarla. La actualización se puede volver a intentar. Para obtener más información, consulta cómo diagnosticar problemas de actualización y reanudarla.
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 del producto y soluciones alternativas, consulta Problemas conocidos de Google Distributed Cloud.

Si necesitas asistencia adicional, comunícate con Atención al cliente de Cloud. También puedes consultar Obtén asistencia para obtener más información sobre los recursos de asistencia, incluidos los siguientes:

  • Requisitos para abrir un caso de asistencia
  • Herramientas para ayudarte a solucionar problemas, como la configuración de tu entorno, los registros y las métricas
  • Componentes compatibles.