GKE On-Prem es un software de nube híbrida que lleva a Google Kubernetes Engine (GKE) a los centros de datos locales. Con GKE On-Prem, puedes crear, administrar y actualizar clústeres de Kubernetes en tu entorno local y conectarlos a la consola de Google Cloud.
Este tema es una descripción general técnica de GKE On-Prem. Cuando termines este tema, asegúrate de leer Requisitos del sistema.
Información sobre Kubernetes
GKE On-Prem y GKE se basan en Kubernetes, una plataforma extensible y de código abierto para administrar aplicaciones en contenedores. Kubernetes organiza los clústeres, que son conjuntos de nodos (también llamados “máquinas”) que ejecutan aplicaciones en contenedores.
Obtén GKE On-Prem
GKE On-Prem es un componente central de Anthos. Para usar GKE On-Prem, primero debes comunicarte con el equipo de ventas de Google y adquirir una suscripción a Anthos.
Prepárate para usar GKE On-Prem
Instalar GKE On-Prem implica completar algunas tareas de configuración de requisitos. En las siguientes secciones, se describen estas tareas.
Entorno de virtualización de VMware vSphere
Instala GKE On-Prem en un clúster de VMware vSphere 6.5 que se ejecute en tu entorno local. vSphere es el software de virtualización de servidores de VMware.
También puedes adquirir VMware vCenter y VMware ESXi. ESXi es un hipervisor tipo 1 que instalas en un conjunto de servidores o hosts físicos en tu centro de datos. vCenter es la interfaz de usuario basada en la Web de vSphere que se usa para administrar los servicios de centros de datos. Además, proporciona una vista central entre los hosts de ESXi.
En particular, necesitas los siguientes productos de VMware con licencia:
- VMware ESXI 6.5, con una edición de licencia de Enterprise Plus, instalado en un conjunto de hosts en tu centro de datos
- VMware vCenter 6.5, con una edición de licencia Standard, instalado en un host en tu centro de datos
Para obtener más información, consulta los siguientes recursos de VMware:
- Requisitos de vSphere
- Comparación de las ediciones de VMware vSphere
- VMware vSphere feature comparison (Comparación de funciones de VMware vSphere)
Balanceo de cargas
Para el balanceo de cargas de la capa 4, puedes elegir entre dos modos de balanceo de cargas: integrado o manual. El modo integrado es compatible con F5 BIG-IP (el balanceador de cargas integrado de GKE On-Prem). Con el modo manual, puedes elegir el balanceador de cargas que desees. En este momento, GKE On-Prem ofrece instrucciones documentadas para los siguientes balanceadores de cargas:
Configura un balanceador de cargas en tu centro de datos antes de instalar GKE On-Prem. Durante la instalación, elige si deseas habilitar el modo integrado de balanceo de cargas (F5 BIG-IP) o el manual (un balanceador de cargas que elijas). El modo de balanceo de cargas manual requiere que asignes IP estáticas para tus nodos; no puedes usar un servidor de protocolo de configuración dinámica de host (DHCP) con el modo de balanceo de cargas manual.
- Configura el balanceador de cargas
- Requisitos del balanceador de cargas
- Habilita el balanceo de cargas manual
- Requisitos de F5
Authentication
Si tienes clientes que necesitan autenticarse en tus clústeres y acceder a las cargas de trabajo en contenedores, puedes usar OpenID Connect (OIDC) con el proveedor que desees o con Active Directory Federated Services (ADFS).
Prepara tu proyecto de Google Cloud
El proceso de preparación de tu proyecto de Google Cloud consta de estos pasos:
- Crea un proyecto de Google Cloud y habilita las API necesarias.
- Vincula las funciones de administración de identidades y accesos a las cuentas de servicio.
- Descarga las herramientas necesarias de la interfaz de línea de comandos (CLI), incluida la versión 11 de HashiCorp Terraform.
Consulta los siguientes temas para obtener más información:
Crea la estación de trabajo de administrador
La creación de la estación de trabajo de administrador consta de estos pasos:
- Descarga el archivo OVA de la estación de trabajo de administrador, que incluye un archivo de paquete de GKE On-Prem.
- Copia un archivo de configuración de Terraform (TF) y un archivo de variables de Terraform (TFVARS) y modifícalos para que reflejen tu configuración de vCenter y vSphere.
- Usar Terraform para crear una máquina virtual (VM) de la estación de trabajo de administrador en vSphere
Consulta los siguientes temas para obtener más información:
Cómo funciona la instalación de GKE On-Prem
A continuación, se muestra un resumen de alto nivel de los pasos que se tomaron durante una instalación (consulta también la Descripción general de la instalación).
- Establece una conexión SSH a tu estación de trabajo de administrador.
- Ejecuta
gkectl create-config
para generar un archivo de configuración de GKE On-Prem. El archivo de configuración declara una especificación para instalar GKE On-Prem. Debes modificar el archivo de configuración con valores apropiados para tus necesidades y tu entorno, como las especificaciones de los clústeres, la autenticación de OIDC, el balanceo de cargas, el registro de Stackdriver, el proyecto de Google Cloud con el que deseas registrarte y otros aspectos.
Debes ejecutar
gkectl check-config
para verificar que el archivo de configuración modificado se pueda usar en una instalación.Ejecuta
gkectl prepare
a fin de mover la imagen de SO de GKE On-Prem a vSphere y marcarla como una plantilla para las VM. Si configuras un registro de Docker privado, este comando también envía las imágenes de contenedor de GKE On-Prem al registro.Ejecuta
gkectl create cluster --config
con el archivo de configuración para crear los clústeres de GKE On-Prem en tu centro de datos.
Al final de una instalación exitosa, deberías tener los siguientes elementos en vSphere:
Arquitectura
En GKE On-Prem, hay un clúster de administrador y, de forma predeterminada, tres clústeres de usuario. También hay dos VM de complementos y una VM de estación de trabajo de administrador. Todas estas VM se ejecutan en un solo clúster de vSphere.
Estación de trabajo de administrador
La estación de trabajo de administrador es la VM en vSphere desde la que los administradores del clúster instalan GKE On-Prem e interactúan con él. Es la primera VM que creas antes de crear cualquier otro elemento.
Si eres un administrador de clústeres, usa Terraform para crear la estación de trabajo de administrador en vSphere. La estación de trabajo de administrador incluye lo siguiente:
- Un archivo de paquete completo
- Las herramientas de la CLI para interactuar con GKE On-Prem, vSphere y Google Cloud
Para crear la estación de trabajo de administrador, descarga tres archivos:
- El archivo Open Virtual Appliance (OVA) de la estación de trabajo de administrador. Esta es una imagen de VM con versión de la estación de trabajo de administrador. Importa este archivo a vSphere y márcalo como una plantilla de VM. Luego, Terraform usa la plantilla para implementar la estación de trabajo de administrador en tu clúster de vSphere.
- El archivo de configuración de Terraform (TF) Estas son instrucciones que Terraform usa para crear la estación de trabajo de administrador en tu clúster. Copia este archivo en tu laptop o estación de trabajo local.
- El archivo de variables de configuración de Terraform (TFVARS) Propaga las variables de este archivo con los valores de tu entorno. El archivo de configuración de TF hace referencia a las variables del archivo TFVARS. Copia este archivo en tu laptop o estación de trabajo local.
Clúster de administrador
El clúster de administrador es la capa base de GKE On-Prem. En él se ejecutan los siguientes componentes de GKE On-Prem:
- Plano de control de administrador: El plano de control de administrador controla todas las llamadas a la API de
gkectl
y Kubernetes desde y hacia GKE On-Prem. El plano de control del administrador realiza algunas llamadas desde y hacia las API de vCenter. - Planos de control de usuario: Es el plano de control de un clúster de usuario. Enruta las solicitudes a la API a los nodos del clúster. Cada clúster tiene su propio plano de control que se ejecuta en el clúster de administrador. Los planos de control de usuario también realizan algunas llamadas a las API de vCenter y desde ellas.
- VM de complementos: Son las VM que ejecutan los complementos del clúster de administrador, como Grafana, Prometheus, los componentes de Istio y Stackdriver.
Ten en cuenta que el administrador del clúster administra los planos de control de usuario. Se ejecutan en nodos en clústeres de administrador, no en los clústeres de usuario. Para administrar los planos de control de usuario, los clústeres de administrador deben realizar estas acciones:
- Administrar las máquinas que ejecutan los planos de control del clúster de usuario
- Crear, actualizar y borrar los componentes del plano de control
- Exponer el servidor de la API de Kubernetes al clúster de usuario
- Administrar los certificados del clúster
Clúster de usuario
En los clústeres de usuario implementas y ejecutas tus cargas de trabajo y servicios en contenedores.
VM de complementos
GKE On-Prem crea dos VM para ejecutar los complementos del clúster de administrador, como Grafana, Prometheus, los componentes de Istio y Stackdriver.
Información sobre el paquete
El paquete de GKE On-Prem es un archivo TGZ con versión que contiene todos los componentes necesarios para crear y actualizar clústeres de GKE On-Prem.
Existen dos tipos de paquetes:
Paquete completo
El paquete completo, gke-onprem-vsphere-[VERSION]-full.tgz
, se incluye en la estación de trabajo de administrador. Puedes encontrarlo en /var/lib/gke/bundles
. El paquete completo se usa para instalar GKE On-Prem por primera vez.
Es un archivo grande que incluye lo siguiente:
- Un archivo TAR con imágenes de contenedor de todos los componentes del clúster
- Archivos YAML de esos componentes del clúster
- Una imagen de nodo de GKE On-Prem
Paquete de actualización
El paquete de actualización, gke-onprem-vsphere-[VERSION].tgz
, se proporciona para actualizar clústeres.
Cada vez que actualices los clústeres, descarga el paquete de la versión desde Descargas. El paquete de actualización solo tiene archivos de configuración YAML, que se usan para actualizar los componentes de tu clúster.
Herramientas de la CLI
Cuando instalas GKE On-Prem, debes descargar las siguientes herramientas de la CLI en tu laptop o estación de trabajo local:
govc
terraform
gkectl
kubectl
(incluida en Google Cloud CLI)gcloud
(incluida en la CLI de gcloud)
govc
govc
es la CLI de vSphere. Usa govc
cuando crees la estación de trabajo de administrador. También puedes usarla para administrar tu clúster de vSphere.
terraform
terraform
es la CLI de HashiCorp Terraform. Usa terraform
para crear y actualizar la estación de trabajo de administrador.
gkectl
gkectl
es la CLI de GKE On-Prem. Consulta su guía de referencia.
Usa gkectl
para realizar muchas tareas de administración de clústeres, incluidas las siguientes:
- Creación y administración de clústeres
- Diagnóstico y solución de problemas
- Captura y exportación de registros de clústeres
kubectl
kubectl
es la CLI de Kubernetes. Usa kubectl
para interactuar con Kubernetes y sus clústeres, y en tareas como las siguientes:
- Implementar, administrar y borrar cargas de trabajo en contenedores que se ejecutan en clústeres
- Administrar, editar y borrar recursos de Kubernetes
gcloud
Google Cloud CLI es la CLI de Google Cloud. Puedes usar la CLI de gcloud para varios propósitos, incluidos los siguientes:
- Autenticar en tu proyecto de Google Cloud
- Crear cuentas de servicio y las claves privadas
- Vincular las funciones de administración de identidades y accesos a las cuentas
Registra clústeres con la consola de Google Cloud
Cuando creas clústeres de usuario de GKE On-Prem, puedes habilitar Connect para registrarlos de forma automática en la consola de Google Cloud. Connect te permite ver los clústeres de Kubernetes locales y en la nube y acceder a ellos desde la misma interfaz de usuario de Google Cloud.
Cuando se habilita Connect, se crea un agente de Connect en cada clúster de usuario. El agente de Connect es un objeto Deployment que establece una conexión encriptada de larga duración a Google Cloud desde el clúster de usuario en el que se ejecuta.
La imagen de contenedor del agente de Connect se extrae de un repositorio de Container Registry que se encuentra en gcr.io
.
Si tu clúster de usuario no tiene gcr.io o no se puede conectar a él, debes usar un registro privado de Docker para conectarlo a la consola de Google Cloud.
Control de versiones
Para obtener más información sobre cómo funciona el control de versiones, consulta Versiones.
Soluciona y diagnostica problemas
Consulta los siguientes temas para solucionar problemas:
- A fin de obtener ayuda para solucionar problemas de temas específicos, consulta Solución de problemas.
- Para diagnosticar problemas de clústeres mediante
gkectl
, consulta Diagnostica problemas de clústeres. - Para diagnosticar problemas de nodos de un clúster, consulta Depura problemas de nodos mediante debug-toolbox.
- Para obtener ayuda de Google, consulta Obtén asistencia.
Valores de marcadores de posición en la documentación de GKE On-Prem
A medida que usas la documentación de GKE On-Prem, puedes hacer clic en los placeholder values en los bloques de código para cambiarlos. En el siguiente bloque, haz clic en [YOUR_NAME] y observa que se puede editar:
Enter your name: [YOUR_NAME]
Puede resultarte útil si deseas completar los valores de marcadores de posición antes de copiar comandos y ejecutarlos en tu entorno.
¿Qué sigue?
A continuación, lee Requisitos del sistema para obtener más información sobre cómo preparar tu entorno local.