Google Distributed Cloud (GDC) air-gapped proporciona un servicio administrado de Kubernetes con la edición de Google Kubernetes Engine (GKE) Enterprise, lo que te permite implementar y ejecutar cargas de trabajo de contenedores con metodologías de Kubernetes estándares de la industria. GKE en GDC ofrece las funciones y la funcionalidad principales de GKE Enterprise en un entorno desconectado. Con el tiempo, habrá más funciones de GKE Enterprise disponibles para GKE en GDC.
GKE en GDC proporciona funciones empresariales, como las siguientes:
- Administración del ciclo de vida de varios clústeres
- Distribución de Kubernetes totalmente compatible
- Visibilidad de costos
- Administración de varios equipos
- Administración de configuraciones basada en GitOps
- Malla de servicios administrados
- Qué controla la política
Todas estas funciones se incluyen de forma predeterminada en GKE en GDC y están disponibles para su uso con clústeres creados por el servicio administrado de Kubernetes.
A los efectos de la documentación, los clústeres de GKE en GDC se denominan clústeres de Kubernetes o clústeres.
Arquitectura del clúster de GDC
Los clústeres de Kubernetes están separados lógicamente entre sí para proporcionar diferentes dominios de falla y garantías de aislamiento. En algunos casos, incluso están separados físicamente. Cada organización en GDC tiene un conjunto dedicado de clústeres de Kubernetes. Los siguientes tipos de clústeres están disponibles específicamente para tus cargas de trabajo y servicios en cada organización:
- Clúster de infraestructura de la organización: Ejecuta los componentes del plano de control y del plano de datos de la organización. También aloja el servidor de la API de administración, en el que se implementan todas las cargas de trabajo y los servicios que no son de contenedores.
- Clúster de Kubernetes: Ejecuta cargas de trabajo basadas en contenedores para la organización. La cantidad de nodos trabajadores depende del uso del clúster. Puedes escalarlos a medida que evolucionan tus necesidades. A veces, en Distributed Cloud, se hace referencia a un clúster de Kubernetes como clúster de usuario.
Cuando el operador de infraestructura (IO) crea una organización, GDC genera automáticamente el clúster de infraestructura de la organización. La configuración inicial del clúster de infraestructura de la organización se establece durante la creación de la organización.
Como administrador, creas y administras clústeres de Kubernetes. En esta sección de temas, se abarca la administración de clústeres de Kubernetes. Todas tus cargas de trabajo alojadas en contenedores de Kubernetes se ejecutan en un clúster de Kubernetes. Para obtener más información sobre cómo crear y administrar contenedores en un clúster de Kubernetes, consulta la sección Implementa cargas de trabajo de contenedores.
Un clúster de Kubernetes consta de un plano de control y máquinas trabajadoras llamadas nodos. El plano de control y los nodos conforman el sistema de organización de clústeres de Kubernetes. GKE en GDC administra toda la infraestructura subyacente de los clústeres, incluido el plano de control y todos los componentes del sistema. Eres responsable de administrar los nodos de trabajador que ejecutan tus cargas de trabajo alojadas en contenedores.
En el siguiente diagrama, se muestra la arquitectura de un clúster de Kubernetes:
Información sobre el plano de control
El plano de control ejecuta procesos como el servidor de la API de Kubernetes, el programador y los controladores de recursos principales. GKE en GDC administra el ciclo de vida del plano de control desde la creación hasta la eliminación del clúster. Esto incluye actualizaciones a la versión de Kubernetes que se ejecuta en el plano de control, las cuales GDC realiza de forma automática o manual según lo solicites si prefieres actualizar antes de la programación automática.
Plano de control y API de Kubernetes
El plano de control es el extremo unificado para tu clúster. Interactúas con el plano de control a través de llamadas a la API de Kubernetes. El plano de control ejecuta el proceso del servidor de la API de Kubernetes, o kube-apiserver
, para controlar las solicitudes a la API. Puedes realizar llamadas a la API de Kubernetes de las siguientes maneras:
- Llamadas directas: KRM
- Llamadas indirectas: Clientes de la línea de comandos de Kubernetes, como
kubectl
, o la consola de GDC
El proceso del servidor de la API es el centro de todas las comunicaciones para el clúster. Todos los componentes internos del clúster, como los nodos, los procesos del sistema y los controladores de aplicaciones, actúan como clientes del servidor de la API.
Las solicitudes a la API le indican a Kubernetes cuál es el estado que elegiste para los objetos en tu clúster. Kubernetes intenta mantener ese estado de forma constante. Kubernetes te permite configurar objetos en la API de forma imperativa o declarativa.
Administración de nodos trabajadores
El plano de control administra qué se ejecuta en todos los nodos del clúster. El plano de control programa las cargas de trabajo y administra el ciclo de vida de las cargas de trabajo, el escalamiento y las actualizaciones. El plano de control también administra los recursos de red y almacenamiento para esas cargas de trabajo. El plano de control y los nodos se comunican entre sí mediante las API de Kubernetes.
Acerca de los nodos
Los nodos son máquinas de trabajador que ejecutan tus aplicaciones en contenedores y otras cargas de trabajo. Las máquinas individuales son máquinas virtuales (VMs) que crea GKE en GDC. El plano de control administra y recibe actualizaciones sobre el estado autoinformado de cada nodo.
Un nodo ejecuta los servicios necesarios para admitir los contenedores que conforman las cargas de trabajo de tu clúster. Estos incluyen el entorno de ejecución y el agente de nodo de Kubernetes, o kubelet, que se comunica con el plano de control y es responsable de iniciar y ejecutar los contenedores programados en el nodo.
GKE en GDC también ejecuta varios contenedores del sistema que se ejecutan como agentes por nodo, llamados DaemonSets, que proporcionan funciones como la recopilación de registros y la conectividad de red dentro del clúster.
Limitaciones de GKE en GDC
Las siguientes capacidades de GKE son limitaciones que no están disponibles para GKE en GDC:
- Conecta la puerta de enlace
- Cómo conectar clústeres de múltiples nubes
- Autorización binaria
- Transferencia de datos interna de varios clústeres