Crea un clúster de administrador

En esta página, se muestra cómo crear un clúster de administrador.

Genera un archivo de configuración

Para crear y administrar un clúster de administrador, necesitas un archivo de configuración de clúster de administrador. Si usaste gkeadm a fin de crear tu estación de trabajo de administrador, gkeadm generó una plantilla para el archivo de configuración y completó algunos campos.

Si no usaste gkeadm para crear tu estación de trabajo de administrador, puedes generar una plantilla si ejecutas el siguiente comando:

gkectl create-config admin --config [OUTPUT_PATH]

En el ejemplo anterior, [OUTPUT_PATH] es la ruta que elijas para la plantilla generada. Si no incluyes la marca --config, gkectl nombra le asigna el nombre admin-cluster.yaml al archivo y lo coloca en el directorio actual.

Completa el archivo de configuración

bundlePath

Si usaste gkeadm para crear tu estación de trabajo de administrador, este campo ya está completo. De lo contrario, proporciona la ruta de acceso del archivo de paquete.

vCenter

Si usaste gkeadm para crear tu estación de trabajo de administrador, esta sección ya está completa. De lo contrario, proporciona valores para los campos en vCenter.

network

Decide cómo quieres que los nodos del clúster obtengan sus direcciones IP. Las opciones son las siguientes:

  • De un servidor DHCP. Establece network.ipMode.type en "dhcp".

  • De una lista de direcciones IP estáticas que proporciones. Configura network.ipMode.type como "static" y crea un archivo de configuración de host que proporcione las direcciones IP estáticas.

Proporciona valores para los campos restantes en la sección network .

loadBalancer

Reserva una VIP para el servidor de la API de Kubernetes del clúster de administrador. Reserva otra VIP para el servidor de complementos. Proporciona tus VIP como valores para loadBalancer.controlPlaneVIP y loadBalancer.addonsVIP.

Decide qué tipo de balanceo de cargas quieres usar. Las opciones son las siguientes:

  • Balanceo de cargas en paquetes de Seesaw. Configura loadBalancer.kind como "Seesaw" y completa la sección loadBalancer.seesaw.

  • Balanceo de cargas integrado a BIG-IP de F5. Configura loadBalancer.kind como "F5BigIP" y completa la sección f5BigIP.

  • Balanceo de cargas manual. Configura loadBalancer.kind como "ManualLB" y completa la sección manualLB.

proxy

Si la red que tendrá los nodos del clúster de administrador está detrás de un servidor proxy, completa la sección proxy.

privateRegistry

Decide dónde deseas conservar las imágenes de contenedor para los componentes de GKE On-Prem. Las opciones son las siguientes:

  • gcr.io. No completes la sección privateRegistry.

  • Tu propio registro privado de Docker. Completa la sección privateRegistry.

gcrKeyPath

Configura gcrKeyPath en la ruta de acceso del archivo de claves JSON para tu cuenta de servicio incluida en la lista de anunciantes permitidos.

stackdriver

Completa la sección stackdriver.

cloudAuditLogging

Si quieres integrar los registros de auditoría de Kubernetes a los registros de auditoría de Cloud, completa la sección cloudAuditLogging.

Valida tu archivo de configuración

Una vez que hayas completado el archivo de configuración de tu clúster de administrador, ejecuta gkectl check-config para verificar que el archivo sea válido:

gkectl check-config --config [CONFIG_PATH]

En el ejemplo anterior, [CONFIG_PATH] es la ruta de acceso del archivo de configuración de tu clúster de administrador.

Si el comando muestra algún mensaje de error, soluciona los problemas y vuelve a validar el archivo.

Si deseas omitir las validaciones que llevan más tiempo, pasa la marca --fast. Para omitir validaciones individuales, usa las marcas --skip-validation-xxx. Para obtener más información sobre el comando check-config, consulta Ejecuta verificaciones previas.

Ejecuta gkectl prepare

Ejecuta gkectl prepare para inicializar el entorno de vSphere:

gkectl prepare --config [CONFIG_PATH]

Crea el clúster de administrador

Crea el clúster de administrador:

gkectl create admin --config [CONFIG_PATH]

En el ejemplo anterior, [CONFIG_PATH] es la ruta de acceso del archivo de configuración de tu clúster de administrador.

El comando gkectl create admin crea un archivo kubeconfig llamado kubeconfig en el directorio actual. Necesitarás este archivo kubeconfig más adelante para interactuar con tu clúster de administrador.

Verifica que el clúster de administrador esté en ejecución

Verifica que el clúster de administrador esté en ejecución:

kubectl get nodes --kubeconfig [ADMIN_CLUSTER_KUBECONFIG]

En el ejemplo anterior, [ADMIN_CLUSTER_KUBECONFIG] es la ruta de acceso de tu archivo kubeconfig.

En el resultado, se muestran los nodos del clúster de administrador.

Soluciona problemas

Diagnostica problemas de clústeres mediante gkectl

