Versión 1.9. Esta versión es compatible como se describe en la política de asistencia de la versión de Anthos, que ofrece los últimos parches y actualizaciones de vulnerabilidades de seguridad, exposiciones y problemas que afectan a los clústeres de Anthos alojados en VMware (GKE On-Prem). Consulta las notas de la versión para obtener más detalles. Esta es la versión más reciente.

Archivo de configuración de clústeres de usuarios

En esta página, se describen los campos del archivo de configuración del clúster de usuario de clústeres de Anthos alojados en VMware (GKE On-Prem).

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 de clústeres de usuarios. Además, gkeadm completó algunos de los campos por ti.

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

Si deseas generar una plantilla para el archivo de configuración de clústeres de usuarios, haz lo siguiente:

gkectl create-config cluster --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 user-cluster.yaml y lo coloca en el directorio actual.

VERSION: El número de versión deseado. Por ejemplo: gkectl create-config cluster --gke-on-prem-version=1.9.0-gke.8

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

String. El nombre que elijas para el clúster de usuario. Por ejemplo:

name: "my-user-cluster"

gkeOnPremVersion

String. La versión de clústeres de Anthos alojados en VMware de tu clúster de usuario. Por ejemplo:

gkeOnPremVersion: "1.9.0-gke.1"

vCenter

Si deseas que todos los aspectos de tu entorno de vCenter sean los mismos que especificaste para tu clúster de administrador, quita esta sección o déjala comentada.

Si deseas que algunos aspectos de tu entorno de vCenter sean diferentes de los que especificaste para tu clúster de administrador, completa los campos relevantes en esta sección. Cualquier campo que configures aquí en la sección vCenter anula los campos correspondientes en tu archivo de configuración del clúster de administrador.

vCenter.datacenter

String. Es el nombre del centro de datos de vCenter para el clúster de usuario. Si no se especifica, el clúster se crea en el centro de datos del clúster de administrador.

Por ejemplo:

vCenter:
  datascenter: "MY-USER-DATACENTER"

Si se especifica, también debes incluir los campos vCenter.datastore y vCenter.networkName, y debes especificar vCenter.cluster o vCenter.resourcePool. Consulta Crea un clúster de usuario en un centro de datos independiente.

vCenter.resourcePool

String. Es el nombre del grupo de recursos de vCenter para tu clúster de usuario. Si usas un grupo de recursos no predeterminado, proporciona el nombre de tu grupo de recursos de vCenter. Por ejemplo:

vCenter:
  resourcePool: "MY-USER-POOL"

Si usas el grupo de recursos predeterminado, proporciona el siguiente valor:

vCenter:
  resourcePool: "VCENTER_CLUSTER/Resources"

Reemplaza VCENTER_CLUSTER por el nombre del clúster de vCenter.

Consulta Specifying the root resource pool for a standalone host (Especifica el grupo de recursos raíz de un host independiente).

Si no se especifica, y si especificaste vCenter.datacenter, debes proporcionar un valor para vCenter.cluster.

vCenter.datastore

String. Es el nombre del almacén de datos de vCenter para tu clúster de usuario. Por ejemplo:

vCenter:
  datastore: "MY-USER-DATASTORE"

vCenter.cluster

String. Es el nombre del clúster en vCenter.

Por ejemplo:

vCenter:
  cluster: USER_CLUSTER

Si no se especifica vCenter.cluster, debes especificar un valor para vCenter.resourcePool.

vCenter.folder

String. Es el nombre de la carpeta en el vCenter.datacenter.

Por ejemplo:

vCenter:
  folder: USER_FOLDER

vCenter.caCertPath

String. Cuando un cliente, como GKE On-Prem, envía una solicitud a vCenter Server, el servidor debe demostrar su identidad al cliente mediante la presentación de un certificado o un paquete de certificados. Para verificar el certificado o el paquete, GKE On-Prem debe tener el certificado raíz en la cadena de confianza.

Establece vCenter.caCertPath en la ruta de acceso del certificado raíz. Por ejemplo:

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

Tu instalación de VMware tiene una autoridad certificada (CA) que emite un certificado para vCenter Server. El certificado raíz de la cadena de confianza es un certificado autofirmado que crea VMware.

