Archivo de configuración del clúster de administrador 1.29

En este documento, se describen los campos del archivo de configuración del clúster de administrador para la versión 1.29 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 OUTPUT_FILENAME por la 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.

Reemplaza VERSION por la versión completa de una versión de parche 1.29. Por ejemplo: gkectl create-config admin --gke-on-prem-version=1.29.100-gke.248 Esta versión debe ser igual o anterior a tu versión de gkectl. Si omites esta marca, la plantilla de configuración generada se propaga con valores basados en el último parche 1.29.

Plantilla

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.

name

Opcional
String
Predeterminado: Un nombre aleatorio con prefijo “gke-admin-”

El nombre que elijas para el clúster.

Ejemplo:

name: "my-admin-cluster"

bundlePath

Obligatorio
Mutable
String

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

El archivo de 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

Vista previa
Opcional
Inmutable
Booleano
Prepropagado: falso
Predeterminado: falso

Configúralo en true si deseas usar credenciales preparadas en el clúster de administrador. De lo contrario, configúralo como false.

Ejemplo:

preparedSecrets:
  enabled: true

vCenter

Obligatorio
Inmutable

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

vCenter.address

Obligatorio
Inmutable
String

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
Inmutable
String

La ruta relativa de un centro de datos de vSphere.

El valor que especificas está relacionado con 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
Inmutable
String

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

El valor que especificas está relacionado con /.../DATA_CENTER/vm/.

Si el clúster de vSphere está 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
Inmutable
String

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

Si deseas usar el grupo de recursos predeterminado, establece esto en VSPHERE_CLUSTER/Resources.

Ejemplo:

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

Si deseas usar un grupo de recursos que ya creaste, establece la ruta de acceso relativa de tu grupo de recursos.

El valor que especificas está relacionado con /.../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
Inmutable
String

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

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

Ejemplo:

vCenter:
  datastore: "my-datastore"

Si especificas un valor en este campo, no especifiques un valor para vCenter.storagePolicyName.

vCenter.storagePolicyName

Opcional
string

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.

Si especificas un valor en este campo, no especifiques un valor para vCenter.datastore.

vCenter.caCertPath

Obligatorio
Mutable
String

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
Inmutable
String
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 del clúster de administrador.

Si no especificas un valor, las VM del 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 déjalo en el comentario.

network

Obligatorio
Inmutable

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

network.hostConfig

Obligatorio
Inmutable

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.

network.hostConfig.dnsServers

Obligatorio si se completó 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

Obligatorio si se completó 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

Obligatorio
Inmutable
String
Prepropagado: “estático”
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".

Ejemplo:

network:
  ipMode:
    type: "static"

network.ipMode.ipBlockFilePath

Obligatorio si network.ipMode.type = static
Inmutable
String

La ruta de acceso del archivo de bloque de IP de tu clúster.

Ejemplo:

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

network.serviceCIDR

Obligatorio
Inmutable
String
El menor rango posible: /24
El rango más grande posible: /12
Prepropagado: "10.96.232.0/24"
Valor predeterminado: "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
Inmutable
String
El menor rango posible: /18
El rango más grande posible: /8
Prepropagado: "192.168.0.0/16"
Valor predeterminado: "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 tu 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

Obligatorio
Inmutable
String

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

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

Requeridos

network.controlPlaneIPBlock.netmask

Obligatorio
Inmutable
String

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

Ejemplo:

network:
  controlPlaneIPBlock:
    netmask: "255.255.255.0"

network.controlPlaneIPBlock.gateway

Obligatorio
Inmutable
String

La dirección IP de la puerta de enlace predeterminada para los nodos del plano de control.

Ejemplo:

network:
  controlPlaneIPBlock:
    gateway: "172.16.22.1"

network.controlPlaneIPBlock.ips

Obligatorio
Inmutable
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 los 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"

loadBalancer

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

loadBalancer.vips.controlPlaneVIP

Obligatorio
Inmutable
String

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

