Archivo de configuración del clúster de administrador 1.30 y versiones posteriores

En este documento, se describen los campos del archivo de configuración del clúster de administrador para las versiones 1.30 y posteriores de Google Distributed Cloud.

Genera una plantilla para tu archivo de configuración

Si usaste gkeadm a fin de crear tu estación de trabajo de administrador, gkeadm generó una plantilla para tu archivo de configuración del clúster de administrador. Además, gkeadm completó algunos de los campos por ti.

Si no usaste gkeadm a fin de crear tu estación de trabajo de administrador, puedes usar gkectl a fin de generar una plantilla para tu archivo de configuración del clúster de administrador.

Si deseas generar una plantilla para el archivo de configuración del clúster de administrador, haz lo siguiente:

gkectl create-config admin --config=OUTPUT_FILENAME --gke-on-prem-version=VERSION

Reemplaza lo siguiente:

  • OUTPUT_FILENAME: una ruta de acceso que elijas para la plantilla generada. Si omites esta marca, gkectl asigna un nombre al archivo admin-cluster.yaml y lo coloca en el directorio actual.

  • VERSION: Es el número de versión de Google Distributed Cloud. Por ejemplo: gkectl create-config admin --gke-on-prem-version=1.33.100-gke.89 Esta versión debe ser igual o menor que la versión de gkectl. Si omites esta marca, la plantilla de configuración generada se propaga con valores basados en el parche 1.33 más reciente.

Plantilla

Campos obligatorios y valores predeterminados

Si un campo está marcado como Obligatorio, el archivo de configuración completado debe tener un valor para el campo.

Si se proporciona un valor Predeterminado para un campo, el clúster usará ese valor si no ingresas nada para el campo. Para anular un valor predeterminado, debes ingresar un valor.

Si un campo no está marcado como obligatorio, el campo es opcional. Puedes completarla si es relevante para ti, pero no es obligatorio.

Completa el archivo de configuración

En el archivo de configuración, ingresa los valores de los campos como se describe en las siguientes secciones.

enableAdvancedCluster

1.33 y versiones más altas

Todos los clústeres nuevos se crean como clústeres avanzados. Si incluyes este campo en el archivo de configuración cuando creas un clúster nuevo, debe establecerse en true. Si configuras este campo como false, se bloqueará la creación del clúster.

1.32

Opcional
Mutable (se permite el cambio de false a true)
Booleano
Prepropagado: verdadero
Predeterminado: verdadero

Establece enableAdvancedCluster en false si no deseas habilitar el clúster avanzado cuando crees un clúster nuevo. Cuando esta marca se establece en true (clúster avanzado habilitado), el software de Google Distributed Cloud implementa controladores que permiten una arquitectura más extensible. Habilitar el clúster avanzado te da acceso a nuevas funciones y capacidades, como los dominios de topología. Este campo es obligatorio si se configura infraConfigFilePath.

Asegúrate de revisar las diferencias cuando ejecutas clústeres avanzados antes de habilitar el clúster avanzado.

Para actualizar un clúster existente a un clúster avanzado, consulta Actualiza un clúster a un clúster avanzado. Después de actualizar a un clúster avanzado, no se permite inhabilitar la función.

1.31

Solo disponible para clústeres nuevos
Vista previa
Opcional
Inmutable
Booleano
Prepropagado: falso
Predeterminado: falso

Establece enableAdvancedClusters en true para habilitar el clúster avanzado cuando crees un clúster nuevo. Cuando se habilita esta marca, el software subyacente de Google Distributed Cloud implementa controladores que permiten una arquitectura más extensible. Habilitar el clúster avanzado te da acceso a nuevas funciones y capacidades, como los dominios de topología. Este campo es obligatorio si se configura infraConfigFilePath.

1.30 y versiones más bajas

No disponible.

name

Opcional
Cadena
Predeterminado: Un nombre aleatorio que comienza con el prefijo “gke-admin-”

El nombre que elijas para el clúster.

Ejemplo:

name: "my-admin-cluster"

bundlePath

Obligatorio
Cadena
Mutable

Es la ruta de acceso de tu archivo de paquete de Google Distributed Cloud.

El archivo del paquete completo de Google Distributed Cloud contiene todos los componentes de una versión particular de Google Distributed Cloud. Cuando creas una estación de trabajo de administrador, se incluye un paquete completo en la siguiente ubicación.

/var/lib/gke/bundles/gke-onprem-vsphere-VERSION-full.tgz

Ejemplo:

bundlePath: "/var/lib/gke/bundles/gke-onprem-vsphere-1.10.0-gke.8.full.tgz"

preparedSecrets.enabled

Si se configura infraConfigFilePath, quita este campo.

Vista previa
Opcional
Inmutable
Booleano
Prepropagado: falso
Predeterminado: falso

Establece este valor en true si deseas usar credenciales preparadas en el clúster de administrador. De lo contrario, configúralo como false o omite el campo.

Ejemplo:

preparedSecrets:
  enabled: true

vCenter

En esta sección, se incluye información sobre el entorno de vSphere y la conexión a vCenter Server.

Si infraConfigFilePath está configurado, quita toda esta sección. De lo contrario, esta sección es obligatoria e inmutable.

vCenter.address

Obligatorio
Cadena
Inmutable

Es la dirección IP o el nombre de host de vCenter Server.

Para obtener más información, consulta Busca la dirección de tu servidor de vCenter.

Ejemplos:

vCenter:
  address: "203.0.113.100"
vCenter:
  address: "my-vcenter-server.my-domain.example"

vCenter.datacenter

Obligatorio
Cadena
Inmutable

Es la ruta de acceso relativa de un centro de datos de vSphere.

El valor que especifiques es relativo a la carpeta raíz llamada /.

Si tu centro de datos está en la carpeta raíz, el valor es el nombre del centro de datos.

Ejemplo:

vCenter:
  datacenter: "my-data-center"

De lo contrario, el valor es una ruta de acceso relativa que incluye una o más carpetas junto con el nombre del centro de datos.

Ejemplo:

vCenter:
  datacenter: "data-centers/data-center-1"

vCenter.cluster

Obligatorio
Cadena
Inmutable

Es la ruta de acceso relativa de un clúster de vSphere que representa los hosts ESXi en los que se ejecutarán las VMs de tu clúster de administrador. Este clúster de vSphere representa un subconjunto de los hosts ESXi físicos en tu centro de datos de vCenter.

El valor que especifiques es relativo a /.../DATA_CENTER/vm/.

Si tu clúster de vSphere se encuentra en la carpeta /.../DATA_CENTER/vm/, el valor es el nombre del clúster de vSphere.

Ejemplo:

vCenter:
  cluster: "my-vsphere-cluster"

De lo contrario, el valor es una ruta de acceso relativa que incluye una o más carpetas junto con el nombre del clúster de vSphere.

Ejemplo:

vCenter:
  cluster: "clusters/vsphere-cluster-1"

vCenter.resourcePool

Obligatorio
Cadena
Inmutable

Un grupo de recursos de vCenter para las VMs del clúster de administrador.

Si deseas usar el grupo de recursos predeterminado, configúralo como VSPHERE_CLUSTER/Resources.

Ejemplo:

vCenter:
  resourcePool: "my-vsphere-cluster/Resources"

Si deseas usar un grupo de recursos que ya creaste, configúralo en la ruta de acceso relativa de tu grupo de recursos.

El valor que especifiques es relativo a /.../DATA_CENTER/host/.../VSPHERE_CLUSTER/Resources/

Si tu grupo de recursos es un elemento secundario directo de /.../DATA_CENTER/host/.../VSPHERE_CLUSTER/Resources/, el valor es el nombre del grupo de recursos.

Ejemplo:

vCenter:
  resourcePool: "my-resource-pool"

De lo contrario, el valor es una ruta de acceso relativa que tiene dos o más grupos de recursos.