Si no deseas usar la CA de VMware, que es la opción predeterminada, puedes configurar VMware para usar una autoridad certificada diferente.

Si vCenter Server usa un certificado que emitió la CA predeterminada de VMware, descarga el certificado de la siguiente manera:

curl -k "https://SERVER_ADDRESS/certs/download.zip" > download.zip

Reemplaza SERVER_ADDRESS por la dirección de tu servidor de vCenter.

Instala el comando unzip y descomprime el archivo del certificado:

sudo apt-get install unzip
unzip downloads.zip

Si el comando unzip no funciona la primera vez, vuelve a ingresarlo.

Busca el archivo de certificado en certs/lin.

Si tu certificado cambia, puedes actualizar la referencia al certificado nuevo.

vCenter.credentials.fileRef.path

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 tu cuenta de usuario de vCenter. La cuenta de usuario debe tener la función de administrador o privilegios equivalentes. Consulta los requisitos de vSphere. Por ejemplo:

vCenter:
  credentials:
    fileRef:
      path: "my-config-directory/user-creds.yaml"

vCenter.credentials.fileRef.entry

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. Por ejemplo:

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

vCenter.folder

String. Es el nombre de la carpeta de vCenter en la que se ubicarán las VM del clúster. Por ejemplo:

vCenter:
  folder: "MY-FOLDER"

network

Esta sección contiene información sobre tu red de clústeres de usuarios.

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 usa tu clúster.

Si proporcionaste un valor para uno o ambos de los siguientes campos, completa esta sección. De lo contrario, quita esta sección.

  • loadBalancer.seesaw.ipBlockFilePath
  • network.ipMode.ipBlockFilePath

network.hostConfig.dnsServers

Arreglo de strings. Son las direcciones de los servidores DNS para los hosts. Por ejemplo:

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

network.hostConfig.ntpServers

Arreglo de strings. Son las direcciones de los servidores de tiempo para los hosts. Por ejemplo:

network:
  hostConfig:
    ntpServers:
    - "216.239.35.0"

network.hostConfig.searchDomainsForDNS

Arreglo de strings. Son dominios de búsqueda de DNS para los hosts. Estos dominios se usan como parte de una lista de búsqueda de dominios. Por ejemplo:

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

network.ipMode.type

String. Si deseas que los nodos del clúster obtengan su 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". Por ejemplo:

network:
  ipMode:
    type: "static"

network.ipMode.ipBlockFilePath

Si estableces ipMode.type como "static", completa este campo. Si configuras ipMode.type como "dhcp", quita este campo.

String. La ruta de acceso del archivo de bloque de IP de tu clúster. Por ejemplo:

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

network.serviceCIDR y network.podCIDR

Strings. El clúster de usuarios debe tener un rango de direcciones IP a fin de usar con los servicios y un rango de direcciones IP para usar con los Pods. Estos rangos se especifican en los campos network.serviceCIDR y network.podCIDR. Estos campos se propagan con valores predeterminados. Si quieres, puedes cambiar los valores propagados por los valores que desees.

Los rangos de Services y Pods no deben superponerse. Tampoco deben superponerse en ningún clúster con las direcciones IP que se usan para los nodos.

Ejemplo:

network:
  serviceCIDR: "10.96.232.0/24"
  podCIDR: "192.168.0.0/16"

network.vCenter.networkName

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

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, se puede especificar una ruta de acceso a la red, como /DATACENTER/network/NETWORK_NAME.

Por ejemplo:

network:
  vCenter:
    networkName: "MY-USER-CLUSTER-NETWORK"

loadBalancer

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

loadBalancer.vips.controlPlaneVIP

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. Por ejemplo:

loadBalancer:
  vips:
    controlplaneVIP: "203.0.113.3"

loadBalancer.vips.ingressVIP

La dirección IP que elegiste configurar en el balanceador de cargas para el tráfico de entrada. Por ejemplo:

loadBalancer:
  vips:
    ingressVIP: "203.0.113.4"

loadBalancer.kind

String. Configura esto como "Seesaw", "F5BigIP" o "ManualLB". Por ejemplo:

loadBalancer:
  kind: "Seesaw"

loadBalancer.manualLB

Si configuras loadbalancer.kind como "manualLB", completa esta sección. De lo contrario, quita esta sección o déjala como comentario.

loadBalancer.manualLB.ingressHTTPNodePort

Número entero. El servicio de entrada en un clúster de usuarios se implementa como Servicios de Kubernetes de tipo LoadBalancer. El servicio tiene un ServicePort para HTTP. Debes elegir un valor nodePort para los ServicePort de HTTP.

Establece este campo en el valor nodePort. Por ejemplo:

loadBalancer:
  manualLB:
    ingressHTTPNodePort: 32527

loadBalancer.manualLB.ingressHTTPSNodePort

Número entero. El servicio de entrada en un clúster de usuario se implementa como un servicio de tipo LoadBalancer. El Servicio tiene un ServicePort para HTTPS. Debes elegir un valor nodePort para el ServicePort de HTTPS.

Establece este campo en el valor nodePort. Por ejemplo:

loadBalancer:
  manualLB:
    ingressHTTPSNodePort: 30139

loadBalancer.manualLB.controlPlaneNodePort

Número entero. El servidor de la API de Kubernetes en el clúster de administrador se implementa como un Service de tipo NodePort. Debes elegir un valor nodePort para el Service.

Establece este campo en el valor nodePort. Por ejemplo:

loadBalancer:
  manualLB:
    controlPlaneNodePort: 30968

loadBalancer.manualLB.addonsNodePort

Quita este campo. No se usa en un clúster de usuario.

loadBalancer.f5BigIP

Si estableces loadbalancer.kind como "f5BigIP", completa esta sección. De lo contrario, quita esta sección o déjala como comentario.

loadBalancer.f5BigIP.address

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

loadBalancer:
  f5BigIP:
      address: "203.0.113.2"

loadBalancer.f5BigIP.fileRef.path

String. La ruta de un archivo de configuración de credenciales que contiene el nombre de usuario y la contraseña de una cuenta que los clústeres de Anthos alojados en VMware pueden usar para conectarse a tu balanceador de cargas BIG-IP de F5. Por ejemplo:

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

loadBalancer.f5BigIP.fileRef.entry

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. Por ejemplo:

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

loadBalancer.f5BigIP.partition

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

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

loadBalancer.f5BigIP.snatPoolName

String. Si usas SNAT, es el nombre del grupo de SNAT. Si no usas SNAT, quita este campo o déjalo como comentario. Por ejemplo:

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

loadBalancer.seesaw

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

Para obtener información sobre la configuración del balanceador de cargas de Seesaw, consulta Guía de inicio rápido del balanceador de cargas de Seesaw y Balanceo de cargas en paquetes con Seesaw.

loadBalancer.seesaw.ipBlockFilePath

String. Configura esto en la ruta de acceso del archivo de bloque de IP para tus VM de Seesaw. Por ejemplo:

loadBalancer:
  seesaw:
    ipBlockFilePath: "config-folder/admin-seesaw-ipblock.yaml"

loadBalancer.seesaw.vrid

String. Es el identificador del router virtual de la VM de Seesaw. Este identificador, que es un número entero que debes elegir, debe ser único en una VLAN. El rango válido es de 1 a 255. Por ejemplo:

loadBalancer:
  seesaw:
    vrid: 125

loadBalancer.seesaw.masterIP

String. La dirección IP virtual configurada en la VM de Seesaw de la instancia principal. Por ejemplo:

loadBalancer:
  seesaw:
    masterIP: 172.16.20.21

loadBalancer.seesaw.cpus

Número entero. Es la cantidad de CPU para cada una de tus VM de Seesaw. Por ejemplo:

loadBalancer:
  seesaw:
    cpus: 8

loadBalancer.seesaw.memoryMB

String. Es la cantidad de megabytes de memoria para cada una de tu VM de Seesaw. Por ejemplo: 0

loadBalancer:
  seesaw:
    memoryMB: 8192

loadBalancer.seesaw.vCenter.networkName

String. Es el nombre de la red de vCenter que contiene las VM de Seesaw. Por ejemplo:

loadBalancer:
  seesaw:
    vCenter:
      networkName: "my-seesaw-network"

loadBalancer.seesaw.enableHA

Booleano. Si deseas crear un balanceador de cargas de Seesaw con alta disponibilidad, configura esto como true. De lo contrario, configúralo como false. Un balanceador de cargas de Seesaw con alta disponibilidad usa un par (principal, copia de seguridad) de las VM. Por ejemplo:

loadBalancer:
  seesaw:
    enableHA: true

loadBalancer.seesaw.disableVRRPMAC

Booleano. Si estableces esto como true, el balanceador de cargas de Seesaw no usará el aprendizaje de MAC para la conmutación por error. En su lugar, usa un ARP injustificado. Si configuras esto como false, el balanceador de cargas de Seesaw usa el aprendizaje de MAC. Te recomendamos establecer esto en true. Si usas vSphere 7 o una versión posterior, y tienes un balanceador de cargas de Seesaw de alta disponibilidad, debes establecerlo en true. Por ejemplo:

loadBalancer:
  seesaw:
    disableVRRPMAC: true

enableDataplaneV2

Booleano. Si deseas habilitar Dataplane V2, configúralo como true. De lo contrario, configúralo como false. Por ejemplo:

enableDataplaneV2: true

Dataplane V2 solo está disponible en clústeres de usuarios.

Consulta Solución de problemas de Dataplant V2 para solucionar problemas.

enableWindowsDataplaneV2

Booleano. Vista previa.

Si deseas habilitar Windows Dataplane V2 para un clúster con nodos de Windows, configura esto como true. De lo contrario, configúralo como false. Por ejemplo:

enableWindowsDataplaneV2: true

Windows Dataplane V2 solo está disponible en clústeres de usuarios.

Consulta Solución de problemas de Dataplant V2 para solucionar problemas. Consulta la Guía del usuario para grupos de nodos del SO de Windows Server a fin de configurar grupos de nodos que contengan nodos de SO de Windows Server.

enableAnthosNetworkGateway

Booleano. Vista previa.

Si deseas habilitar la puerta de enlace de red de Anthos, configura esto como true. De lo contrario, configúralo como false. Debes configurar esto como true si deseas configurar una puerta de enlace NAT de salida. Por ejemplo:

enableAnthosNetworkGateway: true

masterNode

En esta sección, se conserva información sobre los nodos en el clúster de administrador que funcionan como nodos del plano de control en tu clúster de usuario.

masterNode.vsphere.datastore

String. El almacén de datos del nodo del plano de control del usuario para este clúster de usuario. Por ejemplo:

masterNode:
   vsphere:
      datastore: USER_MASTER_DATASTORE

De forma predeterminada, si no se especifica, este valor se establece de forma predeterminada en el almacén de datos del clúster de usuario cuando el clúster de usuario usa el centro de datos del clúster de administrador.

Si el clúster de usuario usa un centro de datos diferente, este campo es obligatorio y no se aplica ningún valor predeterminado.

masterNode.cpus

String. La cantidad de CPU para cada nodo de clúster administrador que funcionan como planos de control para este clúster de usuario. Por ejemplo:

masterNode:
  cpus: 8

masterNode.memoryMB

Número entero. Los megabytes de memoria para cada nodo de clúster de administrador que funciona como un plano de control en este clúster de usuario. Por ejemplo:

masterNode:
  memoryMB: 8192

masterNode.replicas

Número entero. La cantidad de nodos del plano de control para este clúster de usuario. Establece este campo como 1 o 3. Por ejemplo:

masterNode:
  replicas: 3

masterNode.autoResize.enabled

Booleano. Configúralo como true para habilitar el cambio de tamaño automático de los nodos del plano de control del clúster de usuario. Ten en cuenta que los nodos del plano de control para el clúster de usuario están en el clúster de administrador. Por ejemplo:

masterNode:
  autoResize:
    enabled: true

masterNode.vsphere.datastore

String. El almacén de datos donde se crearán los nodos principales. Por ejemplo:

masterNode:
  vSphere:
    datastore: "MY-DATASTORE"

nodePools

Arreglo de objetos, cada uno de los cuales describe un grupo de nodos.