Obligatorio
Inmutable
String
Prepropagado: “MetalLB”

String. Establece 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 integrada.

Ejemplo:

loadBalancer:
  kind: "MetalLB"

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

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

Si deseas habilitar funciones nuevas y avanzadas, te recomendamos que configures el balanceo de cargas manual para el balanceador de cargas BIG-IP de F5. Para habilitar el balanceo de cargas manual, establece loadbalancer.kind en "ManualLB" y completa la sección loadBalancer.manualLB. Para obtener más información, consulta Habilita el modo de balanceo de cargas manual.

Si tienes un balanceador de cargas 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 superior, te recomendamos que migres al balanceo de cargas manual.

loadBalancer.f5BigIP.address

Obligatorio si loadBalancer.kind = "f5BigIp"
Inmutable
String

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

Obligatorio si loadBalancer.kind = "f5BigIp"
Mutable
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 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 del usuario con los 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

Obligatorio si loadBalancer.kind = "f5BigIp"
Mutable
String

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

Obligatorio si loadBalancer.kind = "f5BigIp"
Inmutable
String

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

Opcional
Relevante si loadBalancer.kind = "f5BigIp"
Inmutable
String

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 de Seesaw no es compatible con los clústeres de administrador nuevos de la versión 1.28 y posteriores. En su lugar, te recomendamos que configures el balanceador de cargas de MetalLB para los clústeres de administrador nuevos. Para obtener más información sobre la configuración de MetalLB, consulta Balanceo de cargas empaquetado con MetalLB.

Aunque seguimos compatibles con Seesaw para los clústeres de administrador sin alta disponibilidad 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.

Ejemplo:

antiAffinityGroups:
  enabled: true

Si este campo es true, Google Distributed Cloud crea reglas de antiafinidad de Distributed Resource Scheduler (DRS) de VMware para los nodos del clúster de administrador, lo que hace que se distribuyan en al menos tres hosts ESXi físicos de tu 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.

  • Tu cuenta de usuario de vSphere tiene el privilegio Host.Inventory.Modify cluster.

  • Hay al menos cuatro hosts ESXi disponibles.

Aunque la regla requiere que los nodos del clúster estén distribuidos en tres hosts ESXi, te recomendamos que tengas al menos cuatro hosts ESXi disponibles. Esto te protege de perder el plano de control del clúster de administrador. Por ejemplo, supongamos que solo tienes tres hosts ESXi y que el nodo del plano de control del clúster de administrador se encuentra en un host de ESXi con errores. 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 VM de vSphere, configura antiAffinityGroups.enabled como false.

adminMaster

Inmutable

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

adminMaster.cpus

Vista previa
Opcional
Inmutable
Número entero
Prepropagado: 4
Valor 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
Valor predeterminado: 16384

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

Ejemplo:

adminMaster:
  memoryMB: 16384

adminMaster.replicas

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

La cantidad de nodos del plano de control en el clúster de administrador. Cuando crees un clúster de administrador nuevo, establece este campo en 3 para crear un clúster de administrador de alta disponibilidad (HA).

Ejemplo:

adminMaster:
  replicas: 3

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. El servidor proxy que especifiques aquí es utilizado por los clústeres de usuario que administra este clúster de administrador.
Inmutable

proxy.url

Obligatorio si se completó 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 usarán el servidor proxy que especifiques 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
Inmutable
String

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 directamente.

Ejemplo:

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

privateRegistry

Si tienes un registro de contenedores privado, completa esta sección. De lo contrario, quita esta sección o déjala como comentario.

privateRegistry.address

Obligatorio para el registro privado
Inmutable
String

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
Mutable
String

Es la ruta 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
Mutable
String

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

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

privateRegistry.caCertPath

Obligatorio para el registro privado
Mutable
String

Cuando el entorno de ejecución del contenedor extrae una imagen de tu registro privado, el registro debe demostrar su identidad mediante 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
Mutable
String

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