Ejemplo:

vCenter:
  resourcePool: "resource-pool-1/resource-pool-2"

vCenter.datastore

Obligatorio si no se especifica vCenter.storagePolicyName
Cadena
Inmutable

Es el nombre de un almacén de datos de vSphere para tu clúster de administrador.

El valor que especifiques debe ser un nombre, no una ruta. No incluyas ninguna carpeta en el valor.

Ejemplo:

vCenter:
  datastore: "my-datastore"

Debes especificar un valor para vCenter.datastore o vCenter.storagePolicyName, pero no para ambos. Si especificas un valor para este campo, no especifiques un valor para vCenter.storagePolicyName. El campo vCenter.datastore es inmutable, excepto cuando estableces el campo en una cadena vacía cuando migras un almacén de datos a la administración basada en políticas de almacenamiento (SPBM).

vCenter.storagePolicyName

Obligatorio si no se especifica vCenter.datastore
Cadena
Inmutable

Es el nombre de una política de almacenamiento de VM para los nodos del clúster.

El clúster de administrador debe tener alta disponibilidad (HA) para funcionar con la política de almacenamiento.

Para obtener más información, consulta Configura una política de almacenamiento.

Debes especificar un valor para vCenter.datastore o vCenter.storagePolicyName, pero no para ambos. Si especificas un valor para este campo, no especifiques un valor para vCenter.datastore.

vCenter.caCertPath

Obligatorio
Cadena
Mutable

Es la ruta de acceso del certificado de CA de vCenter Server.

Para obtener más información, consulta Obtén tu certificado de CA de vCenter.

Si deseas obtener información para actualizar este campo en un clúster existente, consulta Actualiza las referencias de certificados de vCenter.

Ejemplo:

vCenter:
  caCertPath: "/usr/local/google/home/me/certs/vcenter-ca-cert.pem"

vCenter.credentials.fileRef.path

Obligatorio
String

Es la ruta de acceso de un archivo de configuración de credenciales que contiene el nombre de usuario y la contraseña de la cuenta de usuario de vCenter. La cuenta de usuario debe tener la función de administrador o privilegios equivalentes. Consulta los requisitos de vSphere.

Puedes usar gkectl update para actualizar este campo en un clúster existente.

Si deseas obtener información para actualizar tus credenciales de vCenter, consulta Actualiza las credenciales del clúster.

Ejemplo:

vCenter:
  credentials:
    fileRef:
      path: "my-config-folder/admin-creds.yaml"

vCenter.credentials.fileRef.entry

Obligatorio
String

Es el nombre del bloque de credenciales en el archivo de configuración de credenciales, que contiene el nombre de usuario y la contraseña de tu cuenta de usuario de vCenter.

Puedes usar gkectl update para actualizar este campo en un clúster existente.

Si deseas obtener información para actualizar tus credenciales de vCenter, consulta Actualiza las credenciales del clúster.

Ejemplo:

vCenter:
  credentials:
    fileRef:
      entry: "vcenter-creds"

vCenter.folder

Opcional
Cadena
Inmutable
Predeterminado: La carpeta de todo el centro de datos

La ruta de acceso relativa a una carpeta de vSphere que ya creaste. Esta carpeta contendrá las VMs de tu clúster de administrador.

Si no especificas un valor, las VMs de tu clúster de administrador se colocarán en /.../DATA_CENTER/vm/.

Si especificas un valor, este es relativo a /.../DATA_CENTER/vm/.

El valor puede ser el nombre de una carpeta.

Ejemplo:

vCenter:
  folder: "my-folder"

O bien, el valor puede ser una ruta de acceso relativa que incluya más de una carpeta.

Ejemplo:

vCenter:
  folder: "folders/folder-1"

vCenter.dataDisk

No proporciones un valor para este campo. Borra el campo o márcalo como comentario.

network

Obligatorio
Inmutable

En esta sección, se incluye información sobre la red de clústeres de administrador.

network.hostConfig

En esta sección, se incluye información sobre los servidores NTP, los servidores DNS y los dominios de búsqueda de DNS que usan las VM que son los nodos del clúster.

Si infraConfigFilePath está configurado, quita toda esta sección. De lo contrario, esta sección es obligatoria e inmutable.

network.hostConfig.dnsServers

Es obligatorio si se completa la sección network.hostConfig.
Inmutable
Array de cadenas.
La cantidad máxima de elementos en el array es tres.

Son las direcciones de los servidores DNS de las VMs.

Ejemplo:

network:
  hostConfig:
    dnsServers:
    - "172.16.255.1"
    - "172.16.255.2"

network.hostConfig.ntpServers

Es obligatorio si se completa la sección network.hostConfig.
Inmutable
Array de cadenas

Son las direcciones de los servidores de tiempo para las VM.

Ejemplo:

network:
  hostConfig:
    ntpServers:
    - "216.239.35.0"

network.hostConfig.searchDomainsForDNS

Opcional
Inmutable
Array de cadenas

Son dominios de búsqueda de DNS para que usen las VM. Estos dominios se usan como parte de una lista de búsqueda de dominios.

Ejemplo:

network:
  hostConfig:
    searchDomainsForDNS:
    - "my.local.com"

network.ipMode.type

Inmutable
Cadena
Prepropagado: “static”
Predeterminado: “dhcp”

Si deseas que los nodos del clúster obtengan la dirección IP de un servidor DHCP, configura esto como "dhcp". Si quieres que los nodos del clúster tengan direcciones IP estáticas seleccionadas de una lista que proporciones, configura esto como "static".

En la mayoría de los casos, debes especificar static, ya que siempre debes proporcionar direcciones IP para los nodos del plano de control del clúster de administrador. El DHCP solo se usa para proporcionar direcciones IP en los siguientes casos:

  • Si enableControlplaneV2 no está habilitado en los clústeres de usuario, puedes usar DHCP para los nodos del plano de control del clúster de usuario, que se encuentran en el clúster de administrador.

  • En la versión 1.16 y versiones anteriores, los nodos de complementos para clústeres de administrador sin HA pueden obtener sus direcciones IP del DHCP. En la versión 1.28 y versiones posteriores, los clústeres de administrador deben tener HA y no tienen nodos de complementos.

Ejemplo:

network:
  ipMode:
    type: "static"

network.ipMode.ipBlockFilePath

Es la ruta de acceso absoluta o relativa del archivo de bloque de IP de tu clúster.

Si se configura infraConfigFilePath, este campo es obligatorio.

Este campo también es obligatorio en los siguientes casos:

  • Clúster de administrador sin HA de la versión 1.16 y versiones anteriores: Enumera las direcciones IP del nodo del plano de control y los nodos del complemento en un archivo de bloque de IP.

  • Clúster de administrador con HA de la versión 1.16 y anteriores: Enumera las direcciones IP de los nodos de complementos en un archivo de bloque de IP.

  • Clústeres de usuario de kubeception 1.29 y versiones anteriores: Enumera las direcciones IP de los nodos del plano de control del clúster de usuario en el archivo de bloque de IP del clúster de administrador.

Cadena
Inmutable

Ejemplo:

network:
  ipMode:
    ipBlockFilePath: "/my-config-folder/admin-cluster-ipblock.yaml"

network.serviceCIDR

Obligatorio
Cadena
Inmutable
El menor rango posible: /24
El mayor rango posible: /12
Prepropagado: “10.96.232.0/24”

Un rango de direcciones IP, en formato CIDR, que se usarán para los servicios en tu clúster.

Ejemplo:

network:
  serviceCIDR: "10.96.232.0/24"

network.podCIDR

Obligatorio
Cadena
Inmutable
El menor rango posible: /18
El mayor rango posible: /8
Prepropagado: “192.168.0.0/16”

Un rango de direcciones IP, en formato CIDR, que se usará para los Pods en tu clúster.

Ejemplo:

network:
  podCIDR: "192.168.0.0/16"

El rango de Service no debe superponerse con el rango de Pod.

Los rangos de Service y Pod no deben superponerse con ninguna dirección fuera del clúster a la que deseas llegar desde dentro del clúster.

Por ejemplo, supongamos que el rango de Service es 10.96.232.0/24 y el rango de Pod es 192.168.0.0/16. El tráfico enviado desde un Pod a una dirección en cualquiera de esos rangos se tratará como tráfico en el clúster y no llegará a ningún destino fuera del clúster.

En particular, los rangos de Service y Pod no deben superponerse con lo siguiente:

  • Direcciones IP de nodos en cualquier clúster

  • Direcciones IP que usan las máquinas del balanceador de cargas

  • VIP que usan los balanceadores de cargas y los nodos del plano de control

  • Dirección IP de los servidores de vCenter, DNS y NTP

Recomendamos que los rangos de Service y Pod estén en el espacio de direcciones RFC 1918.

Esta es una razón para que la recomendación use direcciones RFC 1918. Supongamos que tu rango de Pod o Service contiene direcciones IP externas. Cualquier tráfico enviado desde un Pod a una de esas direcciones externas se tratará como tráfico en el clúster y no llegará al destino externo.

network.vCenter.networkName

Es el nombre de la red de vSphere para los nodos del clúster.

Si se configuró infraConfigFilePath, quita este campo. De lo contrario, este campo es obligatorio e inmutable.

Ejemplo:

network:
  vCenter:
    networkName: "my-network"

Si el nombre contiene un carácter especial, debes usar una secuencia de escape.

Caracteres especiales Secuencia de escape
Barra (/) %2f
Barra inversa (\) %5c
Signo de porcentaje (%) %25

Si el nombre de la red no es único en tu centro de datos, puedes especificar una ruta de acceso completa.

Ejemplo:

network:
  vCenter:
    networkName: "/data-centers/data-center-1/network/my-network"

network.controlPlaneIPBlock

Es la información de red de los nodos del plano de control del clúster de administrador.

Si infraConfigFilePath está configurado, quita toda esta sección. De lo contrario, esta sección es obligatoria e inmutable.

network.controlPlaneIPBlock.netmask

Obligatorio
Cadena
Inmutable

Es la máscara de red de la red que tiene tus nodos del plano de control.

Ejemplo:

network:
  controlPlaneIPBlock:
    netmask: "255.255.255.0"

network.controlPlaneIPBlock.gateway

Obligatorio
Cadena
Inmutable

Es la dirección IP de la puerta de enlace predeterminada para tus nodos del plano de control.

Ejemplo:

network:
  controlPlaneIPBlock:
    gateway: "172.16.22.1"

network.controlPlaneIPBlock.ips

Obligatorio
Inmutable
Es un array de tres objetos, cada uno de los cuales tiene una dirección IP y un nombre de host opcional.

Estas son las direcciones IP que se asignarán a tus nodos del plano de control.

Ejemplo:

network:
  controlPlaneIPBlock:
    ips:
    - ip: "172.16.22.6"
      hostname: "admin-cp-vm-1"
    - ip: "172.16.22.7"
      hostname: "admin-cp-vm-2"
    - ip: "172.16.22.8"
      hostname: "admin-cp-vm-3"

infraConfigFilePath

1.31

Si especificas una ruta de acceso en este campo, se habilitan los dominios de topología.

Vista previa
Opcional
Cadena
Mutable

Especifica la ruta de acceso completa del archivo de configuración de la infraestructura de vSphere.

Ejemplo:

infraConfigFilePath: "/my-config-folder/vsphere-infrastructure.yaml"

Además de agregar la ruta de acceso, copia el archivo de configuración de la infraestructura de vSphere en el directorio correspondiente.

Si agregas una ruta de acceso a infraConfigFilePath, debes realizar los siguientes cambios en los archivos de configuración del clúster de administrador y del clúster de usuario.

Cambios en el archivo de configuración del clúster de administrador

  • Quita lo siguiente del archivo de configuración del clúster de administrador. Configuras esta información en el archivo de configuración de la infraestructura de vSphere por dominio de topología.

    • vCenter: Quita toda la sección vCenter.
    • network.hostConfig: Quita toda la sección network.hostConfig.
    • network.vCenter.networkName: Quita este campo.
  • Realiza los siguientes cambios en el archivo de configuración del clúster de administrador:

    • network.controlPlaneIPBlock: Quita toda la sección. En su lugar, especifica las direcciones IP de los nodos del plano de control del clúster de administrador en un archivo de bloque de IP.

    • preparedSecrets: Quita este campo. Las credenciales preparadas no se admiten cuando se habilitan los dominios de topología. Quita este campo.

  • Los siguientes campos son obligatorios:

    • enableAdvancedCluster: Se establece en true.

    • network.ipMode.ipBlockFilePath: Se establece en la ruta de acceso completa o relativa del archivo de bloque de IP del clúster de administrador.

    • loadBalancer.kind: Se establece en "ManualLB". "ManualLB" es la única opción de balanceo de cargas de varias subredes (capa 3) disponible que ofrece Google Distributed Cloud.

Cambios en el archivo de configuración del clúster de usuario

  • Quita lo siguiente del archivo de configuración del clúster de usuario. Configuras esta información en el archivo de configuración de la infraestructura de vSphere por dominio de topología.

    • vCenter: Quita toda la sección vCenter.
    • network.hostConfig: Quita toda la sección network.hostConfig.
    • network.vCenter.networkName: Quita este campo.
    • masterNode.vsphere: Quita toda la sección.
    • nodePools[i].vsphere.datastore y nodePools[i].vsphere.storagePolicyName: Quita estos campos.
  • Realiza los siguientes cambios en el archivo de configuración del clúster de usuario:

    • network.controlPlaneIPBlock: Quita toda la sección. En su lugar, especifica las direcciones IP de los nodos del plano de control del clúster de administrador en un archivo de bloque de IP.

    • preparedSecrets: Quita este campo. Las credenciales preparadas no se admiten cuando se habilitan los dominios de topología.

    • nodePools[i].vsphere.hostgroups: Quita este campo. La afinidad VM-Host no se admite cuando los dominios de topología están habilitados.

    • multipleNetworkInterfaces: Configura este campo como false. No se admiten varias interfaces de red para Pods cuando los dominios de topología están habilitados.

    • storage.vSphereCSIDisabled: Establece este campo en true para inhabilitar la implementación de los componentes de CSI de vSphere.

  • Los siguientes campos son obligatorios:

    • enableAdvancedCluster: Se debe establecer en true en el archivo de configuración del clúster de usuario.

    • network.ipMode.ipBlockFilePath: Se establece en la ruta de acceso completa o relativa del archivo de bloque de IP del clúster de usuario.

    • loadBalancer.kind: Se establece en "ManualLB". "ManualLB" es la única opción de balanceo de cargas de varias subredes (capa 3) que ofrece Google Distributed Cloud.

1.30 y versiones más bajas

No disponible.

loadBalancer

En esta sección, se incluye información sobre el balanceador de cargas para el clúster de administrador.

loadBalancer.vips.controlPlaneVIP

Obligatorio
Cadena
Inmutable

Es la dirección IP que decidiste configurar en el balanceador de cargas para el servidor de la API de Kubernetes del clúster de administrador.

Ejemplo:

loadBalancer:
  vips:
    controlplaneVIP: "203.0.113.3"

loadBalancer.kind

Especifica el tipo de balanceador de cargas que se usará.

1.32 y versiones más altas

Obligatorio
Inmutable
Cadena
Prepropagado: “MetalLB”

