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 peuvent ne pas être une représentation précise du cluster.

Une autre façon de créer un cluster consiste à utiliser la console Google Cloud. Dans ce cas, vous n'aurez aucun fichier de configuration de cluster. Par la suite, vous aurez peut-être besoin de fichiers de configuration pour effectuer certaines mises à jour du cluster.

Si vous pensez que vos fichiers de configuration d'origine ne sont pas synchronisés avec votre cluster ou si vous ne disposez 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 avec précision 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 d'accès au 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 groupe Google Distributed Cloud. Le fichier de groupe se trouve sur votre poste de travail administrateur, généralement dans /var/lib/gke/bundles/gke-onprem-vsphere-VERSION-full.tgz. Si vous n'avez pas encore de fichier de groupe, 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 se trouvent dans un autre répertoire, vous pouvez utiliser le paramètre --output-dir pour spécifier le chemin d'accès à un répertoire de sortie. Exemple :

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

S'il existe déjà des fichiers dans le répertoire de sortie par défaut ou dans un répertoire de sortie spécifié, vous devez inclure l'option --force afin que les nouveaux fichiers remplacent les fichiers existants. Sinon, la commande échouera. 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 aux composants
Toujours généré
vcenter-ca-cert.pem Certificat racine de votre serveur vCenter
Toujours généré
admin-cluster-ipblock.yaml Fichier de blocs 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 blocs 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 du 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 les identifiants préparés
vcenter-ca-cert.pem Certificat racine de votre serveur vCenter
Toujours généré
user-cluster-ipblock.yaml Fichier de blocs 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 blocs 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 du 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 les 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 que ce fichier soit généré, vous devez inclure l'option --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 du serveur (SNI)
sni-key.json Fichier de clé privée pour le certificat de diffusion supplémentaire
Généré si le cluster est configuré pour utiliser l'extension SNI