Créer un cluster d'administrateur

Cette page explique comment créer un cluster d'administrateur pour Anthos clusters on VMware (GKE On-Prem).

Ces instructions sont complètes. Pour une présentation plus courte de la création d'un cluster d'administrateur, consultez la section Créer un cluster d'administrateur (guide de démarrage rapide).

Avant de commencer

Créez un poste de travail d'administrateur.

Obtenir une connexion SSH à votre poste de travail administrateur

Obtenez une connexion SSH à votre poste de travail administrateur.

Rappelez-vous que gkeadm a activé votre compte de service d'accès au composant sur le poste de travail administrateur.

Effectuez toutes les étapes décrites dans cette rubrique sur votre poste de travail administrateur dans le répertoire d'accueil.

Fichier de configuration des identifiants

Lorsque vous avez utilisé gkeadm pour créer votre poste de travail administrateur, vous avez rempli un fichier de configuration d'identifiants nommé credential.yaml. Ce fichier contient le nom d'utilisateur et le mot de passe de votre serveur vCenter.

Fichier de configuration du cluster d'administrateur

Lorsque gkeadm a créé votre poste de travail administrateur, il a généré un fichier de configuration nommé admin-cluster.yaml. Ce fichier de configuration vous permet de créer votre cluster d'administrateur.

Remplir votre fichier de configuration

name

Si vous souhaitez spécifier un nom pour votre cluster d'administrateur, renseignez le champ name.

bundlePath

Ce champ est déjà renseigné.

vCenter

La plupart des champs de ce fichier de cette section sont déjà renseignés avec les valeurs que vous avez saisies lors de la création de votre poste de travail administrateur. À l'exception du champ dataDisk que vous devez remplir ici.

network

Décidez comment vous souhaitez que les nœuds de votre cluster obtiennent leurs adresses IP. Vous disposez des options suivantes :

  • Depuis un serveur DHCP. Définissez network.ipMode.type sur "dhcp".

  • À partir d'une liste d'adresses IP statiques que vous fournissez. Définissez network.ipMode.type sur "static", puis créez un fichier de bloc d'adresses IP qui fournit les adresses IP statiques.

Définissez les valeurs des autres champs dans la section network.

Que vous utilisiez un serveur DHCP ou que vous spécifiez une liste d'adresses IP statiques, vous avez besoin d'un nombre suffisant d'adresses IP pour répondre aux critères suivants :

  • Trois nœuds dans le cluster administrateur afin d'exécuter le plan de contrôle et les modules complémentaires du cluster d'administrateur.

  • Un nœud supplémentaire dans le cluster administrateur à utiliser temporairement pendant les mises à niveau.

  • Pour chaque cluster utilisateur que vous souhaitez créer, un ou trois nœuds du cluster administrateur pour exécuter les composants du plan de contrôle du cluster utilisateur. Si vous souhaitez un plan de contrôle à haute disponibilité pour un cluster utilisateur, vous avez besoin de trois nœuds dans le cluster administrateur. Sinon, vous n'avez besoin que d'un seul nœud dans le cluster d'administrateur pour le plan de contrôle du cluster d'utilisateur.

Par exemple, supposons que vous souhaitiez créer deux clusters d'utilisateur : l'un avec un plan de contrôle à haute disponibilité et l'autre avec un plan de contrôle sans haute disponibilité. Vous auriez besoin de huit adresses IP pour les nœuds suivants dans le cluster d'administrateur :

  • Trois nœuds pour le plan de contrôle et les modules complémentaires du cluster d'administrateur
  • Un nœud temporaire
  • Trois nœuds pour le plan de contrôle du cluster d'utilisateur à haute disponibilité
  • Un nœud pour le plan de contrôle du cluster d'utilisateur sans haute disponibilité

Comme mentionné précédemment, si vous souhaitez utiliser des adresses IP statiques, vous devez fournir un fichier de bloc d'adresses IP. Voici un exemple de fichier de bloc d'adresses IP avec huit hôtes :