Cuando 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
Inmutable
String

El ID del proyecto host de tu flota. Para los clústeres nuevos, este ID del proyecto debe ser el mismo que el ID configurado en stackdriver.projectID y cloudAuditLogging.projectID. Si los IDs del 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
Inmutable
String
Predeterminado: global

El servicio de 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 posteriores, tienes la opción de especificar la región de Google Cloud en la que se ejecutan la flota y los servicios de Connect. Si no se especifica, se usan las instancias globales de los servicios. Ten en cuenta lo siguiente:

  • Los servicios globales de Fleet y Connect administran los clústeres de administrador creados antes de la versión 1.28.

  • Para 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
Mutable
String

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 posteriores, si la API de GKE On-Prem está habilitada en tu proyecto de Google Cloud, todos los clústeres del proyecto se inscriben en la API de GKE On-Prem de forma automática 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 los servicios.

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

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

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

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

Después de inscribir el clúster en la API de GKE On-Prem, si necesitas dar de baja el clúster, realiza el siguiente cambio y, luego, actualiza el clúster:

gkeOnPremAPI:
  enabled: false

gkeOnPremAPI.location

Inmutable
String
Predeterminado:stackdriver.clusterLocation

La región de Google Cloud en la que la API de GKE On-Prem ejecuta y almacena los metadatos del clúster. Elige una de las regiones compatibles. Debes usar la misma región que está configurada 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 quieres administrar el ciclo de vida de los clústeres de usuarios que usan clientes de la API de GKE On-Prem.

stackdriver.projectID

Obligatorio para Logging y Monitoring
Inmutable
String

El ID del proyecto host de tu flota. Para los clústeres nuevos, este ID del proyecto debe ser el mismo que el ID configurado en gkeConnect.projectID y cloudAuditLogging.projectID. Si los IDs del 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 enrutador de registros en este proyecto para enrutarlos a buckets de registros en otro proyecto. Para obtener información sobre cómo configurar el enrutador de registros, consulta Destinos compatibles.

Ejemplo:

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

stackdriver.clusterLocation

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

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

Para 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 configuraste 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
String

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

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
Relevante para Logging y Monitoring
Booleano
Prepropagado: false
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 consola de Google Cloud.

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 quieres administrar el ciclo de vida de los clústeres de usuarios que usan clientes de la API de GKE On-Prem.

cloudAuditLogging.projectID

Obligatorio para los Registros de auditoría de Cloud
Inmutable
String

El ID de tu proyecto host de flota. Para los clústeres nuevos, este ID del proyecto debe ser el mismo que el ID configurado en gkeConnect.projecID y stackdriver.projectID. Si los IDs del 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 enrutador de registros en este proyecto para enrutarlos a buckets de registros en otro proyecto. Para obtener información sobre cómo configurar el enrutador de registros, consulta Destinos compatibles.

Ejemplo:

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

cloudAuditLogging.clusterLocation

Obligatorio para los Registros de auditoría de Cloud
Inmutable
String

Es la región de 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.

Para 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 configuraste 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
String

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

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

Vista previa
Opcional
Mutable
String

Si deseas habilitar la copia de seguridad del clúster de administrador, configura esto en el almacén de datos de vSphere en el que deseas guardar las copias de seguridad del clúster.

Ejemplo:

clusterBackup:
  datastore: "my-datastore"

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

secretsEncryption.mode

Obligatorio para la encriptación de secretos
Inmutable
String
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 secretos
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
Mutable
String
Valores posibles: “ubuntu_containerd”, “cos”, “ubuntu_cgv2”, “cos_cgv2”
Prepropagado: “ubuntu_cgv2”
Valor predeterminado: “ubuntu_containerd”

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

Si especificas ubuntu_cgv2 o cos_cgv2, debes ejecutar gkectl prepare --extra-os-image-types=cgroupv2 antes de crear o actualizar el clúster.

Ejemplo:

osImageType: "cos"