nodePools[i].name

String. Un nombre que elijas para el grupo de nodos. Por ejemplo:

nodePools:
- name: "my-node-pool"

nodePools[i].cpus

Número entero. Es la cantidad de CPU para cada nodo en el grupo. Por ejemplo:

nodePools"
- name: "my-node-pool"
  cpus: 8

nodePools[i].memoryMB

Número entero. Son los megabytes de memoria para cada nodo en el grupo. Por ejemplo:

nodePools"
- name: "my-node-pool"
  memoryMB: 8192

nodePools[i].replicas

Número entero. Es la cantidad de nodos del grupo. Por ejemplo:

nodePools:
- name: "my-node-pool"
  replicas: 5

nodePools[i].bootDiskSizeGB

Número entero. El tamaño del disco de arranque en gigabytes por cada nodo del grupo. Esta configuración está disponible a partir de la versión 1.5.0 de clústeres de Anthos alojados en VMware. Por ejemplo:

nodePools
- name: "my-node-pool"
  bootDiskSizeGB: 40

nodePools[i].osImageType

String. El tipo de imagen de SO que se ejecutará en las VM del grupo de nodos. Los valores posibles son “ubuntu_containerd”, “ubuntu” y “cos”. Por ejemplo:

nodePools
- name: "my-node-pool"
  osImageType: "ubuntu_containerd"

nodePools[i].labels

Asignación. Son las etiquetas para aplicar a cada nodo en el grupo. Por ejemplo:

nodePools:
- name: "my-node-pool"
  labels:
    environment: "production"
    tier: "cache"

nodePools[i].taints

Arreglo de objetos, cada uno de los cuales describe un taint. Por ejemplo:

nodePools:
- name: "my-node-pool"
  taints:
  - key: "staging"
    value: "true"
    effect: "NoSchedule"

nodePools[i].vsphere.datastore

String. El nombre del almacén de datos de vCenter en el que se creará cada nodo del grupo. Por ejemplo:

nodePools:
- name: "my-node-pool"
  vsphere:
    datastore: "my-datastore"

nodePools[i].vsphere.tags

Array de objetos, cada uno de los cuales describe una etiqueta de vSphere que se colocará en las VM en el grupo de nodos. Cada etiqueta tiene una categoría y un nombre. Por ejemplo:

nodePools:
- name: "my-node-pool"
  vsphere:
    tags:
    - category: "purpose"
      name: "testing"

Si deseas adjuntar etiquetas a todas las VM en un grupo de nodos, tu cuenta de usuario de vCenter debe tener estos privilegios de etiquetado de vSphere:

  • vSphere Tagging.Assign o Unassign vSphere Tag
  • vSphere Tagging.Assign o Unassign vSphere Tag on Object (vSphere 7)

nodePools[i].autoscaling

Vista previa.

Si deseas habilitar el ajuste de escala automático para el grupo de nodos, completa esta sección. De lo contrario, quita esta sección.

nodePools[i].autoscaling.minReplicas

String. La cantidad mínima de nodos que el escalador automático puede configurar para el grupo. No puede ser inferior a 1. Por ejemplo:

nodePools:
- name: "my-node-pool"
  autoscaling:
    minReplicas: 5

nodePools.autoscaling.maxReplicas

String. La cantidad máxima de nodos que el escalador automático puede configurar para el grupo.

nodePools:
- name: "my-node-pool"
  autoscaling:
    maxReplicas: 10

antiAffinityGroups.enabled

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

antiAffinityGroups:
  enabled true

Los clústeres de Anthos alojados en VMware crean de forma automática reglas de antiafinidad de Distributed Resource Scheduler (DRS) de VMware para los nodos del clúster de usuario, de modo que se distribuyen en al menos tres hosts 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 tres hosts físicos disponibles.

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 tres hosts en los que se puedan programar las VM de vSphere, configura antiAffinityGroups.enabled como false.

enableVMTracking

enableVMTracking: true

authentication

En esta sección, se conserva la información sobre cómo se autentican y autorizan los usuarios del clúster.

authentication.oidc

Si deseas usar OpenID Connect (OIDC) para administrar el acceso a este clúster, completa esta sección. De lo contrario, quita esta sección o déjala como comentario.