blocks:
  - netmask: 255.255.252.0
    gateway: 172.16.23.254
    ips:
    - ip: 172.16.20.10
      hostname: admin-host1
    - ip: 172.16.20.11
      hostname: admin-host2
    - ip: 172.16.20.12
      hostname: admin-host3
    - ip: 172.16.20.13
      hostname: admin-host4
    - ip: 172.16.20.14
      hostname: admin-host5
    - ip: 172.16.20.15
      hostname: admin-host6
    - ip: 172.16.20.16
      hostname: admin-host7
    - ip: 172.16.20.17
      hostname: admin-host8

loadBalancer

Réservez une adresse IP virtuelle pour le serveur d'API Kubernetes de votre cluster d'administration. Réservez une autre adresse IP virtuelle pour le serveur de modules complémentaires. Indiquez vos adresses IP virtuelles comme valeurs pour loadBalancer.vips.controlPlaneVIP et loadBalancer.vips.addonsVIP.

Choisissez le type d'équilibrage de charge que vous souhaitez utiliser. Vous disposez des options suivantes :

  • Équilibrage de charge groupé Seesaw. Définissez loadBalancer.kind sur "Seesaw", puis remplissez la section loadBalancer.seesaw.

  • Équilibrage de charge intégré avec F5 BIG-IP Définissez loadBalancer.kind sur "F5BigIP", puis remplissez la section f5BigIP.

  • Équilibrage de charge manuel. Définissez loadBalancer.kind sur "ManualLB", puis remplissez la section manualLB.

antiAffinityGroups

Définissez antiAffinityGroups.enabled sur true ou false en fonction de votre préférence.

adminMaster

Renseignez la section adminMaster ou supprimez-la en fonction de vos préférences.

addonNode

Définissez addonNode.autoResize.enabled sur true ou false en fonction de votre préférence.

proxy

Si le réseau qui contiendra vos nœuds de cluster d'administrateur se trouve derrière un serveur proxy, remplissez la section proxy.

privateRegistry

Choisissez où vous souhaitez conserver les images de conteneurs pour les composants Anthos clusters on VMware. Vous disposez des options suivantes :

  • gcr.io. Ne remplissez pas la section privateRegistry.

  • Votre propre registre Docker privé.

Pour créer votre propre registre Docker privé, procédez comme suit :

  1. Remplissez la section privateRegistry.

  2. Copiez le certificat de registre à l'emplacement requis dans /etc/docker/certs.d/REGISTRY_SERVER_ADDRESS/ca.crt, s'il n'existe pas déjà. Le certificat de registre est défini dans privateRegistry.caCertPath dans la configuration initiale de l'administrateur.

    mkdir -p /etc/docker/certs.d/REGISTRY_SERVER_ADDRESS
    cp CERTIFICATE_PATH /etc/docker/certs.d/REGISTRY_SERVER_ADDRESS/ca.crt
    

    Remplacez les éléments suivants :

    • REGISTRY_SERVER_ADDRESS par l'adresse IP de votre registre privé.
    • CERTIFICATE_PATH par le chemin d'accès au certificat de registre.

componentAccessServiceAccountKeyPath

Ce champ est déjà renseigné.

gkeConnect

Si vous souhaitez enregistrer votre cluster administrateur dans un parc Google Cloud, remplissez la section gkeConnect.

stackdriver

Si vous souhaitez activer Cloud Logging et Cloud Monitoring pour votre cluster, renseignez la section stackdriver.

cloudAuditLogging

Si vous souhaitez activer Cloud Audit Logs pour votre cluster, renseignez la section cloudAuditLogging.

clusterBackup

Définissez clusterBackup.datastore sur true ou false en fonction de votre préférence.

autoRepair

Définissez autoRepair.enabled sur true ou false en fonction de votre préférence.

secretsEncryption

Si vous souhaitez activer le chiffrement permanent des secrets, remplissez la section secretsEncryption.

Valider votre fichier de configuration

Après avoir rempli le fichier de configuration du cluster d'administrateur, exécutez gkectl check-config pour vérifier que le fichier est valide :

gkectl check-config --config [CONFIG_PATH]

[CONFIG_PATH] est le chemin d'accès au fichier de configuration de votre cluster d'administrateur.

Si la commande renvoie des messages d'échec, corrigez les problèmes et validez à nouveau le fichier.