El tipo de balanceador de cargas que puedes usar depende de si configurarás el clúster para que use dominios de topología. Se supone que el clúster usa dominios de topología si se configura el campo infraConfigFilePath.

  • Con dominios de topología: Establece este parámetro en "ManualLB". Debes configurar un balanceador de cargas de terceros (como F5 BIG-IP o Citrix) si deseas usar dominios de topología.

  • Sin dominios de topología: Establece este parámetro en "ManualLB" o "MetalLB". Usa "ManualLB" si tienes un balanceador de cargas de terceros o "MetalLB" para nuestra solución en paquete.

Si enableAdvancedCluster se establece en true (clúster avanzado habilitado), el tipo de balanceador de cargas para los nodos del plano de control se determina según adminMaster.controlPlaneLoadBalancer.

Ejemplo:

loadBalancer:
  kind: "MetalLB"

1.31

Obligatorio
Inmutable
Cadena
Prepropagado: “MetalLB”

El tipo de balanceador de cargas que puedes usar depende de si configurarás el clúster para que use dominios de topología. Se supone que el clúster usa dominios de topología si se configura el campo infraConfigFilePath.

  • Con dominios de topología: Establece este parámetro en "ManualLB". Debes configurar un balanceador de cargas de terceros (como F5 BIG-IP o Citrix) si deseas usar dominios de topología.

  • Sin dominios de topología: Establece este parámetro en "ManualLB" o "MetalLB". Usa "ManualLB" si tienes un balanceador de cargas de terceros o "MetalLB" para nuestra solución en paquete.

Ejemplo:

loadBalancer:
  kind: "MetalLB"

1.30

Obligatorio
Inmutable
Cadena
Prepropagado: “MetalLB”

Configura esto como "ManualLB" o "MetalLB". Usa "ManualLB" si tienes un balanceador de cargas de terceros (como F5 BIG-IP o Citrix) o "MetalLB" para nuestra solución en paquete.

Ten en cuenta las siguientes diferencias con respecto a las versiones anteriores:

  • En la versión 1.30 y versiones posteriores, no se permite el valor "F5BigIP" para los clústeres de administración nuevos.

  • En la versión 1.28 y versiones posteriores, no se permite el valor "Seesaw" para los clústeres de administración nuevos.

Si tienes un clúster existente que usa estos balanceadores de cargas, consulta Planifica la migración del clúster a las funciones recomendadas.

Ejemplo:

loadBalancer:
  kind: "MetalLB"

1.29 y 1.28

Obligatorio
Inmutable
Cadena
Prepropagado: “MetalLB”

Configura esto como "ManualLB", "F5BigIP", o "MetalLB"

Para habilitar funciones nuevas y avanzadas, te recomendamos que uses "ManualLB" si tienes un balanceador de cargas de terceros (como BIG-IP de F5 o Citrix) o "MetalLB" para nuestra solución en paquete.

En la versión 1.28 y versiones posteriores, no se permite el valor "Seesaw" para los clústeres de administración nuevos. Si tienes un clúster existente que usa el balanceador de cargas de Seesaw, consulta Migra del balanceador de cargas de Seesaw a MetalLB.

Ejemplo:

loadBalancer:
  kind: "MetalLB"

1.16 y versiones más bajas

Obligatorio
Inmutable
Cadena
Prepropagado: “MetalLB”

String. Configura esto como "ManualLB", "F5BigIP", "Seesaw" o "MetalLB"

Si estableces adminMaster.replicas en 3, no podrás usar el balanceador de cargas de Seesaw.

Ejemplo:

loadBalancer:
  kind: "MetalLB"

Cuando creas clústeres de usuarios con la consola de Google Cloud , gcloud CLI o Terraform, el tipo de balanceador de cargas para el clúster de administrador y sus clústeres de usuarios debe ser el mismo. La única excepción es si el clúster de administrador usa Seesaw, en cuyo caso los clústeres de usuarios pueden usar MetalLB. Si deseas que tus clústeres de administrador y de usuario usen diferentes tipos de balanceadores de cargas, debes crear clústeres de usuario con la herramienta de línea de comandos de gkectl.

loadBalancer.manualLB

Si configuras loadbalancer.kind como "ManualLB", completa esta sección. De lo contrario, quita esta sección.
Inmutable

loadBalancer.manualLB.ingressHTTPNodePort

Quita este campo del archivo de configuración. No se usa en un clúster de administrador.

loadBalancer.manualLB.ingressHTTPSNodePort

Quita este campo del archivo de configuración. No se usa en un clúster de administrador.

loadBalancer.manualLB.konnectivityServerNodePort

Quita este campo del archivo de configuración. No se usa en un clúster de administrador.

loadBalancer.f5BigIP

1.30 y versiones más altas

En la versión 1.30 y versiones posteriores, no se permite el valor "F5BigIP" para loadbalancer.kind en los clústeres de administración nuevos. Si la sección loadBalancer.f5BigIP está en tu archivo de configuración, quítala o coméntala.

Aún puedes usar tu balanceador de cargas BIG-IP de F5 con clústeres de administrador nuevos, pero la configuración es diferente. Para obtener detalles sobre la configuración, consulta Habilita el modo de balanceo de cargas manual.

Si un clúster existente tiene configurada esta sección, se bloquearán las actualizaciones a la versión 1.32. Debes migrar tus clústeres a las funciones recomendadas antes de actualizar a la versión 1.32.

1.29

Si configuras loadbalancer.kind como "F5BigIP", completa esta sección. De lo contrario, quita esta sección.

Para habilitar funciones nuevas y avanzadas, te recomendamos que configures el balanceo de cargas manual para tu balanceador de cargas de BIG-IP de F5. Para habilitar el balanceo de cargas manual, configura loadbalancer.kind como "ManualLB" y completa la sección loadBalancer.manualLB. Para obtener más información, consulta cómo Habilitar el balanceo de cargas manual.

Si tienes un balanceador de cargas de F5-BIG-IP existente y la configuración del clúster usa esta sección, después de actualizar a la versión 1.29 o posterior, te recomendamos que migres al balanceo de cargas manual.

1.28 y versiones más bajas

Si configuras loadbalancer.kind como "F5BigIP", completa esta sección. De lo contrario, quita esta sección.

Para habilitar funciones nuevas y avanzadas, te recomendamos que configures el balanceo de cargas manual para tu balanceador de cargas de BIG-IP de F5. Para habilitar el balanceo de cargas manual, configura loadbalancer.kind como "ManualLB" y completa la sección loadBalancer.manualLB. Para obtener más información, consulta cómo Habilitar el balanceo de cargas manual.

loadBalancer.f5BigIP.address

1.30 y versiones más altas

No se permite para clústeres nuevos
Obligatorio si loadBalancer.kind = "F5BigIp"
Inmutable
Cadena

Es la dirección del balanceador de cargas BIG-IP de F5. Por ejemplo:

loadBalancer:
  f5BigIP:
    address: "203.0.113.2"

1.29 y versiones más bajas

Obligatorio si loadBalancer.kind = "F5BigIp"
Inmutable
Cadena

Es la dirección del balanceador de cargas BIG-IP de F5. Por ejemplo:

loadBalancer:
  f5BigIP:
    address: "203.0.113.2"

loadBalancer.f5BigIP.credentials.fileRef.path

1.30 y versiones más altas

No se permite para clústeres nuevos
Obligatorio si loadBalancer.kind = "F5BigIp"
Cadena
mutable

Es la ruta de acceso de un archivo de configuración de credenciales que contiene el nombre de usuario y la contraseña de una cuenta que Google Distributed Cloud puede usar para conectarse al balanceador de cargas BIG-IP de F5.

La cuenta de usuario debe tener una función de usuario que tenga permisos suficientes para configurar y administrar el balanceador de cargas. El rol de administrador o de administrador de recursos es suficiente.

Puedes usar gkectl update para actualizar este campo en un clúster existente.

Si deseas obtener información para actualizar las credenciales de BIG-IP de F5, consulta Actualiza las credenciales del clúster.

Ejemplo:

loadBalancer:
  f5BigIP:
    credentials:
      fileRef:
        path: "my-config-folder/admin-creds.yaml"

1.29 y versiones más bajas

Obligatorio si loadBalancer.kind = "F5BigIp"
Cadena
Mutable

Es la ruta de acceso de un archivo de configuración de credenciales que contiene el nombre de usuario y la contraseña de una cuenta que Google Distributed Cloud puede usar para conectarse al balanceador de cargas BIG-IP de F5.

La cuenta de usuario debe tener una función de usuario que tenga permisos suficientes para configurar y administrar el balanceador de cargas. El rol de administrador o de administrador de recursos es suficiente.

Puedes usar gkectl update para actualizar este campo en un clúster existente.

Si deseas obtener información para actualizar las credenciales de BIG-IP de F5, consulta Actualiza las credenciales del clúster.

Ejemplo:

loadBalancer:
  f5BigIP:
    credentials:
      fileRef:
        path: "my-config-folder/admin-creds.yaml"

loadBalancer.f5BigIP.credentialsfileRef.entry

1.30 y versiones más altas

No se permite para clústeres nuevos
Obligatorio si loadBalancer.kind = "F5BigIp"
Cadena
mutable

Es el nombre del bloque de credenciales del archivo de configuración de credenciales que contiene el nombre de usuario y la contraseña de la cuenta BIG-IP de F5.

Puedes usar gkectl update para actualizar este campo en un clúster existente.

Si deseas obtener información para actualizar las credenciales de BIG-IP de F5, consulta Actualiza las credenciales del clúster.

Ejemplo:

loadBalancer:
  f5BigIP:
    credentials:
      fileRef:
        entry: "f5-creds"

1.29 y versiones más bajas

Obligatorio si loadBalancer.kind = "F5BigIp"
Cadena
Mutable

Es el nombre del bloque de credenciales del archivo de configuración de credenciales que contiene el nombre de usuario y la contraseña de la cuenta BIG-IP de F5.

Puedes usar gkectl update para actualizar este campo en un clúster existente.

Si deseas obtener información para actualizar las credenciales de BIG-IP de F5, consulta Actualiza las credenciales del clúster.

Ejemplo:

loadBalancer:
  f5BigIP:
    credentials:
      fileRef:
        entry: "f5-creds"

loadBalancer.f5BigIP.partition

1.30 y versiones más altas

No se permite para clústeres nuevos
Obligatorio si loadBalancer.kind = "F5BigIp"
Inmutable
Cadena

Es el nombre de una partición de BIG-IP que creaste para el clúster de administrador.

Ejemplo:

loadBalancer:
  f5BigIP:
    partition: "my-f5-admin-partition"

1.29 y versiones más bajas

Obligatorio si loadBalancer.kind = "F5BigIp"
Inmutable
Cadena

Es el nombre de una partición de BIG-IP que creaste para el clúster de administrador.

Ejemplo:

loadBalancer:
  f5BigIP:
    partition: "my-f5-admin-partition"

loadBalancer.f5BigIP.snatPoolName

1.30 y versiones más altas

No se permite para clústeres nuevos
Opcional
Pertinente si loadBalancer.kind = "F5BigIp"
Cadena
inmutable

Si usas SNAT, es el nombre del grupo de SNAT. Si no usas SNAT, quita este campo.

Ejemplo:

loadBalancer:
  f5BigIP:
    snatPoolName: "my-snat-pool"

1.29 y versiones más bajas

Opcional
Pertinente si loadBalancer.kind = "F5BigIp"
Cadena
Inmutable

Si usas SNAT, es el nombre del grupo de SNAT. Si no usas SNAT, quita este campo.

Ejemplo:

loadBalancer:
  f5BigIP:
    snatPoolName: "my-snat-pool"

loadBalancer.seesaw

No uses esta sección. El balanceador de cargas Seesaw no es compatible con los clústeres de administrador nuevos en la versión 1.28 y versiones posteriores. En su lugar, te recomendamos que configures el balanceador de cargas MetalLB para clústeres de administrador nuevos. Para obtener más información sobre la configuración de MetalLB, consulta Balanceo de cargas en paquetes con MetalLB.

Si bien aún admitimos Seesaw para los clústeres de administrador que no son de HA que se actualizaron, te recomendamos que migres a MetalLB.

antiAffinityGroups.enabled

Opcional
Mutable
Booleano
Prepropagado: verdadero

Configúralo como true para habilitar la creación de reglas de DRS. De lo contrario, configúralo como false.

Si este campo es true, Google Distributed Cloud crea reglas de antiafinidad de Programador de recursos distribuidos (DRS) de VMware para los nodos del clúster de administrador, lo que hace que se repartan en al menos tres hosts ESXi físicos del centro de datos.

Para esta función, se requiere que el entorno de vSphere cumpla con las siguientes condiciones:

  • DRS de VMware debe estar habilitado. Para DRS de VMware, se requiere la edición de licencia vSphere Enterprise Plus.

  • La cuenta de usuario de vSphere debe tener el privilegio Host.Inventory.Modify cluster.

  • Debe haber al menos cuatro hosts ESXi disponibles.

Aunque la regla requiere que los nodos del clúster se distribuyan en tres hosts ESXi, te recomendamos que tengas al menos cuatro hosts ESXi disponibles. Esto evita que pierdas el plano de control de tu clúster. Por ejemplo, supongamos que solo tienes tres hosts ESXi y el nodo del plano de control de tu clúster de administrador se encuentra en un host ESXi que falla. La regla de DRS evitará que el nodo del plano de control se coloque en uno de los dos hosts ESXi restantes.

Recuerda que si tienes una licencia de vSphere Standard, no puedes habilitar DRS de VMware.

Si no tienes DRS habilitado o no tienes al menos cuatro hosts en los que se puedan programar las VMs de vSphere, configura antiAffinityGroups.enabled como false.

Ten en cuenta la siguiente limitación con los clústeres avanzados:

  • Versión 1.31: Si el campo enableAdvancedCluster es true, no se admiten las reglas de anti-afinidad en los clústeres avanzados y debes establecer antiAffinityGroups.enabled en false.

  • Versión 1.32: Las reglas de anti-afinidad son compatibles con los clústeres avanzados.

Ejemplo:

antiAffinityGroups:
  enabled: true

adminMaster

Inmutable

Configuración de los nodos del plano de control en el clúster de administrador.

adminMaster.controlPlaneLoadBalancer

1.32 y versiones más altas

De manera opcional, incluye esta sección para especificar el tipo de balanceador de cargas que se usará para el tráfico del plano de control en el clúster de administrador. Incluye adminMaster.controlPlaneLoadBalancer.mode en tu archivo de configuración si deseas establecer de forma explícita el tipo de balanceador de cargas que se usará en lugar de depender del valor predeterminado. Además, debes establecer loadBalancer.kind en tu archivo de configuración, aunque el campo no realice ninguna operación en la versión 1.32 y versiones posteriores.

adminMaster.controlPlaneLoadBalancer.mode

Opcional
Inmutable
Cadena
Predeterminado: Depende de si el clúster usa dominios de topología

El tipo de balanceador de cargas que puedes usar depende de si configurarás el clúster para que use dominios de topología. Se supone que el clúster usa dominios de topología si se configura el campo infraConfigFilePath.

  • Con dominios de topología: Especifica "manual", que es el valor predeterminado. Debes configurar un balanceador de cargas de terceros (como F5 BIG-IP o Citrix) si deseas usar dominios de topología.

  • Sin dominios de topología: Especifica "manual" o "bundled". Usa "manual" si tienes un balanceador de cargas externo o "bundled" para nuestra solución en paquete, que usa keepalived + haproxy que se ejecutan en los tres nodos del plano de control del clúster de administrador. El valor predeterminado es "bundled"".

Ejemplo:

adminMaster:
  controlPlaneLoadBalancer:
    mode: "manual"

1.31 y versiones más bajas

Esta sección no está disponible. En su lugar, usa loadBalancer.kind para especificar el tipo de balanceador de cargas que usará el clúster de administrador.

adminMaster.cpus

Vista previa
Opcional
Inmutable
Número entero
Prepropagado: 4
Predeterminado: 4

Es la cantidad de CPU virtuales para cada nodo del plano de control en el clúster de administrador.

Ejemplo:

adminMaster:
  cpus: 4

adminMaster.memoryMB

Vista previa
Opcional
Inmutable
Número entero
Prepropagado: 16384
Predeterminado: 16384

Es la cantidad de mebibytes de memoria para cada nodo de plano de control en el clúster de administrador.

Ejemplo:

adminMaster:
  memoryMB: 16384

adminMaster.replicas

1.28 y versiones más altas

Obligatorio para clústeres nuevos
Inmutable
Número entero
Valores posibles: 3

La cantidad de nodos del plano de control en el clúster de administrador. En la versión 1.28 y versiones posteriores, los clústeres de administrador nuevos deben tener alta disponibilidad (HA). Establece este campo en 3 para crear un clúster de administrador de alta disponibilidad con 3 nodos del plano de control.

Ejemplo:

adminMaster:
  replicas: 3

1.16 y versiones más bajas

Opcional
Inmutable
Número entero
Valores posibles: 1 o 3
Prepropagado: 1
Valor predeterminado: 1

La cantidad de nodos del plano de control en el clúster de administrador. Establece este valor en 3 si deseas crear un clúster de administrador con alta disponibilidad. De lo contrario, configúralo como 1.

Si configuras este parámetro como 3, también debes completar las secciones network.controlPlaneIPBlock y network.hostConfig.

Si estableces este parámetro en 3, no podrás usar el balanceador de cargas de Seesaw.

Ejemplo:

adminMaster:
  replicas: 3

adminMaster.topologyDomains

1.32 y versiones más altas

Vista previa
Opcional
Es un array de cadenas que permite un elemento o tres elementos diferentes
Es inmutable
Valor predeterminado: vSphereInfraConfig.defaultTopologyDomain si se especifica en el archivo de configuración de la infraestructura de vSphere

Es un array de dominios de topología. Si se configuró infraConfigFilePath (lo que indica que el clúster usará dominios de topología), incluye este campo de forma opcional. La cantidad de dominios de topología en el array determina cómo se implementan los nodos del plano de control del clúster de administrador, de la siguiente manera:

  • Un elemento: Los tres nodos del plano de control del clúster de administrador se implementarán en el dominio de topología especificado.
  • Tres elementos: Cada nodo del plano de control del clúster de administrador se implementará en un dominio de topología diferente (es decir, un nodo por dominio de topología).

1.31 y versiones más altas

Solo está disponible para clústeres nuevos
Vista previa
Es un array de cadenas que solo permite un elemento
Opcional
Inmutable
Valor predeterminado: vSphereInfraConfig.defaultTopologyDomain si se especifica en el archivo de configuración de la infraestructura de vSphere

Es un array de dominios de topología. Si se configuró infraConfigFilePath (lo que indica que el clúster usará dominios de topología), incluye este campo de forma opcional. Los nodos del plano de control del clúster de administrador se implementarán en el dominio de topología especificado.

1.30 y versiones más bajas

No disponible.

addonNode.autoResize.enabled

1.28 y versiones más altas

No incluyas este parámetro de configuración en el archivo de configuración cuando crees un clúster nuevo. Los clústeres de administrador creados en la versión 1.28 y versiones posteriores deben tener alta disponibilidad (HA) con tres nodos del plano de control. En la versión 1.28 y versiones posteriores, los clústeres de administrador con HA no tienen nodos de complementos.

1.16 y versiones más bajas

Opcional
Mutable
Booleano
Prepropagado: falso
Predeterminado: falso

Configúralo como true para habilitar el cambio de tamaño automático de los nodos del complemento en el clúster de administrador. Otra configúralo como false.

Para actualizar el valor de este campo, usa gkectl update admin.

Ejemplo:

addonNode:
  autoResize:
    enabled: true

proxy

Si la red está detrás de un servidor proxy, completa esta sección. De lo contrario, quita esta sección o déjala como comentario. Los clústeres de usuario que administra este clúster de administrador usan el servidor proxy que especificas aquí.
Inmutable

proxy.url

Es obligatorio si se completa la sección proxy.
Cadena
Inmutable

La dirección HTTP del servidor proxy. Debes incluir el número de puerto incluso si es el mismo que el puerto predeterminado del esquema.

Ejemplo:

proxy:
  url: "http://my-proxy.example.local:80"

Los clústeres de Google Distributed Cloud usan el servidor proxy que especificas aquí. Además, la estación de trabajo de administrador está configurada de forma automática para usar este mismo servidor proxy, a menos que establezcas la variable de entorno HTTPS_PROXY en la estación de trabajo de administrador.

Si especificas proxy.url, también debes especificar proxy.noProxy.

Una vez definida la configuración del proxy para el clúster de administrador, no se podrá modificar ni borrar, a menos que se vuelva a compilar el clúster.

proxy.noProxy

Opcional
Cadena
Inmutable

Es una lista separada por comas de direcciones IP, rangos de direcciones IP, nombres de host y nombres de dominio que no deben pasar por el servidor proxy. Cuando Google Distributed Cloud envía una solicitud a una de estas direcciones, hosts o dominios, la solicitud se envía de manera directa.

Ejemplo:

proxy:
  noProxy: "10.151.222.0/24,my-host.example.local,10.151.2.1"

privateRegistry

Un registro de contenedor privado es un registro en el que el acceso a las imágenes de contenedor está restringido a los usuarios autenticados. Completa esta sección si tus clústeres de usuarios necesitan acceder a imágenes de cargas de trabajo. Cuando configures la sección privateRegistry, todos los clústeres de usuarios administrados por este clúster de administrador extraerán imágenes de cargas de trabajo del registro privado que configures aquí.

Si configuras la sección privateRegistry, cuando ejecutes gkectl prepare antes de la creación o actualización del clúster, gkectl enviará las imágenes del sistema de Google Distributed Cloud al registro privado. Durante la creación o actualización del clúster, las imágenes del sistema se extraen del registro privado. Si no configuras la sección privateRegistry, las imágenes del sistema se extraerán de gcr.io/gke-on-prem-release con la cuenta de servicio de acceso a componentes.

Te recomendamos configurar la sección privateRegistry para que los clústeres extraigan imágenes del sistema del registro privado en lugar de gcr.io/gke-on-prem-release en los siguientes casos:

  • Debes minimizar las conexiones a Google Cloud debido a preocupaciones de seguridad o requisitos reglamentarios.
  • Tu organización requiere que el tráfico saliente pase por un servidor proxy, y la velocidad de la red para conectarse a Google Cloud es lenta.

Si deseas usar Artifact Registry de Google como registro privado, consulta Usa Artifact Registry como registro privado para imágenes de cargas de trabajo para conocer los pasos de configuración.

privateRegistry.address

Obligatorio para el registro privado
Cadena
Inmutable

La dirección IP o FQDN (nombre de dominio completamente calificado) de la máquina que ejecuta tu registro privado.

Ejemplos:

privateRegistry:
  address: "203.0.113.10"
privateRegistry:
  address: "fqdn.example.com"

privateRegistry.credentials.fileRef.path

Obligatorio para el registro privado
Cadena
Mutable

Es la ruta de acceso de un archivo de configuración de credenciales que contiene el nombre de usuario y la contraseña de una cuenta que Google Distributed Cloud puede usar para acceder a tu registro privado.

Ejemplo:

privateRegistry:
  credentials:
    fileRef:
      path: "my-config-folder/admin-creds.yaml"