authentication.oidc.issuerURL

String. Es la URL de tu proveedor de OpenID. Las aplicaciones cliente, como la CLI de gcloud y Cloud Console, envían solicitudes de autorización a esta URL. El servidor de la API de Kubernetes usa esta URL a fin de descubrir claves públicas para la verificación de tokens. Debe usar HTTPS. Por ejemplo:

authentication:
  oidc:
    issuerURL: "https://example.com/adfs"

authentication.oidc.kubectlRedirectURL

String. Es la URL de redireccionamiento para la CLI de gcloud. Por ejemplo:

authentication:
  oidc:
    kubectlRedirectURL: "https://localhost:1025/callback"

authentication.oidc.clientID

String. Es el ID de la aplicación cliente que realiza solicitudes de autenticación al proveedor de OpenID. La CLI de gcloud y Cloud Console usan este ID. Por ejemplo:

authentication:
  oidc:
    clientID: "my-big-hex-string"

authentication.oidc.clientSecret

String. Es el secreto de la aplicación cliente. La CLI de gcloud y Cloud Console usan este secreto. Por ejemplo:

authentication:
  oidc:
    clientSecret: "N3i&JlLZoD!W"

authentication.oidc.username

String. Es la reclamación de JWT para usar como nombre de usuario El valor predeterminado es sub, que se espera que sea un identificador único del usuario final. Puedes elegir otras reclamaciones, como email o name, según el proveedor de OpenID. Sin embargo, las reclamaciones que no sean email tienen el prefijo de la URL de la entidad emisora para evitar conflictos de nombres con otros complementos. Por ejemplo:

authentication:
  oidc:
    username: "sub"

authentication.oidc.usernamePrefix

String. Es el prefijo que se antepone a los reclamos de nombre de usuario para evitar conflictos con los nombres existentes. Si no proporcionas este campo y username es un valor distinto de email, el prefijo se configura de forma predeterminada como issuerurl#. Puedes usar el valor - para inhabilitar todos los prefijos. Por ejemplo:

authentication:
  oidc:
    usernamePrefix: "my-prefix"

authentication.oidc.group

String. Es la reclamación de JWT que el proveedor usará para mostrar tus grupos de seguridad. Por ejemplo:

authentication:
  oidc:
    group: "sec-groups"

authentication.oidc.groupPrefix

String. Es el prefijo para agrupar reclamaciones a fin de evitar conflictos con nombres existentes. Por ejemplo, con un grupo foobar y un prefijo gid-, gid-foobar. De forma predeterminada, este valor está vacío, y no hay prefijo. Por ejemplo:

authentication:
  oidc:
    groupPrefix: "gid-"

authentication.oidc.scopes

String. Es una lista delimitada por comas de alcances adicionales para enviar al proveedor de OpenID. Por ejemplo:

authentication:
  oidc:
    scopes: "offline-access"

Para la autenticación con Microsoft Azure u Okta, configura esto en offline_access.

authentication.oidc.extraParams

String. Es una lista delimitada por comas de parámetros clave-valor adicionales para enviar al proveedor de OpenID.

Por ejemplo:

authentication:
  oidc:
    extraparams: "prompt=consent"

authentication.oidc.deployCloudConsoleProxy

String. Especifica si se debe implementar un proxy inverso en el clúster a fin de permitir que Google Cloud Console acceda al proveedor de OIDC local para autenticar usuarios. Debe ser una string: "true" o "false". Si tu proveedor de identidad no es accesible a través de la Internet pública y deseas autenticarte con Google Cloud Console, debes configurar este campo como "true". Si queda en blanco, el valor predeterminado de este campo es "false".

authentication.oidc.caPath

String. Es la ruta de acceso al certificado de la autoridad certificada (CA) que emitió el certificado web de tu proveedor de identidad. Es posible que este valor no sea necesario. Por ejemplo, si el certificado de tu proveedor de identidad lo emitió una CA pública conocida, entonces no deberías proporcionar un valor aquí. Sin embargo, si deployCloudConsoleProxy es "true", debes proporcionar este valor, incluso para una CA pública conocida.