Usa los comandos gkectl diagnose para identificar los problemas de clústeres y compartir la información de un clúster con Google. Consulta Diagnostica problemas de clústeres.

Comportamiento de registro predeterminado

Para gkectl y gkeadm, basta con usar la configuración de registro predeterminada:

  • De forma predeterminada, las entradas de registro se guardan de la siguiente manera:

    • Para gkectl, el archivo de registro predeterminado es /home/ubuntu/.config/gke-on-prem/logs/gkectl-$(date).log, y el archivo está vinculado con un symlink con el archivo logs/gkectl-$(date).log en el directorio local donde ejecutas gkectl.
    • Para gkeadm, el archivo de registro predeterminado es logs/gkeadm-$(date).log en el directorio local en el que ejecutas gkeadm.
  • Todas las entradas de registro se guardan en el archivo de registro, incluso si no se imprimen en la terminal (cuando --alsologtostderr es false).
  • El nivel de verbosidad -v5 (predeterminado) cubre todas las entradas de registro que necesita el equipo de asistencia al cliente.
  • El archivo de registro también contiene el comando ejecutado y el mensaje de error.

Recomendamos que envíes el archivo de registro al equipo de asistencia al cliente cuando necesites ayuda.

Especifica una ubicación no predeterminada para el archivo de registro

A fin de especificar una ubicación no predeterminada para el archivo de registro gkectl, usa la marca --log_file. El archivo de registro que especifiques no se vinculará con un symlink con el directorio local.

A fin de especificar una ubicación no predeterminada para el archivo de registro gkeadm, usa la marca --log_file.

Ubica los registros de la API de clúster en el clúster de administrador

Si una VM no se inicia después de que se inicia el plano de control de administrador, puedes intentar depurarla mediante la inspección de los registros de los controladores de la API de clúster en el clúster de administrador:

  1. Encuentra el nombre del Pod de controladores de la API de clúster en el espacio de nombres kube-system, en el que [ADMIN_CLUSTER_KUBECONFIG] es la ruta de acceso al archivo kubeconfig del clúster de administrador:

    kubectl --kubeconfig [ADMIN_CLUSTER_KUBECONFIG] -n kube-system get pods | grep clusterapi-controllers
  2. Abre los registros del Pod, en los que [POD_NAME] es el nombre del Pod. De manera opcional, usa grep o una herramienta similar para buscar errores:

    kubectl --kubeconfig [ADMIN_CLUSTER_KUBECONFIG] -n kube-system logs [POD_NAME] vsphere-controller-manager

Depura los problemas de BIG-IP de F5 mediante el kubeconfig del nodo del plano de control del clúster de administrador

Después de una instalación, GKE On-Prem genera un archivo kubeconfig llamado internal-cluster-kubeconfig-debug en el directorio principal de la estación de trabajo de administrador. Este archivo kubeconfig es idéntico al kubeconfig de tu clúster de administrador, excepto que apunta directamente al nodo del plano de control del clúster de administrador, en el que se ejecuta el plano de control de administrador. Puedes usar el archivo internal-cluster-kubeconfig-debug para depurar los problemas de BIG-IP de F5.

La validación de gkectl check-config falla: No se pueden encontrar las particiones de BIG-IP de F5

Síntomas

La validación falla porque las particiones de BIG-IP de F5 no se pueden encontrar, aunque existen.

Causas posibles

Un problema con la API de BIG-IP de F5 puede causar que la validación falle.

Solución

Vuelve a ejecutar gkectl check-config.

gkectl prepare --validate-attestations falla: No se puede validar la certificación de la compilación

Síntomas

La ejecución de gkectl prepare con la marca opcional --validate-attestations muestra el siguiente error:

could not validate build attestation for gcr.io/gke-on-prem-release/.../...: VIOLATES_POLICY
Causas posibles

Es posible que no exista una certificación para las imágenes afectadas.

Solución

Vuelve a descargar y a implementar el OVA de la estación de trabajo de administrador, como se indica en Crea una estación de trabajo de administrador. Si el problema persiste, comunícate con Google para obtener asistencia.

Depura mediante los registros del clúster de arranque

Durante la instalación, GKE On-Prem crea un clúster de arranque temporal. Después de una instalación exitosa, GKE On-Prem borra el clúster de arranque, por lo que solo tienes el clúster de administrador y el de usuario. Por lo general, no deberías tener ningún motivo para interactuar con este clúster.

Si algo sale mal durante una instalación y pasaste --cleanup-external-cluster=false a gkectl create cluster, es posible que te resulte útil depurar mediante los registros del clúster de arranque. Puedes buscar el Pod y, luego, obtener sus registros:

kubectl --kubeconfig /home/ubuntu/.kube/kind-config-gkectl get pods -n kube-system
kubectl --kubeconfig /home/ubuntu/.kube/kind-config-gkectl -n kube-system get logs [POD_NAME]

Para obtener más información, consulta Soluciona problemas.

¿Qué sigue?

Crea un clúster de usuario.