En este documento, se describen los campos del archivo de configuración del clúster del 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 1.29 del parche. Por ejemplo: gkectl create-config admin --gke-on-prem-version=1.29.500-gke.160
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.29 más reciente.
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
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
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
.
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
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
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
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
Obligatorio
Cadena
Inmutable
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
Cadena
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
Cadena
Inmutable
El menor rango posible: /24
El mayor rango posible: /12
Prepropagado: “10.96.232.0/24”
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
Cadena
Inmutable
El menor rango posible: /18
El mayor rango posible: /8
Prepropagado: “192.168.0.0/16”
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 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
Cadena
Inmutable
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
Obligatorio
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"
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
1.30 y versiones más altas
Obligatorio
Inmutable
Cadena
Prepropagado: “MetalLB”
String. Configura esto como "ManualLB"
o "MetalLB"
.
Para habilitar funciones nuevas y avanzadas, 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 las siguientes guías de migración:
- Migra la configuración de BIG-IP de F5 integrado
- Migra del balanceador de cargas de Seesaw a MetalLB
Ejemplo:
loadBalancer:
kind: "MetalLB"
1.28 y 1.29
Obligatorio
Inmutable
Cadena
Prepropagado: “MetalLB”
String. 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"
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 administrador 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 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.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
Es relevante si loadBalancer.kind
= "f5BigIp"
Inmutable
Cadena
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
.
Ejemplo:
antiAffinityGroups: enabled: true
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
.
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
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. Configura esto como 3
si deseas crear un clúster de administrador con alta disponibilidad. De lo contrario, configúralo como 1
.
Si configuras esto como 3
, también debes completar las secciones network.controlPlaneIPBlock
y network.hostConfig
.
Si estableces esto como 3
, no podrás usar el balanceador de cargas de Seesaw.
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. 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
Si tienes un Container Registry privado, completa esta sección. De lo contrario, quita esta sección o déjala como comentario.
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 la flota y de 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
ygkeOnPremAPI.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 de Google 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
comofalse
. Si no deseas inscribir ningún clúster en el proyecto, inhabilitagkeonprem.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 de Google Cloud donde se ejecuta la API de GKE On-Prem y donde 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 de Google Cloud en la que deseas almacenar los registros. 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 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 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 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 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
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.
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 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
Cadena
Mutable
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 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.
Ejemplo:
osImageType: "cos"