Si vous souhaitez ignorer les validations les plus longues, transmettez l'option --fast. Pour ignorer des validations individuelles, utilisez les options --skip-validation-xxx. Pour en savoir plus sur la commande check-config, consultez la page Exécuter des vérifications préliminaires.

Exécuter gkectl prepare

Exécutez gkectl prepare pour initialiser votre environnement vSphere :

gkectl prepare --config [CONFIG_PATH]

La commande gkectl prepare exécute les tâches préparatoires suivantes :

  • Importe les images d'OS vers vSphere et les marque comme modèles de VM.

  • Si vous utilisez un registre Docker privé, cette commande transfère les images de conteneur Docker vers votre registre.

  • Cette commande peut éventuellement valider les attestations de version des images de conteneur, vérifiant ainsi que les images ont été conçues et signées par Google, et sont prêtes pour le déploiement.

Créer un équilibreur de charge Seesaw pour votre cluster d'administrateur

Si vous avez choisi d'utiliser l'équilibreur de charge groupé Seesaw, suivez la procédure dans cette section. Sinon, vous pouvez ignorer cette section.

Créez et configurez la VM pour votre équilibreur de charge Seesaw :

gkectl create loadbalancer --config [CONFIG_PATH]

Créer le cluster d'administrateur

Créez le cluster d'administrateur :

gkectl create admin --config [CONFIG_PATH]

[CONFIG_PATH] est le chemin d'accès au fichier de configuration de votre cluster d'administrateur.

Localiser le fichier kubeconfig du cluster d'administrateur

La commande gkectl create admin crée un fichier kubeconfig nommé kubeconfig dans le répertoire actuel. Vous aurez besoin de ce fichier kubeconfig ultérieurement pour interagir avec votre cluster d'administrateur.

Si vous le souhaitez, vous pouvez modifier le nom et l'emplacement de votre fichier kubeconfig.

Vérifier que votre cluster d'administrateur est en cours d'exécution

Vérifiez que votre cluster d'administrateur est en cours d'exécution :

kubectl get nodes --kubeconfig ADMIN_CLUSTER_KUBECONFIG

Remplacez ADMIN_CLUSTER_KUBECONFIG par le chemin d'accès du fichier kubeconfig de votre cluster d'administrateur.

Le résultat affiche les nœuds du cluster d'administrateur. Exemple :

gke-admin-master-hdn4z            Ready    control-plane,master ...
gke-admin-node-7f46cc8c47-g7w2c   Ready ...
gke-admin-node-7f46cc8c47-kwlrs   Ready ...

Gérer le fichier checkpoint.yaml

Lorsque vous avez exécuté la commande gkectl create admin pour créer le cluster d'administrateur, elle a créé un fichier checkpoint.yaml dans le même dossier de datastore que le disque de données du cluster d'administrateur. Par défaut, ce fichier est nommé DATA_DISK_NAME‑checkpoint.yaml. Si la longueur de DATA_DISK_NAME est supérieure ou égale à 245 caractères, le nom est DATA_DISK_NAME.yaml en raison de la limite de longueur des noms de fichier vSphere. Remplacez DATA_DISK_NAME par le nom du disque de données.

Ce fichier contient l'état et les identifiants du cluster d'administrateur, et il est utilisé pour les mises à niveau ultérieures. Comme pour le disque de données du cluster d'administrateur, ne supprimez pas ce fichier, sauf si vous suivez la procédure de suppression du cluster d'administrateur.

Si vous avez activé le chiffrement de VM dans vCenter, vous devez disposer de l'autorisation Cryptographer.Access avant de créer ou de mettre à niveau votre cluster d'administrateur si vous souhaitez importer le fichier de point de contrôle. Si vous ne pouvez pas obtenir cette autorisation, vous pouvez désactiver l'importation du fichier de point de contrôle avec l'indicateur masqué --disable-checkpoint lorsque vous exécutez une commande pertinente.

Le fichier check.yaml est automatiquement mis à jour lorsque vous exécutez la commande gkectl upgrade admin ou lorsque vous exécutez une commande gkectl update qui affecte le cluster d'administrateur.

Dépannage

Consultez la page Résoudre les problèmes liés à la création et à la mise à niveau d'un cluster.

Étapes suivantes

Créez un cluster d'utilisateur.