privateRegistry.credentials.fileRef.entry

Obligatorio para el registro privado
Cadena
Mutable

Es el nombre del bloque de credenciales del archivo de configuración de credenciales que contiene el nombre de usuario y la contraseña de la cuenta de tu registro privado.

privateRegistry:
  credentials:
    fileRef:
      entry: "private-registry-creds"

privateRegistry.caCertPath

Obligatorio para el registro privado
Cadena
Mutable

Cuando el entorno de ejecución del contenedor extrae una imagen de tu registro privado, el registro debe demostrar su identidad con la presentación de un certificado. El certificado del registro está firmado por una autoridad certificadora (AC). El entorno de ejecución del contenedor usa el certificado de la AC para validar el certificado del registro.

Establece el campo en la ruta de acceso del certificado de la CA.

Ejemplo:

privateRegistry:
  caCertPath: "my-cert-folder/registry-ca.crt"

componentAccessServiceAccountKeyPath

Obligatorio
Cadena
Mutable

Es la ruta de acceso del archivo de claves JSON para la cuenta de servicio de acceso a los componentes.

Ejemplo:

componentAccessServiceAccountKeyPath: "my-key-folder/access-key.json"

gkeConnect

Obligatorio
Mutable

Si completas la sección gkeConnect, el clúster de administrador se registra de forma automática en una flota después de su creación. En esta sección, se incluye información sobre el proyecto y la cuenta de servicio de Google Cloud necesarios para registrar el clúster.

Durante la creación o actualización del clúster, se configuran varias políticas de RBAC en el clúster de administrador. Estas políticas de RBAC son necesarias para que puedas crear clústeres de usuarios en la consola de Google Cloud .

gkeConnect.projectID

Obligatorio
Cadena
Inmutable

El ID del proyecto host de tu flota. En el caso de los clústeres nuevos, este ID de proyecto debe ser el mismo que el ID establecido en stackdriver.projectID y cloudAuditLogging.projectID. Si los IDs de proyecto no son los mismos, la creación del clúster fallará. Este requisito no se aplica a los clústeres existentes.

Ejemplo:

gkeConnect:
  projectID: "my-fleet-host-project"

gkeConnect.location

Opcional
Cadena
Inmutable
Predeterminado: global

El servicio de la flota (gkehub.googleapis.com) y el servicio de Connect (gkeconnect.googleapis.com) administran la membresía de la flota de cada clúster. La ubicación de los servicios puede ser global o regional. En la versión 1.28 y versiones posteriores, puedes especificar de manera opcional la región de Google Cloud en la que se ejecutan los servicios de Fleet y Connect. Si no se especifica, se usan las instancias globales de los servicios. Ten en cuenta lo siguiente:

  • Los clústeres de administrador creados antes de la versión 1.28 son administrados por los servicios globales de la flota y de Connect.

  • En el caso de los clústeres nuevos, si incluyes este campo, la región que especifiques debe ser la misma que la región configurada en cloudAuditLogging.clusterLocation, stackdriver.clusterLocation y gkeOnPremAPI.location. Si las regiones no son las mismas, la creación del clúster fallará.

Ejemplo:

gkeConnect:
  location: "us-central1"

gkeConnect.registerServiceAccountKeyPath

Obligatorio
Cadena
Mutable

Es la ruta del archivo de claves JSON para tu cuenta de servicio de registro de conexión.

Ejemplo:

gkeConnect:
  registerServiceAccountKeyPath: "my-key-folder/connect-register-key.json"

gkeOnPremAPI

Opcional

En la versión 1.16 y versiones posteriores, si la API de GKE On-Prem está habilitada en tu proyecto deGoogle Cloud , todos los clústeres del proyecto se inscriben en la API de GKE On-Prem automáticamente en la región configurada en stackdriver.clusterLocation.

  • Si deseas inscribir todos los clústeres del proyecto en la API de GKE On-Prem, asegúrate de seguir los pasos que se indican en Antes de comenzar para activar y usar la API de GKE On-Prem en el proyecto.

  • Si no deseas inscribir el clúster en la API de GKE On-Prem, incluye esta sección y configura gkeOnPremAPI.enabled como false. Si no deseas inscribir ningún clúster en el proyecto, inhabilita gkeonprem.googleapis.com (el nombre del servicio para la API de GKE On-Prem) en el proyecto. Para obtener instrucciones, consulta Inhabilita servicios.

Inscribir tu clúster de administrador en la API de GKE On-Prem te permite usar herramientas estándares (la consola de Google Cloud , Google Cloud CLI o Terraform) para actualizar los clústeres de usuario que administra el clúster de administrador. Inscribir el clúster también te permite ejecutar comandos gcloud para obtener información acerca del clúster.

Después de agregar esta sección y crear o actualizar el clúster de administrador, si luego quitas la sección y actualizas el clúster, la actualización fallará.

gkeOnPremAPI.enabled

Obligatorio si se incluye la sección gkeOnPremAPI.
Mutable
Booleano
Predeterminado: true

De forma predeterminada, el clúster se inscribe en la API de GKE On-Prem si esta API está habilitada en tu proyecto. Establece false si no deseas inscribir el clúster.

Después de que el clúster se inscriba en la API de GKE On-Prem, si necesitas dar de baja el clúster, haz el siguiente cambio y, luego, actualízalo:

gkeOnPremAPI:
  enabled: false

gkeOnPremAPI.location

Cadena
Inmutable
Predeterminado:stackdriver.clusterLocation

La región Google Cloud en la que se ejecuta la API de GKE On-Prem y en la que se almacenan los metadatos del clúster. Elige una de las regiones admitidas. Debes usar la misma región que se configuró en cloudAuditLogging.clusterLocation, gkeConnect.location y stackdriver.clusterLocation. Si gkeOnPremAPI.enabled es false, no incluyas este campo.

stackdriver

Obligatorio de forma predeterminada
Mutable

Si deseas habilitar Cloud Logging y Cloud Monitoring para tu clúster, completa esta sección. De lo contrario, quita esta sección.

Esta sección es obligatoria de forma predeterminada. Es decir, si no incluyes esta sección, debes incluir la marca --skip-validation-stackdriver cuando ejecutes gkectl create admin.

Esta sección es obligatoria en el clúster de administrador si deseas administrar el ciclo de vida de los clústeres de usuario con clientes de la API de GKE On-Prem.

stackdriver.projectID

Obligatorio para Logging y Monitoring
Cadena
Inmutable

El ID del proyecto host de tu flota. En el caso de los clústeres nuevos, este ID de proyecto debe ser el mismo que el ID establecido en gkeConnect.projectID y cloudAuditLogging.projectID. Si los IDs de proyecto no son los mismos, la creación del clúster fallará. Este requisito no se aplica a los clústeres existentes.

Si es necesario, puedes configurar un router de registros en este proyecto para enrutar los registros a buckets de registros en otro proyecto. Para obtener información sobre cómo configurar el router de registros, consulta Destinos compatibles.

Ejemplo:

stackdriver:
  projectID: "my-fleet-host-project"

stackdriver.clusterLocation

Obligatorio para Logging y Monitoring
Inmutable
Cadena
Prepropagado: “us-central1”

Es la región Google Cloud en la que deseas enrutar y almacenar las métricas de Cloud Monitoring. Te recomendamos que elijas una región cercana a tu centro de datos local.

En la configuración del Router de registros, especificas la ubicación de almacenamiento y el enrutamiento de los registros de Cloud Logging. Para obtener más información sobre el enrutamiento de registros, consulta Descripción general del enrutamiento y el almacenamiento.

El operador de Stackdriver (stackdriver-operator) adjunta el valor de este campo a cada entrada de registro y métrica antes de que se enruten a Google Cloud. Estas etiquetas adjuntas pueden ser útiles para filtrar tus registros y métricas en el Explorador de registros y el Explorador de métricas, respectivamente.

