De forma predeterminada, Google Distributed Cloud Connected requiere una conexión constante aGoogle Cloud para su funcionamiento normal. Esto se debe a que, de forma predeterminada, los clústeres que creas con Google Distributed Cloud conectado son clústeres de plano de control de Cloud. En otras palabras, el plano de control de Kubernetes que coordina las cargas de trabajo que se ejecutan en ese clúster se ejecuta en Google Cloud.
Para mejorar la confiabilidad de Distributed Cloud conectado, tienes la opción de crear clústeres de Distributed Cloud conectado que usen un plano de control local implementado en tu hardware de Distributed Cloud conectado. Cuando se pierde la conexión con Google Cloud , estos clústeres entran en modo de supervivencia y tus cargas de trabajo siguen ejecutándose durante un máximo de 7 días.
Solo los clústeres de Distributed Cloud connected que se implementaron con un plano de control local pueden ingresar al modo de supervivencia cuando se pierde la conexión aGoogle Cloud . Los clústeres que se implementaron con un plano de control de la nube que se ejecuta en Google Cloud no pueden ingresar al modo de supervivencia. No puedes reconfigurar un clúster existente que usa un plano de control en la nube para que use un plano de control local.
Cuando creas un clúster con un plano de control local, se aplican las siguientes reglas:
- Debes crear clústeres de plano de control locales en su propio Google Cloud proyecto. Los clústeres de plano de control local no pueden coexistir en el mismo proyecto Google Cloud con ningún otro tipo de clústeres, incluidos los clústeres conectados a Distributed Cloud que no sean de Distributed Cloud. Mezclar clústeres de Distributed Cloud con plano de control local con cualquier otro tipo de clústeres en el mismo proyecto de Google Cloud puede provocar la pérdida de datos.
- Si reasignas un nodo entre clústeres conectados de Distributed Cloud, ese nodo se borra y se restablece a la configuración predeterminada.
- De forma predeterminada, las cargas de trabajo del plano de control local se ejecutan en modo de alta disponibilidad con tres réplicas que abarcan tres nodos elegidos automáticamente por Distributed Cloud. Esto es así, a menos que haya menos de tres nodos en el clúster o que configures específicamente el clúster para que use un nodo para ejecutar las cargas de trabajo del plano de control local. También tienes la opción de especificar los tres nodos para el modo de alta disponibilidad con la marca
--control-plane-machine-filter. No se admiten otras combinaciones de nodos. - Los nodos que ejecutan las cargas de trabajo del plano de control local también ejecutan las cargas de trabajo de tu aplicación.
- Se puede acceder a las direcciones IP de los extremos del plano de control local en tu red local. Debes asegurarte de que la configuración de seguridad de tu red local impida el acceso externo a esas direcciones IP.
Cuando se encuentra en modo de supervivencia, un clúster conectado a Distributed Cloud funciona de la siguiente manera:
- Se inhabilitó el control sobre las cargas de trabajo a través de Google Cloud CLI, la CLI de
kubectly la API de Distributed Cloud Edge Container. - Las actualizaciones de software, los SLO y las reparaciones de hardware de Distributed Cloud no están disponibles.
- Los registros y las métricas limitados se sincronizan con Google Cloud después de que se restablece la conexión con Google Cloud . Google Cloud
- De forma predeterminada, si un nodo se reinicia mientras el clúster está desconectado de Google Cloud, no puede volver a unirse a su clúster hasta que se restablezca la conexión con Google Cloud, ya que no se puede actualizar su clave de autenticación. Google Cloud Tienes la opción de especificar un período de reinicio sin conexión durante el cual un nodo puede volver a unirse a un clúster después de reiniciarse mientras el clúster se ejecuta en modo de supervivencia. Para obtener más información, consulta Crea un clúster.
Requisitos previos
Antes de crear un clúster conectado de Distributed Cloud con un plano de control local, debes habilitar las APIs requeridas en el proyecto Google Cloud de destino. Para ello, debes tener uno de los siguientes roles en el proyecto Google Cloud :
- Propietario (
roles/owner) - Editor (
roles/editor) - Administrador de Service Usage (
roles/serviceusage.serviceUsageAdmin)
Para obtener más información sobre estos roles, consulta Roles básicos.
Para obtener información sobre cómo otorgar roles, consulta Otorga un solo rol.
Para crear un clúster conectado de Distributed Cloud con un plano de control local, habilita las siguientes APIs:
anthos.googleapis.comanthosaudit.googleapis.comanthosgke.googleapis.comcloudresourcemanager.googleapis.comconnectgateway.googleapis.comcontainer.googleapis.comedgecontainer.googleapis.comgkeconnect.googleapis.comgkehub.googleapis.comgkeonprem.googleapis.comiam.googleapis.comlogging.googleapis.commonitoring.googleapis.comopsconfigmonitoring.googleapis.comserviceusage.googleapis.comstackdriver.googleapis.comstorage.googleapis.comsts.googleapis.com
Para obtener información sobre cómo habilitar las APIs, consulta Habilita servicios.
Actualiza tu SDK de Google Cloud a la versión 450.0.0 o posterior
Debes actualizar tu SDK de Google Cloud a la versión 450.0.0 o posterior para crear clústeres de plano de control locales que ejecuten la versión 1.5.0 del software conectado de Distributed Cloud. De lo contrario, fallará la creación de esos clústeres.
Crea un clúster con un plano de control local
Para crear un clúster conectado de Distributed Cloud con un plano de control local, debes pasar las siguientes marcas cuando crees el clúster:
--control-plane-node-locationindica a Distributed Cloud conectado que implemente las cargas de trabajo del plano de control para este clúster de forma local. El valor es el nombre de la zona conectada de Distributed Cloud de destino.--control-plane-node-count(opcional) especifica la cantidad de nodos en los que se ejecutarán las cargas de trabajo del plano de control local. Los valores válidos son3para alta disponibilidad y1para operación estándar. Si se omite, el valor predeterminado es3.--control-plane-machine-filter(opcional) especifica una lista con formato de regex de los nodos que ejecutan las cargas de trabajo del plano de control local. Si se omite, Distributed Cloud connected selecciona los nodos automáticamente de forma aleatoria.--control-plane-shared-deployment-policyespecifica si las cargas de trabajo de la aplicación pueden ejecutarse en los nodos que ejecutan las cargas de trabajo del plano de control local. El único valor válido esALLOWED. Si se omite, la creación del clúster fallará.--external-lb-ipv4-address-poolsespecifica una lista separada por comas de direcciones IPv4, rangos de direcciones o subredes para el tráfico de entrada de los servicios que se ejecutan detrás del balanceador de cargas conectado de Distributed Cloud.
Para obtener más información sobre la creación de clústeres de Distributed Cloud Connected, consulta Crea un clúster.