Comprender el impacto de las fallas en Google Distributed Cloud

Google Distributed Cloud está diseñado para limitar el alcance de las fallas y priorizar las funciones que son fundamentales para la continuidad del negocio. 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 áreas para solucionar problemas si tienes problemas.

Si necesitas asistencia adicional, comunícate con Atención al cliente de Cloud.

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 del negocio. Incluso si el clúster tiene un problema, las cargas de trabajo existentes pueden seguir ejecutándose sin interrupción.
  • 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.
  • Administrar clústeres de usuario: Puedes administrar nodos, actualizar, actualizar y borrar clústeres de usuario. Esto es menos importante que las consideraciones del ciclo de vida de la app. Si hay capacidad disponible en los nodos existentes, la incapacidad 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 separados, esta es la consideración menos importante, ya que el clúster de administrador no aloja ninguna carga de trabajo de 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 podrás 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 se produce una interrupción como parte de una situación de falla, también se indica la duración (orden) de la interrupción, siempre que sea posible.

Fallas de nodos

Es posible que un nodo en Google Distributed Cloud deje de funcionar o se vuelva 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 de 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 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 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 la falla del nodo afecta al nodo del plano de control único en un clúster de administrador sin alta disponibilidad, o si afecta a no menos de la mitad de los nodos del plano de control en un clúster de administrador con alta disponibilidad, hay 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 sin alta disponibilidad, o si afecta a no menos de la mitad de los nodos del plano de control en un clúster de administrador con alta disponibilidad, hay 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 interrupción. Implementa clústeres de administrador en modo de alta disponibilidad para minimizar la posibilidad de interrupción. Implementa clústeres de administrador en modo de alta disponibilidad 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 orientación solo se aplica a los balanceadores de cargas agrupados 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) 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 del clúster y solo tienes un nodo del balanceador de cargas, hay 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, hay interrupciones. 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, hay interrupciones. 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, hay interrupciones.
Recuperación

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

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

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

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

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

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

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

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

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

Nodo trabajador

En la siguiente tabla, se describe el comportamiento de los nodos trabajadores 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) Posible interrupción (orden de segundos) Sin interrupciones Sin interrupciones Sin interrupciones
Explicación

Las 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 reintentos no pueden observar la interrupción.

Las 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 al clúster.

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 distribuyen en varias zonas de fallas.

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

Falla de almacenamiento

Es posible que el almacenamiento en Google Distributed Cloud deje de funcionar o se vuelva inaccesible en la red. Según el almacenamiento que falla, hay varios modos de falla diferentes.

etcd

El contenido de los directorios /var/lib/etcd y /var/lib/etcd-events puede dañarse si se produce un apagado desordenado del nodo o una falla subyacente de 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, seguirán funcionando sin interrupciones. Si etcd falla en un clúster de usuario del plano de control único o falla en no menos de la mitad de los nodos del plano de control en un clúster de usuario con alta disponibilidad, se producirá una interrupción. Se pierde el quórum del plano de control del clúster de usuario. Si etcd falla en un clúster de administrador del plano de control único o falla en no menos de la mitad de los nodos del plano de control en un clúster de administrador con alta disponibilidad, se producirá una interrupción. Se pierde el quórum del plano de control del clúster de administrador. Si etcd falla en un clúster de administrador del plano de control único o falla en no menos de la mitad de los nodos del plano de control en un clúster de administrador con alta disponibilidad, se producirá 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 clústeres de usuario en modo de alta disponibilidad. Para minimizar la posibilidad de interrupción, implementa los clústeres de administrador en modo de alta disponibilidad. Para minimizar la posibilidad de interrupción, 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 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) Posible interrupción (desconocida) Sin interrupciones Sin interrupciones Sin interrupciones
Explicación Las cargas de trabajo que usan el 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.

Disco de Fluent Bit dañado

Los daños en un disco Fluent Bit no afecta ninguna funcionalidad principal, pero sí la capacidad de recopilar e inspeccionar registros en Google Cloud.

A veces, el evento SIGSEGV se puede observar a partir de registros de stackdriver-log-forwarder. Este error puede deberse a que los registros almacenados en búfer están 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 Google Distributed Cloud.

De LoadBalancer IP

Si todas las direcciones IP en los grupos asignados están ocupadas, los servicios LoadBalancer recién creados no podrán adquirir una dirección IP 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 mediante la modificación del recurso personalizado del clúster.

Vencimiento del certificado

Google Distributed Cloud genera una autoridad certificadora (AC) autofirmada durante el proceso de instalación del clúster. La AC 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 si actualizas tu 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 del 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 del usuario 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, habrá una interrupción. Si las autoridades certificadoras de los clústeres de administrador vencen, habrá una interrupción. Si las autoridades certificadoras de los clústeres de usuario vencen, se producirá una 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 Se configuran controles para el vencimiento de certificados. Puedes 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 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á interrupciones 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 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 falla. El clúster seguirá funcionando si falla la actualización cuando el clúster de usuario tiene alta disponibilidad. Si la actualización falla en el plano de control del clúster de administrador, habrá interrupciones hasta que finalice. Si la actualización falla en el plano de control del clúster de administrador, habrá interrupciones hasta que finalice.
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 reanudar. La actualización se puede volver a intentar. Para obtener más información, consulta cómo diagnosticar problemas de actualización y reanudar.
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?