En el caso de los clústeres nuevos, si incluyes las secciones gkeOnPremAPI y cloudAuditLogging en el archivo de configuración, la región que establezcas aquí debe ser la misma que establezcas en cloudAuditLogging.clusterLocation, gkeConnect.location y gkeOnPremAPI.location. Si las regiones no son las mismas, la creación del clúster fallará.

Ejemplo:

stackdriver:
  clusterLocation: "us-central1"

stackdriver.enableVPC

Opcional
Inmutable
Booleano
Prepropagado: falso

Si la red del clúster está controlada por una VPC, establece este campo en true. Esto garantiza que toda la telemetría fluya a través de las direcciones IP restringidas de Google. De lo contrario, configúralo como false.

Ejemplo:

stackdriver:
  enableVPC: false

stackdriver.serviceAccountKeyPath

Obligatorio para Logging y Monitoring
Mutable
Cadena

Es la ruta del archivo de claves JSON para la cuenta de servicio de supervisión y registro.

Si vas a crear el clúster con enableAdvancedCluster establecido en true (lo que se requiere para configurar dominios de topología), stackdriver.serviceAccountKeyPath debe ser igual a cloudAuditLogging.serviceAccountKeyPath.

Si deseas obtener información para actualizar este campo en un clúster existente, consulta Rota claves de cuenta de servicio.

Ejemplo:

stackdriver:
  serviceAccountKeyPath: "my-key-folder/log-mon-key.json"

stackdriver.disableVsphereResourceMetrics

Opcional
Mutable
Pertinente para Logging y Monitoring
Booleano
Prepropagado: falso
Predeterminado: falso

Configúralo como true para inhabilitar la recopilación de métricas de vSphere. De lo contrario, configúralo como false.

Esta sección es obligatoria en el clúster de administrador si deseas administrar el ciclo de vida de los clústeres de usuario en la Google Cloud consola.

Ejemplo:

stackdriver:
  disableVsphereResourceMetrics: true

cloudAuditLogging

Si deseas integrar los registros de auditoría del servidor de la API de Kubernetes del clúster a los registros de auditoría de Cloud, completa esta sección. De lo contrario, quita esta sección o déjala como comentario.
Mutable

Esta sección es obligatoria en el clúster de administrador si deseas administrar el ciclo de vida de los clústeres de usuario con clientes de la API de GKE On-Prem.

cloudAuditLogging.projectID

Obligatorio para los registros de auditoría de Cloud
Cadena
Inmutable

El ID del proyecto host de tu flota. En el caso de los clústeres nuevos, este ID de proyecto debe ser el mismo que el ID establecido en gkeConnect.projecID y stackdriver.projectID. Si los IDs de proyecto no son los mismos, la creación del clúster fallará. Este requisito no se aplica a los clústeres existentes.

Si es necesario, puedes configurar un router de registros en este proyecto para enrutar los registros a buckets de registros en otro proyecto. Para obtener información sobre cómo configurar el router de registros, consulta Destinos compatibles.

Ejemplo:

cloudAuditLogging:
  projectID: "my-fleet-host-project"

cloudAuditLogging.clusterLocation

Obligatorio para los registros de auditoría de Cloud
Cadena
Inmutable

Región Google Cloud en la que deseas almacenar los registros de auditoría. Te recomendamos que elijas una región cercana a tu centro de datos local.

En el caso de los clústeres nuevos, si incluyes las secciones gkeOnPremAPI y stackdriver en el archivo de configuración, la región que establezcas aquí debe ser la misma que establezcas en gkeConnect.location, gkeOnPremAPI.location y stackdriver.clusterLocation. Si las regiones no son las mismas, la creación del clúster fallará.

Ejemplo:

cloudAuditLogging:
  clusterLocation: "us-central1"

cloudAuditLogging.serviceAccountKeyPath

Obligatorio para los registros de auditoría de Cloud
Mutable
Cadena

Es la ruta de acceso del archivo de claves JSON para la cuenta de servicio de registro y auditoría.

Si vas a crear el clúster con enableAdvancedCluster establecido en true (lo que se requiere para configurar dominios de topología), cloudAuditLogging.serviceAccountKeyPath debe ser igual a stackdriver.serviceAccountKeyPath.

Si deseas obtener información para actualizar este campo en un clúster existente, consulta Rota claves de cuenta de servicio.

Ejemplo:

cloudAuditLogging:
  serviceAccountKeyPath: "my-key-folder/audit-log-key.json"

clusterBackup.datastore

Opcional
Mutable
Cadena

De forma predeterminada, los archivos tar de copia de seguridad del clúster se guardan en el directorio gkectl-workspace/backups de tu estación de trabajo de administrador. Si deseas almacenar archivos de copia de seguridad del clúster en vSphere, configura este campo en el almacén de datos de vSphere en el que deseas guardar las copias de seguridad.

Ejemplo:

clusterBackup:
  datastore: "my-datastore"

Ten en cuenta las siguientes diferencias de compatibilidad para este campo:

  • Para clústeres avanzados:

    • Versión 1.31: Quita clusterBackup.datastore de tu archivo de configuración. No se admite la creación de copias de seguridad de clústeres en un almacén de datos de vSphere.

    • Versión 1.32: clusterBackup.datastore está en versión preliminar

    • Versión 1.33 y versiones posteriores: clusterBackup.datastore es GA.

  • En el caso de los clústeres que no son avanzados, clusterBackup.datastore permanece en versión preliminar.

Para obtener más información, consulta lo siguiente:

autoRepair.enabled

Opcional
Mutable
Booleano
Prepropagado: verdadero

Configúralo como true para habilitar la reparación automática de nodos. De lo contrario, configúralo como false.

Para actualizar el valor de este campo, usa gkectl update admin.

Ejemplo:

autoRepair:
  enabled: true

secretsEncryption

Si deseas encriptar Secretos sin la necesidad de tener un KMS externo (servicio de administración de claves) o cualquier otra dependencia, completa esta sección. De lo contrario, quita esta sección o déjala como comentario.
Inmutable

Si crearás el clúster con enableAdvancedCluster establecido en true (lo que se requiere para configurar dominios de topología), quita esta sección. Esta función no es compatible con los clústeres avanzados.

secretsEncryption.mode

Obligatorio para la encriptación de Secrets
Cadena
Mutable
Valor posible: “GeneratedKey”
Prepropagado: “GeneratedKey”

El modo de encriptación de Secret.

secretsEncryption:
  mode: "GeneratedKey"

secretsEncryption.generatedKey.keyVersion

Obligatorio para la encriptación de Secrets
Mutable
Número entero
Prepropagado: 1

Un número entero que elijas para el número de versión de la clave. Te recomendamos que comiences con 1.

Ejemplo:

secretsEncryption:
  generatedKey:
    keyVersion: 1

secretsEncryption.generatedKey.disabled

Opcional para la encriptación de Secrets
Mutable
Booleano
Prepropagado: falso

Configúralo como true para inhabilitar la encriptación de Secrets. De lo contrario, configúralo como false.

Ejemplo:

secretsEncryption:
  generatedKey:
    disabled: false

osImageType

Opcional
Cadena
Mutable
Valores posibles: “ubuntu_containerd”, “cos”, “ubuntu_cgv2” y “cos_cgv2”
Prepropagado: “ubuntu_cgv2”
Configuración predeterminada: “ubuntu_containerd”

El tipo de imagen de SO que se ejecutará en los nodos del clúster de administrador.

Ten en cuenta la siguiente limitación con los clústeres avanzados:

  • Versión 1.31: Si el campo enableAdvancedCluster es true, solo se admiten ubuntu-cgroupv2 y ubuntu_containerd en los clústeres avanzados.

  • Versión 1.32: Todos los tipos de imagen de SO son compatibles con los clústeres avanzados.

Ejemplo:

osImageType: "cos"