Por ejemplo:

authentication:
  oidc:
    caPath: "my-cert-folder/provider-root-cert.pem"

authentication.sni

Si deseas proporcionar un certificado de entrega adicional para el servidor de la API de Kubernetes del clúster, completa esta sección. De lo contrario, quita esta sección o déjala como comentario.

authentication.sni.certPath

String. Es la ruta a un certificado de entrega para el servidor de API de Kubernetes. Por ejemplo:

authentication:
  sni:
    certPath: "my-cert-folder/example.com.crt"

authentication.sni.keyPath

String. Es la ruta de acceso al archivo de claves privadas del certificado. Por ejemplo:

authentication:
  sni:
    keyPath: "my-cert-folder/example.com.key"

stackdriver

En esta sección, se presenta información sobre el proyecto de Google Cloud y la cuenta de servicio que deseas usar para almacenar los registros y las métricas.

stackdriver.projectID

String. Es el ID del proyecto de Google Cloud en el que deseas ver los registros. Por ejemplo:

stackdriver:
  projectID: "my-logs-project"

stackdriver.clusterLocation

String. 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. Por ejemplo:

stackdriver:
  clusterLocation: "us-central1"

stackdriver.enableVPC

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

stackdriver:
  enableVPC: false

stackdriver.serviceAccountKeyPath

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

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

stackdriver.disableVsphereResourceMetrics

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

stackdriver:
  disableVsphereResourceMetrics: true

gkeConnect

En esta sección, se conserva información sobre el proyecto de Google Cloud y la cuenta de servicio que deseas usar para conectar tu clúster a Google Cloud. Esta sección es obligatoria.

gkeConnect.projectID

String. Es el ID del proyecto de Cloud que deseas usar para conectar tu clúster a Google Cloud. Por ejemplo:

gkeConnect:
  projectID: "my-connect-project-123"

gkeConnect.registerServiceAccountKeyPath

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

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

usageMetering

Si deseas habilitar la medición de uso para tu clúster, completa esta sección. De lo contrario, quita esta sección o déjala como comentario.

usageMetering.bigQueryProjectID

String. Es el ID del proyecto de Google Cloud en el que deseas almacenar datos de medición de uso. Por ejemplo:

usageMetering:
  bigQueryProjectID: "my-bq-project"

usageMetering.bigQueryDatasetID

String. Es el ID del conjunto de datos de BigQuery en el que deseas almacenar los datos de medición de uso. Por ejemplo:

usageMetering:
  bigQueryDatasetID: "my-bq-dataset"

usageMetering.bigQueryServiceAccountKeyPath

String. Es la ruta del archivo de claves JSON para tu cuenta de servicio de BigQuery Por ejemplo:

usageMetering:
  bigQueryServiceAccountKeyPath: "my-key-folder/bq-key.json"

usageMetering.enableConsumptionMetering

Booleano. Configúralo como true si deseas habilitar la medición basada en el consumo. De lo contrario, configúralo como falso. Por ejemplo:

usageMetering:
  enableConsumptionMetering: 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.

cloudAuditLogging.projectID

String. Es el ID del proyecto de Google Cloud en el que deseas almacenar los registros de auditoría Por ejemplo:

cloudAuditLogging:
  projectID: "my-audit-project"

cloudAuditLogging.clusterLocation

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. Por ejemplo:

cloudAuditLogging:
  clusterLocation: "us-central1"

cloudAuditLogging.serviceAccountKeyPath

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

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

autoRepair.enabled

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

autoRepair:
  enabled: true

secretsEncryption

Si deseas encriptar secretos sin la necesidad de tener un KMS externo (servicio de administración de claves) ni ninguna otra dependencia, asegúrate de completar esta sección. De lo contrario, quita o comenta esta sección.

secretsEncryption.mode

String. Modo de encriptación de Secret. Configura esto como "GeneratedKey".

secretsEncryption:
  mode: "GeneratedKey"

secretsEncryption.generatedKey.keyVersion

Número entero. Un número entero que elijas para el número de versión de la clave. Se recomienda que comiences con 1. Por ejemplo:

secretsEncryption:
  generatedKey:
    keyVersion: 1