Ce document décrit les champs du fichier de configuration du cluster d'administrateur pour la version 1.29 de Google Distributed Cloud.
Générer un modèle pour votre fichier de configuration
Si vous avez utilisé gkeadm
pour créer le poste de travail d'administrateur, gkeadm
a généré un modèle pour le fichier de configuration de votre cluster d'administrateur. Par ailleurs, gkeadm
renseigne certains champs pour vous.
Si vous n'avez pas utilisé gkeadm
pour créer votre poste de travail d'administrateur, vous pouvez utiliser gkectl
pour générer un modèle pour votre fichier de configuration de cluster d'administrateur.
Pour générer un modèle pour votre fichier de configuration de cluster d'administrateur :
gkectl create-config admin --config=OUTPUT_FILENAME --gke-on-prem-version=VERSION
Remplacez OUTPUT_FILENAME
par le chemin d'accès que vous avez choisi pour le modèle généré. Si vous omettez cette option, gkectl
nomme le fichier admin-cluster.yaml
et le place dans le répertoire actuel.
Remplacez VERSION
par la version complète d'une version de correctif 1.29. Exemple : gkectl create-config admin --gke-on-prem-version=1.29.500-gke.160
.
Cette version doit être égale ou inférieure à votre version gkectl
. Si vous omettez cette option, le modèle de configuration généré est renseigné avec des valeurs basées sur le dernier correctif de la version 1.29.
Modèle
Remplir votre fichier de configuration
Dans votre fichier de configuration, saisissez les valeurs des champs comme décrit dans les sections suivantes.
name
Facultatif
Chaîne
Par défaut : nom aléatoire avec le préfixe "gke-admin-"
Nom de votre choix pour le cluster.
Exemple :
name: "my-admin-cluster"
bundlePath
Obligatoire
Modifiable
Chaîne
Chemin d'accès au fichier de bundle Google Distributed Cloud.
Le fichier de bundle complet Google Distributed Cloud contient tous les composants d'une version spécifique de Google Distributed Cloud. Lorsque vous créez un poste de travail d'administrateur, celui-ci est fourni avec un groupe complet dans :
/var/lib/gke/bundles/gke-onprem-vsphere-VERSION-full.tgz
Exemple :
bundlePath: "/var/lib/gke/bundles/gke-onprem-vsphere-1.10.0-gke.8.full.tgz"
preparedSecrets.enabled
Bêta
Facultatif
Immuable
Booléen
Prérempli : faux
Par défaut : faux
Définissez cette valeur sur true
si vous souhaitez utiliser des identifiants préparés dans le cluster d'administrateur. Sinon, définissez cette valeur sur false
.
Exemple :
preparedSecrets: enabled: true
vCenter
Obligatoire
Immuable
Cette section contient des informations sur votre environnement vSphere et sur votre connexion au serveur vCenter.
vCenter.address
Obligatoire
Immuable
Chaîne
Adresse IP ou nom d'hôte de votre serveur vCenter.
Pour en savoir plus, consultez la section Rechercher l'adresse de votre serveur vCenter.
Exemples :
vCenter: address: "203.0.113.100"
vCenter: address: "my-vcenter-server.my-domain.example"
vCenter.datacenter
Obligatoire
Immuable
Chaîne
Chemin relatif d'un centre de données vSphere.
La valeur que vous spécifiez est relative au dossier racine nommé /
.
Si votre centre de données se trouve dans le dossier racine, la valeur correspond au nom du centre de données.
Exemple :
vCenter: datacenter: "my-data-center"
Sinon, la valeur est un chemin relatif qui inclut un ou plusieurs dossiers, ainsi que le nom du centre de données.
Exemple :
vCenter: datacenter: "data-centers/data-center-1"
vCenter.cluster
Obligatoire
Immuable
Chaîne
Chemin relatif d'un cluster vSphere qui représente les hôtes ESXi sur lesquels vos VM de cluster d'administrateur seront exécutées. Ce cluster vSphere représente un sous-ensemble des hôtes ESXi physiques de votre centre de données vCenter.
La valeur que vous spécifiez est associée à /.../DATA_CENTER/vm/
.
Si votre cluster vSphere se trouve dans le dossier /.../DATA_CENTER/vm/
, la valeur correspond au nom du cluster vSphere.
Exemple :
vCenter: cluster: "my-vsphere-cluster"
Sinon, la valeur est un chemin relatif qui inclut un ou plusieurs dossiers, ainsi que le nom du cluster vSphere.
Exemple :
vCenter: cluster: "clusters/vsphere-cluster-1"
vCenter.resourcePool
Obligatoire
Immuable
Chaîne
Un pool de ressources vCenter pour les VM de votre cluster d'administrateur.
Si vous souhaitez utiliser le pool de ressources par défaut, définissez cette valeur sur VSPHERE_CLUSTER/Resources
.
Exemple :
vCenter: resourcePool: "my-vsphere-cluster/Resources"
Si vous souhaitez utiliser un pool de ressources que vous avez déjà créé, définissez ce paramètre sur le chemin relatif de votre pool de ressources.
La valeur que vous spécifiez est associée à /.../DATA_CENTER/host/.../VSPHERE_CLUSTER/Resources/
.
Si votre pool de ressources est un enfant direct de /.../DATA_CENTER/host/.../VSPHERE_CLUSTER/Resources/
, la valeur est le nom du pool de ressources.
Exemple :
vCenter: resourcePool: "my-resource-pool"
Sinon, la valeur est un chemin relatif comportant au moins deux pools de ressources.
Exemple :
vCenter: resourcePool: "resource-pool-1/resource-pool-2"
vCenter.datastore
Obligatoire si vCenter.storagePolicyName
n'est pas spécifié
Immuable
Chaîne
Nom d'un datastore vSphere pour votre cluster d'utilisateur.
La valeur que vous spécifiez doit être un nom, et non un chemin d'accès. N'incluez aucun dossier dans la valeur.
Exemple :
vCenter: datastore: "my-datastore"
Vous devez spécifier une valeur pour vCenter.datastore
ou vCenter.storagePolicyName
, mais pas les deux. Si vous spécifiez une valeur pour ce champ, ne spécifiez pas de valeur pour vCenter.storagePolicyName
. Le champ vCenter.datastore
est immuable, sauf si vous le définissez sur une chaîne vide lorsque vous migrez un datastore vers la gestion des règles de stockage (SPBM).
vCenter.storagePolicyName
Obligatoire si vCenter.datastore
n'est pas spécifié
Immuable
Chaîne
Nom d'une règle de stockage de VM pour les nœuds du cluster.
Le cluster d'administrateur doit être à haute disponibilité (HA) pour fonctionner avec la règle de stockage.
Pour en savoir plus, consultez la page Configurer une règle de stockage.
Vous devez spécifier une valeur pour vCenter.datastore
ou vCenter.storagePolicyName
, mais pas les deux. Si vous spécifiez une valeur pour ce champ, ne spécifiez pas de valeur pour vCenter.datastore
.
vCenter.caCertPath
Obligatoire
Modifiable
Chaîne
Chemin d'accès du certificat CA de votre serveur vCenter.
Pour en savoir plus, consultez la section Obtenir votre certificat CA vCenter.
Pour en savoir plus sur la mise à jour de ce champ pour un cluster existant, consultez la page Mettre à jour les références de certificat vCenter.
Exemple :
vCenter: caCertPath: "/usr/local/google/home/me/certs/vcenter-ca-cert.pem"
vCenter.credentials.fileRef.path
Obligatoire
Chaîne
Chemin d'accès d'un fichier de configuration des identifiants contenant le nom d'utilisateur et le mot de passe de votre compte utilisateur vCenter. Le compte utilisateur doit disposer du rôle d'administrateur ou de privilèges équivalents. Consultez les exigences concernant vSphere.
Vous pouvez utiliser gkectl update
pour mettre à jour ce champ dans un cluster existant.
Pour en savoir plus sur la mise à jour de vos identifiants vCenter, consultez la page Mettre à jour les identifiants de cluster.
Exemple :
vCenter: credentials: fileRef: path: "my-config-folder/admin-creds.yaml"
vCenter.credentials.fileRef.entry
Obligatoire
Chaîne
Nom du bloc d'identifiants, dans votre fichier de configuration des identifiants, qui contient le nom d'utilisateur et le mot de passe de votre compte utilisateur vCenter.
Vous pouvez utiliser gkectl update
pour mettre à jour ce champ dans un cluster existant.
Pour en savoir plus sur la mise à jour de vos identifiants vCenter, consultez la page Mettre à jour les identifiants de cluster.
Exemple :
vCenter: credentials: fileRef: entry: "vcenter-creds"
vCenter.folder
Facultatif
Immutable
Chaîne
Par défaut : dossier à l'échelle du centre de données
Chemin relatif d'un dossier vSphere que vous avez déjà créé. Ce dossier contiendra les VM de votre cluster d'administrateur.
Si vous ne spécifiez pas de valeur, les VM de votre cluster d'administrateur seront placées dans /.../DATA_CENTER/vm/
.
Si vous spécifiez une valeur, elle est associée à /.../DATA_CENTER/vm/
.
La valeur peut être le nom d'un dossier.
Exemple :
vCenter: folder: "my-folder"
La valeur peut également être un chemin relatif incluant plusieurs dossiers.
Exemple :
vCenter: folder: "folders/folder-1"
vCenter.dataDisk
Ne fournissez pas de valeur pour ce champ. Supprimez le champ ou mettez-le en commentaire.
network
Obligatoire
Immuable
Cette section préserve des informations sur votre réseau de clusters d'administrateur.
network.hostConfig
Obligatoire
Immuable
Cette section contient des informations sur les serveurs NTP, les serveurs DNS et les domaines de recherche DNS utilisés par les VM qui sont vos nœuds de cluster.
network.hostConfig.dnsServers
Obligatoire si la section network.hostConfig
est renseignée.
Immuable
Tableau de chaînes.
Le nombre maximal d'éléments dans le tableau est de trois.
Adresses des serveurs DNS pour les VM.
Exemple :
network: hostConfig: dnsServers: - "172.16.255.1" - "172.16.255.2"
network.hostConfig.ntpServers
Obligatoire si la section network.hostConfig
est renseignée.
Immuable
Tableau de chaînes
Adresses des serveurs de temps que les VM utilisent.
Exemple :
network: hostConfig: ntpServers: - "216.239.35.0"
network.hostConfig.searchDomainsForDNS
Facultatif
Immuable
Tableau de chaînes
Domaines de recherche DNS que les VM utilisent. Ces domaines sont utilisés dans une liste de recherche de domaines.
Exemple :
network: hostConfig: searchDomainsForDNS: - "my.local.com"
network.ipMode.type
Obligatoire
Immuable
Chaîne
Prérempli : "static"
Par défaut : "dhcp"
Si vous souhaitez que les nœuds de votre cluster obtiennent leur adresse IP à partir d'un serveur DHCP, définissez la valeur sur "dhcp"
. Si vous souhaitez que les nœuds de votre cluster aient des adresses IP statiques venant d'une liste que vous fournissez, définissez ce paramètre sur "static"
.
Exemple :
network: ipMode: type: "static"
network.ipMode.ipBlockFilePath
Obligatoire si network.ipMode.type
= static
Immuable
Chaîne
Chemin d'accès au fichier de blocs d'adresses IP de votre cluster.
Exemple :
network: ipMode: ipBlockFilePath: "/my-config-folder/admin-cluster-ipblock.yaml"
network.serviceCIDR
Obligatoire
Immuable
Chaîne
Plage la plus petite possible : /24
Plage la plus étendue possible : /12
Prérempli : "10.96.232.0/24"
Par défaut : "10.96.232.0/24"
Une plage d'adresses IP au format CIDR à utiliser pour les services de votre cluster.
Exemple :
network: serviceCIDR: "10.96.232.0/24"
network.podCIDR
Obligatoire
Immuable
Chaîne
Plage la plus petite possible : /18
Plage la plus étendue possible : /8
Prérempli : "192.168.0.0/16"
Par défaut : "192.168.0.0/16"
Une plage d'adresses IP au format CIDR à utiliser pour les pods de votre cluster
Exemple :
network: podCIDR: "192.168.0.0/16"
La plage de services ne doit pas chevaucher la plage de pods.
Les plages de services et de pods ne doivent chevaucher aucune adresse en dehors du cluster que vous souhaitez atteindre depuis l'intérieur du cluster.
Par exemple, supposons que votre plage de services soit 10.96.232.0/24 et que votre plage de pods soit 192.168.0.0/16. Tout trafic envoyé depuis un pod vers une adresse dans l'une de ces plages est traité comme étant dans un cluster et n'atteint aucune destination en dehors du cluster.
En particulier, les plages de services et de pods ne doivent pas chevaucher les éléments suivants :
Adresses IP des nœuds d'un cluster
Adresses IP utilisées par les machines des équilibreurs de charge
Adresses IP virtuelles utilisées par les nœuds de plan de contrôle et les équilibreurs de charge
Adresse IP des serveurs vCenter, DNS et NTP
Nous vous recommandons de placer vos plages de services et de pods dans l'espace d'adressage RFC 1918.
Voici l'une des raisons pour lesquelles il est recommandé d'utiliser les adresses RFC 1918 Supposons que votre plage de services et de pods contienne des adresses IP externes. Tout trafic envoyé depuis un pod vers l'une de ces adresses externes sera traité comme du trafic interne au cluster et n'atteindra pas la destination externe.
network.vCenter.networkName
Obligatoire
Immuable
Chaîne
Nom du réseau vSphere pour vos nœuds de cluster.
Exemple :
network: vCenter: networkName: "my-network"
Si le nom contient un caractère spécial, vous devez utiliser une séquence d'échappement pour celui-ci.
Caractères spéciaux | Séquence d'échappement |
---|---|
Barre oblique (/ ) |
%2f |
Barre oblique inverse (\ ) |
%5c |
Signe de pourcentage (% ) |
%25 |
Si le nom du réseau n'est pas unique dans votre centre de données, vous pouvez spécifier un chemin d'accès complet.
Exemple :
network: vCenter: networkName: "/data-centers/data-center-1/network/my-network"
network.controlPlaneIPBlock
Obligatoire
network.controlPlaneIPBlock.netmask
Obligatoire
Immuable
Chaîne
Masque de réseau pour le réseau contenant vos nœuds de plan de contrôle.
Exemple :
network: controlPlaneIPBlock: netmask: "255.255.255.0"
network.controlPlaneIPBlock.gateway
Obligatoire
Immuable
Chaîne
Adresse IP de la passerelle par défaut pour vos nœuds de plan de contrôle.
Exemple :
network: controlPlaneIPBlock: gateway: "172.16.22.1"
network.controlPlaneIPBlock.ips
Obligatoire
Immuable
Tableau de trois objets, chacun avec une adresse IP et un nom d'hôte facultatif.
Il s'agit des adresses IP qui seront attribuées à vos nœuds de plan de contrôle.
Exemple :
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
Cette section contient des informations sur l'équilibreur de charge de votre cluster d'administrateur.
loadBalancer.vips.controlPlaneVIP
Obligatoire
Immuable
Chaîne
Adresse IP que vous avez choisie de configurer sur l'équilibreur de charge pour le serveur d'API Kubernetes du cluster d'administrateur.
Exemple :
loadBalancer: vips: controlplaneVIP: "203.0.113.3"
loadBalancer.kind
1.30 et versions ultérieures
Obligatoire
Immuable
Chaîne
Prérempli : "MetalLB"
Chaîne. Définissez ce paramètre sur "ManualLB"
ou "MetalLB"
Pour activer les nouvelles fonctionnalités avancées, utilisez "ManualLB"
si vous disposez d'un équilibreur de charge tiers (tel que F5 BIG-IP ou Citrix) ou "MetalLB"
pour notre solution groupée.
Notez les différences suivantes par rapport aux versions précédentes :
Dans la version 1.30 et les versions ultérieures, la valeur
"F5BigIP"
n'est pas autorisée pour les nouveaux clusters d'administrateur.Dans la version 1.28 et les versions ultérieures, la valeur
"Seesaw"
n'est pas autorisée pour les nouveaux clusters d'administrateur.
Si vous disposez d'un cluster existant qui utilise ces équilibreurs de charge, consultez les guides de migration suivants :
- Migrer la configuration pour F5 BIG-IP intégré
- Migrer de l'équilibreur de charge Seesaw vers MetalLB
Exemple :
loadBalancer:
kind: "MetalLB"
1.28 et 1.29
Obligatoire
Immuable
Chaîne
Prérempli : "MetalLB"
Chaîne. Définissez ce paramètre sur "ManualLB"
, "F5BigIP"
ou "MetalLB"
Pour activer les nouvelles fonctionnalités avancées, nous vous recommandons d'utiliser "ManualLB"
si vous disposez d'un équilibreur de charge tiers (tel que F5 BIG-IP ou Citrix) ou "MetalLB"
pour notre solution groupée.
Dans la version 1.28 et les versions ultérieures, la valeur "Seesaw"
n'est pas autorisée pour les nouveaux clusters d'administrateur.
Si vous disposez d'un cluster existant qui utilise l'équilibreur de charge Seesaw, consultez la section Migrer de l'équilibreur de charge Seesaw vers MetalLB.
Exemple :
loadBalancer:
kind: "MetalLB"
1.16 et versions antérieures
Obligatoire
Immuable
Chaîne
Prérempli : "MetalLB"
Chaîne. Définissez ce paramètre sur "ManualLB"
, "F5BigIP"
, "Seesaw"
ou "MetalLB"
.
Si vous définissez adminMaster.replicas
sur 3
, vous ne pouvez pas utiliser l'équilibreur de charge Seesaw.
Exemple :
loadBalancer:
kind: "MetalLB"
loadBalancer.manualLB
Si vous définissez loadbalancer.kind
sur "ManualLB"
, remplissez cette section. Sinon, supprimez cette section.
Immuable
loadBalancer.manualLB.ingressHTTPNodePort
Supprimez ce champ de votre fichier de configuration. Il n'est pas utilisé dans un cluster d'administrateur.
loadBalancer.manualLB.ingressHTTPSNodePort
Supprimez ce champ de votre fichier de configuration. Il n'est pas utilisé dans un cluster d'administrateur.
loadBalancer.manualLB.konnectivityServerNodePort
Supprimez ce champ de votre fichier de configuration. Il n'est pas utilisé dans un cluster d'administrateur.
loadBalancer.f5BigIP
1.30 et versions ultérieures
Dans la version 1.30 et les versions ultérieures, la valeur "F5BigIP"
n'est pas autorisée pour loadbalancer.kind
pour les nouveaux clusters d'administrateur. Si la section loadBalancer.f5BigIP
se trouve dans votre fichier de configuration, supprimez-la ou commentez-la.
Vous pouvez toujours utiliser votre équilibreur de charge F5 BIG-IP avec les nouveaux clusters d'administrateur, mais la configuration est différente. Pour obtenir plus de détails sur la configuration, consultez la section Activer le mode d'équilibrage de charge manuel.
Si vous disposez d'un équilibreur de charge F5-BIG-IP et que la configuration du cluster utilise cette section, nous vous recommandons de migrer vers l'équilibrage de charge manuel après avoir effectué la mise à niveau vers la version 1.29 ou une version ultérieure.
1.29
Si vous définissez loadbalancer.kind
sur "f5BigIP"
, remplissez cette section.
Sinon, supprimez cette section.
Pour activer les nouvelles fonctionnalités avancées, nous vous recommandons de configurer l'équilibrage de charge manuel pour votre équilibreur de charge F5 BIG-IP. Pour activer l'équilibrage de charge manuel, définissez loadbalancer.kind
sur "ManualLB"
et remplissez la section loadBalancer.manualLB
. Pour en savoir plus, consultez la page Activer le mode d'équilibrage de charge manuel.
Si vous disposez d'un équilibreur de charge F5-BIG-IP et que la configuration du cluster utilise cette section, nous vous recommandons de migrer vers l'équilibrage de charge manuel après avoir effectué la mise à niveau vers la version 1.29 ou une version ultérieure.
1.28 et versions antérieures
Si vous définissez loadbalancer.kind
sur "f5BigIP"
, remplissez cette section.
Sinon, supprimez cette section.
Pour activer les nouvelles fonctionnalités avancées, nous vous recommandons de configurer l'équilibrage de charge manuel pour votre équilibreur de charge F5 BIG-IP. Pour activer l'équilibrage de charge manuel, définissez loadbalancer.kind
sur "ManualLB"
et remplissez la section loadBalancer.manualLB
. Pour en savoir plus, consultez la page Activer le mode d'équilibrage de charge manuel.
loadBalancer.f5BigIP.address
1.30 et versions ultérieures
Non autorisé pour les nouveaux clusters
Obligatoire si loadBalancer.kind
= "f5BigIp"
Immuable
Chaîne
Adresse de votre équilibreur de charge F5 BIG-IP. Exemple :
loadBalancer:
f5BigIP:
address: "203.0.113.2"
1.29 et versions antérieures
Obligatoire si loadBalancer.kind
= "f5BigIp"
Immuable
Chaîne
Adresse de votre équilibreur de charge F5 BIG-IP. Exemple :
loadBalancer:
f5BigIP:
address: "203.0.113.2"
loadBalancer.f5BigIP.credentials.fileRef.path
1.30 et versions ultérieures
Non autorisé pour les nouveaux clusters
Obligatoire si loadBalancer.kind
= "f5BigIp"
Modifiable
Chaîne
Chemin d'accès d'un fichier de configuration des identifiants contenant le nom d'utilisateur et le mot de passe d'un compte que Google Distributed Cloud peut utiliser pour se connecter à votre équilibreur de charge F5 BIG-IP.
Le compte utilisateur doit disposer d'un rôle utilisateur possédant des autorisations suffisantes pour configurer et gérer l'équilibreur de charge. Le rôle Administrateur ou Administrateur de ressources est suffisant.
Vous pouvez utiliser gkectl update
pour mettre à jour ce champ dans un cluster existant.
Pour en savoir plus sur la mise à jour de vos identifiants F5 BIG-IP, consultez la page Mettre à jour les identifiants du cluster.
Exemple :
loadBalancer:
f5BigIP:
credentials:
fileRef:
path: "my-config-folder/admin-creds.yaml"
1.29 et versions antérieures
Obligatoire si loadBalancer.kind
= "f5BigIp"
Modifiable
Chaîne
Chemin d'accès d'un fichier de configuration des identifiants contenant le nom d'utilisateur et le mot de passe d'un compte que Google Distributed Cloud peut utiliser pour se connecter à votre équilibreur de charge F5 BIG-IP.
Le compte utilisateur doit disposer d'un rôle utilisateur possédant des autorisations suffisantes pour configurer et gérer l'équilibreur de charge. Le rôle Administrateur ou Administrateur de ressources est suffisant.
Vous pouvez utiliser gkectl update
pour mettre à jour ce champ dans un cluster existant.
Pour en savoir plus sur la mise à jour de vos identifiants F5 BIG-IP, consultez la page Mettre à jour les identifiants du cluster.
Exemple :
loadBalancer:
f5BigIP:
credentials:
fileRef:
path: "my-config-folder/admin-creds.yaml"
loadBalancer.f5BigIP.credentialsfileRef.entry
1.30 et versions ultérieures
Non autorisé pour les nouveaux clusters
Obligatoire si loadBalancer.kind
= "f5BigIp"
Modifiable
Chaîne
Nom du bloc d'identifiants, dans votre fichier de configuration des identifiants, qui contient le nom d'utilisateur et le mot de passe de votre compte F5 BIG-IP.
Vous pouvez utiliser gkectl update
pour mettre à jour ce champ dans un cluster existant.
Pour en savoir plus sur la mise à jour de vos identifiants F5 BIG-IP, consultez la page Mettre à jour les identifiants du cluster.
Exemple :
loadBalancer:
f5BigIP:
credentials:
fileRef:
entry: "f5-creds"
1.29 et versions antérieures
Obligatoire si loadBalancer.kind
= "f5BigIp"
Modifiable
Chaîne
Nom du bloc d'identifiants, dans votre fichier de configuration des identifiants, qui contient le nom d'utilisateur et le mot de passe de votre compte F5 BIG-IP.
Vous pouvez utiliser gkectl update
pour mettre à jour ce champ dans un cluster existant.
Pour en savoir plus sur la mise à jour de vos identifiants F5 BIG-IP, consultez la page Mettre à jour les identifiants du cluster.
Exemple :
loadBalancer:
f5BigIP:
credentials:
fileRef:
entry: "f5-creds"
loadBalancer.f5BigIP.partition
1.30 et versions ultérieures
Non autorisé pour les nouveaux clusters
Obligatoire si loadBalancer.kind
= "f5BigIp"
Immuable
Chaîne
Nom d'une partition BIG-IP que vous avez créée pour votre cluster d'administrateur.
Exemple :
loadBalancer:
f5BigIP:
partition: "my-f5-admin-partition"
1.29 et versions antérieures
Obligatoire si loadBalancer.kind
= "f5BigIp"
Immuable
Chaîne
Nom d'une partition BIG-IP que vous avez créée pour votre cluster d'administrateur.
Exemple :
loadBalancer:
f5BigIP:
partition: "my-f5-admin-partition"
loadBalancer.f5BigIP.snatPoolName
1.30 et versions ultérieures
Non autorisé pour les nouveaux clusters
Facultatif
Applicable si loadBalancer.kind
= "f5BigIp"
Immuable
Chaîne
Si vous utilisez SNAT, nom de votre pool SNAT. Si vous n'utilisez pas SNAT, supprimez ce champ.
Exemple :
loadBalancer:
f5BigIP:
snatPoolName: "my-snat-pool"
1.29 et versions antérieures
Facultatif
Applicable si loadBalancer.kind
= "f5BigIp"
Immuable
Chaîne
Si vous utilisez SNAT, nom de votre pool SNAT. Si vous n'utilisez pas SNAT, supprimez ce champ.
Exemple :
loadBalancer:
f5BigIP:
snatPoolName: "my-snat-pool"
loadBalancer.seesaw
N'utilisez pas cette section. L'équilibreur de charge Seesaw n'est pas compatible avec les nouveaux clusters d'administrateur en version 1.28 et ultérieure. Nous vous recommandons plutôt de configurer l'équilibreur de charge MetalLB pour les nouveaux clusters d'administrateur. Pour en savoir plus sur la configuration de MetalLB, consultez la section Équilibrage de charge groupé avec MetalLB.
Bien que nous acceptions toujours Seesaw pour les clusters d'administrateur non HD qui ont été mis à niveau, nous vous recommandons de migrer vers MetalLB.
antiAffinityGroups.enabled
Facultatif
Modifiable
Booléen
Prérempli : vrai
Définissez ce paramètre sur true
pour activer la création de règles DRS. Sinon, définissez cette valeur sur false
.
Exemple :
antiAffinityGroups: enabled: true
Si ce champ est true
, Google Distributed Cloud crée des règles d'anti-affinité DRS (Distributed Resource Scheduler) VMware pour vos nœuds de cluster d'administrateur, ce qui les répartit sur au moins trois hôtes ESXi physiques dans votre centre de données.
Cette fonctionnalité nécessite que votre environnement vSphere remplisse les conditions suivantes :
La fonctionnalité VMware DRS est activée. VMware DRS nécessite l'édition de licence vSphere Enterprise Plus.
Votre compte utilisateur vSphere dispose du privilège
Host.Inventory.Modify cluster
.Au moins quatre hôtes ESXi sont disponibles.
Même si la règle exige que les nœuds de cluster soient répartis sur trois hôtes ESXi, nous vous recommandons vivement de disposer d'au moins quatre hôtes ESXi disponibles. Cela vous évite de perdre le plan de contrôle de votre cluster d'administrateur. Supposons par exemple que vous n'ayez que trois hôtes ESXi et que le nœud de plan de contrôle de votre cluster d'administrateur se trouve sur un hôte ESXi qui est défaillant. La règle DRS empêche le nœud de plan de contrôle d'être placé sur l'un des deux hôtes ESXi restants.
Rappelez-vous que si vous possédez une licence standard vSphere, vous ne pouvez pas activer VMware DRS.
Si vous n'avez pas activé DRS ou si vous n'avez pas au moins quatre hôtes sur lesquels les VM vSphere peuvent être planifiées, définissez antiAffinityGroups.enabled
sur false
.
adminMaster
Immuable
Paramètres de configuration pour les nœuds du plan de contrôle dans le cluster d'administrateur.
adminMaster.cpus
Bêta
Facultatif
Immuable
Entier
Prérempli 4
Par défaut : 4
Nombre de vCPU pour chaque nœud du plan de contrôle dans le cluster d'administrateur.
Exemple :
adminMaster: cpus: 4
adminMaster.memoryMB
Bêta
Facultatif
Immuable
Entier
Prérempli 16384
Par défaut : 16384
Nombre de mébioctets de mémoire pour chaque nœud du plan de contrôle dans le cluster d'administrateur.
Exemple :
adminMaster: memoryMB: 16384
adminMaster.replicas
1.28 et versions ultérieures
Obligatoire pour les nouveaux clusters
Immuable
Entier
Valeurs possibles : 3
Nombre de nœuds de plan de contrôle dans le cluster d'administrateur. Dans la version 1.28 et les versions ultérieures, les nouveaux clusters d'administrateur doivent être à haute disponibilité (HA). Définissez ce champ sur 3
pour créer un cluster d'administrateur HA avec trois nœuds de plan de contrôle.
Exemple :
adminMaster:
replicas: 3
1.16 et versions antérieures
Facultatif
Immuable
Entier
Valeurs possibles : 1 ou 3
Prérempli : 1
Par défaut : 1
Nombre de nœuds de plan de contrôle dans le cluster d'administrateur. Définissez cette valeur sur 3
si vous souhaitez créer un cluster d'administrateur à haute disponibilité. Sinon, définissez cette valeur sur 1
.
Si vous définissez cette valeur sur 3
, vous devez également renseigner la section network.controlPlaneIPBlock
et la section network.hostConfig
.
Si vous définissez cette valeur sur 3
, vous ne pouvez pas utiliser l'équilibreur de charge Seesaw.
Exemple :
adminMaster:
replicas: 3
proxy
Si votre réseau est protégé par un serveur proxy, remplissez cette section. Sinon, supprimez cette section ou laissez-la en commentaire. Le serveur proxy que vous spécifiez ici est utilisé par les clusters d'utilisateur gérés par ce cluster d'administrateur.
Immuable
proxy.url
Obligatoire si la section proxy
est renseignée.
Immuable
Chaîne
Adresse HTTP de votre serveur proxy. Incluez le numéro de port même s'il est identique au port par défaut du schéma.
Exemple :
proxy: url: "http://my-proxy.example.local:80"
Le serveur proxy que vous spécifiez ici est utilisé par vos clusters Google Distributed Cloud. En outre, votre poste de travail d'administrateur est automatiquement configuré pour utiliser ce même serveur proxy, sauf si vous définissez la variable d'environnement HTTPS_PROXY
sur votre poste de travail d'administrateur.
Si vous spécifiez proxy.url
, vous devez également spécifier proxy.noProxy
.
Une fois la configuration du proxy pour le cluster d'administrateur définie, elle ne peut être ni modifiée, ni supprimée, sauf si le cluster est recréé.
proxy.noProxy
Facultatif
Immuable
Chaîne
Liste d'adresses IP, de plages d'adresses IP, de noms d'hôte et de noms de domaine séparés par une virgule qui ne doivent pas passer par le serveur proxy. Lorsque Google Distributed Cloud envoie une requête à l'un de ces hôtes, domaines ou adresses, la requête est envoyée directement.
Exemple :
proxy: noProxy: "10.151.222.0/24,my-host.example.local,10.151.2.1"
privateRegistry
Si vous disposez d'un conteneur de registre privé, remplissez cette section. Sinon, supprimez cette section ou laissez-la en commentaire.
privateRegistry.address
Obligatoire pour les registres privés
Immuable
Chaîne
Adresse IP ou nom de domaine complet de la machine qui exécute votre registre privé.
Exemples :
privateRegistry: address: "203.0.113.10"
privateRegistry: address: "fqdn.example.com"
privateRegistry.credentials.fileRef.path
Obligatoire pour le registre privé
Modifiable
Chaîne
Chemin d'accès d'un fichier de configuration des identifiants contenant le nom d'utilisateur et le mot de passe d'un compte que Google Distributed Cloud peut utiliser pour accéder à votre registre privé.
Exemple :
privateRegistry: credentials: fileRef: path: "my-config-folder/admin-creds.yaml"
privateRegistry.credentials.fileRef.entry
Obligatoire pour le registre privé
Modifiable
Chaîne
Nom du bloc d'identifiants, dans votre fichier de configuration des identifiants, qui contient le nom d'utilisateur et le mot de passe de votre compte de registre privé.
privateRegistry: credentials: fileRef: entry: "private-registry-creds"
privateRegistry.caCertPath
Obligatoire pour le registre privé
Modifiable
Chaîne
Lorsque l'environnement d'exécution de conteneur extrait une image de votre registre privé, celui-ci doit prouver son identité en présentant un certificat. Le certificat du registre est signé par une autorité de certification (CA). L'environnement d'exécution de conteneur utilise le certificat de l'autorité de certification pour valider le certificat du registre.
Définissez ce champ sur le chemin d'accès au certificat de l'autorité de certification.
Exemple :
privateRegistry: caCertPath: "my-cert-folder/registry-ca.crt"
componentAccessServiceAccountKeyPath
Obligatoire
Modifiable
Chaîne
Chemin d'accès au fichier de clé JSON de votre compte de service d'accès au composant.
Exemple :
componentAccessServiceAccountKeyPath: "my-key-folder/access-key.json"
gkeConnect
Obligatoire
Modifiable
Si vous remplissez la section gkeConnect
, le cluster d'administrateur est automatiquement enregistré dans un parc après sa création. Cette section contient des informations sur le projet et le compte de service Google Cloud nécessaires à l'enregistrement du cluster.
Lors de la création ou de la mise à jour du cluster, plusieurs stratégies RBAC sont configurées sur le cluster d'administrateur. Ces stratégies RBAC sont nécessaires pour créer des clusters d'utilisateur dans la console Google Cloud.
gkeConnect.projectID
Obligatoire
Immuable
Chaîne
L'ID de votre projet hôte de parc.
Pour les nouveaux clusters, cet ID de projet doit être identique à celui défini dans stackdriver.projectID
et cloudAuditLogging.projectID
. Si les ID de projet ne sont pas identiques, la création du cluster échoue. Cette exigence ne s'applique pas aux clusters existants.
Exemple :
gkeConnect: projectID: "my-fleet-host-project"
gkeConnect.location
Facultatif
Immuable
Chaîne
Par défaut : global
L'appartenance au parc de chaque cluster est gérée par le Fleet (gkehub.googleapis.com
) et le service Connect (gkeconnect.googleapis.com
). L'emplacement des services peut être global ou régional. Dans les versions 1.28 et ultérieures, vous pouvez éventuellement spécifier la région Google Cloud dans laquelle les services Fleet et Connect s'exécutent. Si cette valeur n'est pas spécifiée, les instances globales des services sont utilisées. Veuillez noter les points suivants :
Les clusters d'administrateur créés avant la version 1.28 sont gérés par les services Fleet et Connect mondiaux.
Pour les nouveaux clusters, si vous incluez ce champ, la région que vous spécifiez doit être identique à celle configurée dans
cloudAuditLogging.clusterLocation
,stackdriver.clusterLocation
etgkeOnPremAPI.location
. Si les régions ne sont pas identiques, la création du cluster échoue.
Exemple :
gkeConnect: location: "us-central1"
gkeConnect.registerServiceAccountKeyPath
Obligatoire
Modifiable
Chaîne
Chemin d'accès au fichier de clé JSON de votre compte de service connect-register.
Exemple :
gkeConnect: registerServiceAccountKeyPath: "my-key-folder/connect-register-key.json"
gkeOnPremAPI
Facultatif
Dans les versions 1.16 et ultérieures, si l'API GKE On-Prem est activée dans votre projet Google Cloud, tous les clusters du projet sont automatiquement enregistrés dans l'API GKE On-Prem dans la région configurée dans stackdriver.clusterLocation
.
Si vous souhaitez enregistrer tous les clusters du projet dans l'API GKE On-Prem, veillez à suivre les étapes de la section Avant de commencer pour activer et utiliser l'API GKE On-Prem dans le projet.
Si vous ne souhaitez pas enregistrer le cluster dans l'API GKE On-Prem, incluez cette section et définissez
gkeOnPremAPI.enabled
surfalse
. Si vous ne souhaitez enregistrer aucun cluster dans le projet, désactivezgkeonprem.googleapis.com
(nom de service de l'API GKE On-Prem) dans le projet. Pour obtenir des instructions, consultez la section Désactiver des services.
L'enregistrement de votre cluster d'administrateur dans l'API GKE On-Prem vous permet d'utiliser des outils standards (la console Google Cloud, Google Cloud CLI ou Terraform) pour mettre à niveau les clusters d'utilisateur gérés par le cluster d'administrateur. L'enregistrement de votre cluster vous permet également d'exécuter des commandes gcloud
pour obtenir des informations sur vos clusters.
Si vous ajoutez cette section et que vous créez ou mettez à jour le cluster d'administrateur, la mise à jour échouera si vous supprimez ensuite la section et que vous mettez à jour le cluster.
gkeOnPremAPI.enabled
Obligatoire si la section gkeOnPremAPI
est incluse.
Modifiable
Booléen
Par défaut : true
Par défaut, le cluster est enregistré dans l'API GKE On-Prem si celle-ci est activée dans votre projet. Définissez ce paramètre sur false
si vous ne souhaitez pas enregistrer le cluster.
Une fois le cluster enregistré dans l'API GKE On-Prem, si vous devez le désinscrire, apportez la modification suivante, puis mettez le cluster à jour :
gkeOnPremAPI: enabled: false
gkeOnPremAPI.location
Immuable
Chaîne
Par défaut : stackdriver.clusterLocation
Région Google Cloud dans laquelle l'API GKE On-Prem s'exécute et stocke les métadonnées du cluster. Choisissez l'une des régions compatibles.
Vous devez utiliser la même région que celle configurée dans cloudAuditLogging.clusterLocation
, gkeConnect.location
et stackdriver.clusterLocation
. Si gkeOnPremAPI.enabled
est défini sur false
, n'incluez pas ce champ.
stackdriver
Obligatoire par défaut
Modifiable
Si vous souhaitez activer Cloud Logging et Cloud Monitoring pour votre cluster, renseignez cette section. Sinon, supprimez cette section.
Cette section est obligatoire par défaut. Autrement dit, si vous ne remplissez pas cette section, vous devez inclure l'option --skip-validation-stackdriver
lorsque vous exécutez gkectl create admin
.
Cette section est obligatoire dans le cluster d'administrateur si vous souhaitez gérer le cycle de vie des clusters d'utilisateur utilisant les clients API GKE On-Prem.
stackdriver.projectID
Requis pour la journalisation et la surveillance
Immuable
Chaîne
L'ID de votre projet hôte de parc.
Pour les nouveaux clusters, cet ID de projet doit être identique à celui défini dans gkeConnect.projectID
et cloudAuditLogging.projectID
. Si les ID de projet ne sont pas identiques, la création du cluster échoue. Cette exigence ne s'applique pas aux clusters existants.
Si nécessaire, vous pouvez configurer un routeur de journaux dans ce projet pour acheminer les journaux vers des buckets de journaux dans un autre projet. Pour savoir comment configurer le routeur de journaux, consultez la section Destinations compatibles.
Exemple :
stackdriver: projectID: "my-fleet-host-project"
stackdriver.clusterLocation
Requis pour la journalisation et la surveillance
Immuable
Chaîne
Prérempli : "us-central1"
Région Google Cloud dans laquelle vous souhaitez stocker les journaux. Nous vous recommandons de choisir une région à proximité de votre centre de données sur site.
Pour les nouveaux clusters, si vous incluez les sections gkeOnPremAPI
et cloudAuditLogging
dans le fichier de configuration, la région que vous définissez ici doit être la même que celle que vous avez définie dans cloudAuditLogging.clusterLocation
, gkeConnect.location
et gkeOnPremAPI.location
. Si les régions ne sont pas identiques, la création du cluster échoue.
Exemple :
stackdriver: clusterLocation: "us-central1"
stackdriver.enableVPC
Facultatif
Immuable
Booléen
Prérempli : faux
Si le réseau de votre cluster est contrôlé par un VPC, définissez ce champ sur true
.
Ainsi, toute la télémétrie passe par les adresses IP restreintes de Google.
Sinon, définissez cette valeur sur false
.
Exemple :
stackdriver: enableVPC: false
stackdriver.serviceAccountKeyPath
Requis pour la journalisation et la surveillance
Modifiable
Chaîne
Chemin du fichier de clé JSON pour votre compte de service de journalisation-surveillance.
Pour savoir comment mettre à jour ce champ dans un cluster existant, consultez la page Appliquer une rotation des clés de compte de service.
Exemple :
stackdriver: serviceAccountKeyPath: "my-key-folder/log-mon-key.json"
stackdriver.disableVsphereResourceMetrics
Facultatif
Modifiable
Applicable à la journalisation et la surveillance
Booléen
Prérempli : faux
Par défaut : faux
Définissez cette valeur sur true
pour désactiver la collecte de métriques depuis vSphere.
Sinon, définissez cette valeur sur false
.
Cette section est obligatoire dans le cluster d'administrateur si vous souhaitez gérer le cycle de vie des clusters d'utilisateur dans la console Google Cloud.
Exemple :
stackdriver: disableVsphereResourceMetrics: true
cloudAuditLogging
Si vous souhaitez intégrer les journaux d'audit du serveur d'API Kubernetes de votre cluster aux journaux d'audit Cloud, remplissez cette section. Sinon, supprimez cette section ou laissez-la en commentaire.
Modifiable
Cette section est obligatoire dans le cluster d'administrateur si vous souhaitez gérer le cycle de vie des clusters d'utilisateur utilisant les clients API GKE On-Prem.
cloudAuditLogging.projectID
Obligatoire pour les journaux d'audit Cloud
Immuable
Chaîne
L'ID de votre projet hôte de parc.
Pour les nouveaux clusters, cet ID de projet doit être identique à celui défini dans gkeConnect.projecID
et stackdriver.projectID
. Si les ID de projet ne sont pas identiques, la création du cluster échoue. Cette exigence ne s'applique pas aux clusters existants.
Si nécessaire, vous pouvez configurer un routeur de journaux dans ce projet pour acheminer les journaux vers des buckets de journaux dans un autre projet. Pour savoir comment configurer le routeur de journaux, consultez la section Destinations compatibles.
Exemple :
cloudAuditLogging: projectID: "my-fleet-host-project"
cloudAuditLogging.clusterLocation
Obligatoire pour les journaux d'audit Cloud
Immuable
Chaîne
Région Google Cloud dans laquelle vous souhaitez stocker les journaux d'audit. Nous vous recommandons de choisir une région à proximité de votre centre de données sur site.
Pour les nouveaux clusters, si vous incluez les sections gkeOnPremAPI
et stackdriver
dans le fichier de configuration, la région que vous définissez ici doit être la même que celle que vous avez définie dans gkeConnect.location
, gkeOnPremAPI.location
et stackdriver.clusterLocation
. Si les régions ne sont pas identiques, la création du cluster échoue.
Exemple :
cloudAuditLogging: clusterLocation: "us-central1"
cloudAuditLogging.serviceAccountKeyPath
Obligatoire pour les journaux d'audit Cloud
Modifiable
Chaîne
Chemin d'accès au fichier de clé JSON de votre compte de service de journalisation-audit.
Pour savoir comment mettre à jour ce champ dans un cluster existant, consultez la page Appliquer une rotation des clés de compte de service.
Exemple :
cloudAuditLogging: serviceAccountKeyPath: "my-key-folder/audit-log-key.json"
clusterBackup.datastore
Bêta
Facultatif
Modifiable
Chaîne
Si vous souhaitez activer la sauvegarde du cluster d'administrateur, définissez ce paramètre sur le datastore vSphere dans lequel vous souhaitez enregistrer les sauvegardes de cluster.
Exemple :
clusterBackup: datastore: "my-datastore"
autoRepair.enabled
Facultatif
Modifiable
Booléen
Prérempli : vrai
Définissez cette valeur sur true
pour activer la réparation automatique des nœuds.
Sinon, définissez cette valeur sur false
.
Pour mettre à jour la valeur de ce champ, utilisez gkectl update admin
.
Exemple :
autoRepair: enabled: true
secretsEncryption
Si vous souhaitez chiffrer des secrets sans avoir besoin de KMS (Key Management Service) externe ni d'autres dépendances, remplissez cette section.
Sinon, supprimez cette section ou laissez-la en commentaire.
Immuable
secretsEncryption.mode
Obligatoire pour le chiffrement des secrets
Immuable
Chaîne
Valeur possible : "GeneratedKey"
Prérempli : "GeneratedKey"
Mode de chiffrement du secret.
secretsEncryption: mode: "GeneratedKey"
secretsEncryption.generatedKey.keyVersion
Obligatoire pour le chiffrement des secrets
Modifiable
Entier
Prérempli : 1
Entier de votre choix à utiliser pour le numéro de version de clé. Nous vous recommandons de commencer par 1
.
Exemple :
secretsEncryption: generatedKey: keyVersion: 1
secretsEncryption.generatedKey.disabled
Obligatoire pour le chiffrement des secrets
Modifiable
Booléen
Prérempli : faux
Définissez cette valeur sur true
pour désactiver le chiffrement des secrets. Sinon, définissez-la sur false
.
Exemple :
secretsEncryption: generatedKey: disabled: false
osImageType
Facultatif
Modifiable
Chaîne
Valeurs possibles : "ubuntu_containerd", "cos", "ubuntu_cgv2", "cos_cgv2"
Prérempli : "ubuntu_cgv2"
Par défaut : "ubuntu_containerd"
Type d'image d'OS à exécuter sur vos nœuds de cluster d'administrateur.
Exemple :
osImageType: "cos"