Générer des fichiers de configuration à partir d'un cluster

Ce document explique comment générer un ensemble de fichiers de configuration à partir d'un cluster existant.

Pour créer un cluster, vous pouvez utiliser l'outil de ligne de commande gkectl. Commencez par créer un ensemble de fichiers de configuration pour le cluster. Exécutez ensuite l'une des commandes suivantes :

  • gkectl create admin pour créer un cluster d'administrateur
  • gkectl create cluster pour créer un cluster d'utilisateur

Au fil du temps, vos fichiers de configuration d'origine peuvent ne plus être synchronisés avec l'état réel de votre cluster. Par exemple, si vous mettez à jour un cluster en modifiant une ressource personnalisée, vos fichiers de configuration d'origine ne représentent peut-être plus le cluster de manière précise.

Vous pouvez également créer un cluster à l'aide de la console Google Cloud. Dans ce cas, vous n'avez pas de fichiers de configuration de cluster. Vous aurez peut-être besoin de fichiers de configuration de cluster pour apporter certaines modifications au cluster.

Si vous pensez que vos fichiers de configuration d'origine ne sont pas synchronisés avec votre cluster ou si vous n'avez pas de fichiers de configuration, vous pouvez utiliser la commande gkectl get-config pour générer un nouvel ensemble de fichiers de configuration qui représentent précisément l'état actuel du cluster.

Vous pouvez utiliser gkectl get-config avec :

  • Clusters d'utilisateur
  • Clusters d'administrateur

Générer les fichiers de configuration

Pour générer un nouvel ensemble de fichiers de configuration pour un cluster d'utilisateur :

gkectl get-config cluster --kubeconfig ADMIN_CLUSTER_KUBECONFIG \
    --cluster-name USER_CLUSTER_NAME

Remplacez les éléments suivants :

  • ADMIN_CLUSTER_KUBECONFIG : chemin du fichier kubeconfig du cluster d'administrateur.

  • USER_CLUSTER_NAME : nom du cluster d'utilisateur.

Pour générer un nouvel ensemble de fichiers de configuration pour un cluster d'administrateur :

gkectl get-config admin --kubeconfig ADMIN_CLUSTER_KUBECONFIG \
    --bundle-path BUNDLE

Remplacez les éléments suivants :

  • ADMIN_CLUSTER_KUBECONFIG : fichier kubeconfig du cluster d'administrateur

  • BUNDLE : chemin d'accès au fichier de bundle Google Distributed Cloud. Le fichier de bundle se trouve sur votre poste de travail administrateur, généralement à l'emplacement /var/lib/gke/bundles/gke-onprem-vsphere-VERSION-full.tgz. Si vous n'avez pas encore de fichier de bundle, vous pouvez en télécharger un.

Par défaut, les fichiers de configuration générés sont écrits dans un sous-répertoire du répertoire actuel. Pour un cluster d'utilisateur, le répertoire de sortie est nommé user-cluster-config-output. Pour un cluster d'administrateur, le répertoire de sortie est nommé admin-cluster-config-output.

Si vous préférez que les fichiers générés soient placés dans un autre répertoire, vous pouvez utiliser le paramètre --output-dir pour spécifier le chemin d'accès d'un répertoire de sortie. Exemple :

gkectl get-config cluster --kubeconfig my-kubeconfig \
    --cluster-name my-cluster \
    --output-dir /home/me/configuration/generated-files

Si le répertoire de sortie par défaut ou un répertoire de sortie spécifié contient déjà des fichiers, vous devez inclure l'indicateur --force pour que les fichiers nouvellement générés remplacent les fichiers existants. Sinon, la commande échoue. Exemple :

gkectl get-config cluster --kubeconfig my-kubeconfig \
    --cluster-name my-cluster \
    --output-dir /home/me/configuration/generated-files
    --force

Fichiers générés pour un cluster d'administrateur

Nom de fichierDescription
admin-cluster.yaml Fichier de configuration du cluster d'administrateur
Toujours généré
admin-cluster-creds.yaml Fichier d'identifiants du cluster
Toujours généré
component-access-key.json Fichier de clé JSON pour votre compte de service d'accès au composant
Toujours généré
vcenter-ca-cert.pem Certificat racine pour votre serveur vCenter
Toujours généré
admin-cluster-ipblock.yaml Fichier de bloc d'adresses IP pour les nœuds du cluster
Généré si les nœuds du cluster utilisent des adresses IP statiques
admin-seesaw-ipblock.yaml Fichier de bloc d'adresses IP pour les VM Seesaw
Généré si le cluster utilise l'équilibreur de charge Seesaw
connect-register-key.json Fichier de clé JSON pour votre compte de service connect-register
Toujours généré
private-registry-ca.crt Certificat racine pour votre serveur de registre privé
Généré si le cluster utilise un registre privé
stackdriver-key.json Fichier de clé JSON pour votre compte de service de surveillance des journaux
Généré si le cluster est configuré pour exporter les journaux et les métriques vers Cloud Logging et Cloud Monitoring (section stackdriver dans le fichier de configuration du cluster)
audit-logging-key.json Fichier de clé JSON pour votre compte de service de journalisation d'audit
Généré si le cluster utilise Cloud Audit Logs

Fichiers générés pour un cluster d'utilisateur

Nom de fichierDescription
user-cluster.yaml Fichier de configuration du cluster d'utilisateur
Toujours généré
user-cluster-creds.yaml Fichier d'identifiants du cluster
Généré si le cluster n'utilise pas d'identifiants préparés
vcenter-ca-cert.pem Certificat racine pour votre serveur vCenter
Toujours généré
user-cluster-ipblock.yaml Fichier de bloc d'adresses IP pour les nœuds du cluster
Généré si les nœuds du cluster utilisent des adresses IP statiques
user-seesaw-ipblock.yaml Fichier de bloc d'adresses IP pour les VM Seesaw
Généré si le cluster utilise l'équilibreur de charge Seesaw
private-registry-ca.crt Certificat racine pour votre serveur de registre privé
Généré si le cluster utilise un registre privé
component-access-key.json Fichier de clé JSON pour votre compte de service d'accès aux composants
Généré si le cluster n'utilise pas de registre privé
connect-register-key.json Fichier de clé JSON pour votre compte de service connect-register
Toujours généré
stackdriver-key.json Fichier de clé JSON pour votre compte de service de surveillance des journaux
Généré si le cluster est configuré pour exporter les journaux et les métriques vers Cloud Logging et Cloud Monitoring (section stackdriver dans le fichier de configuration du cluster)
audit-logging-key.json Fichier de clé JSON pour votre compte de service de journalisation d'audit
Généré si le cluster utilise Cloud Audit Logs
usage-metering-key.json Fichier de clé JSON pour votre compte de service de mesure de l'utilisation
Généré si le cluster stocke des données d'utilisation dans un ensemble de données BigQuery
secrets.yaml Fichier de configuration des secrets
Généré si le cluster utilise des identifiants préparés
Pour générer ce fichier, vous devez inclure l'indicateur --export-secrets-config dans la commande gkectl get-config cluster.
sni-cert.pem Certificat de diffusion supplémentaire pour le serveur d'API Kubernetes
Généré si le cluster est configuré pour utiliser l'indication du nom de serveur (SNI)
sni-key.json Fichier de clé privée du certificat de diffusion supplémentaire
Généré si le cluster est configuré pour utiliser la SNI