Comprendre les vérifications préliminaires

Dans GKE sur Bare Metal, vous pouvez exécuter des vérifications préliminaires pour différentes situations:

  • GKE sur Bare Metal exécute des vérifications préliminaires lorsque vous créez ou mettez à jour des clusters d'administrateur, hybrides, autonomes ou d'utilisateur et des ressources de pool de nœuds avec bmctl. En cas d'échec des vérifications, aucune modification n'est effectuée. Vous pouvez également contourner ces vérifications.
  • GKE sur Bare Metal exécute également des vérifications préliminaires internes lorsque vous appliquez des ressources Kubernetes à des clusters d'utilisateur à partir d'un cluster d'administrateur ou hybride. Les vérifications sont exécutées avant que les modifications ne soient réellement appliquées aux clusters d'utilisateur concernés. En cas d'échec des vérifications, aucune modification n'est effectuée. Vous pouvez également contourner ces vérifications ou les exécuter explicitement.

Vérifications préliminaires pour la création de clusters avec bmctl

Lorsque vous créez des clusters admin, hybride, autonome ou utilisateur avec la commande bmctl, GKE sur Bare Metal exécute automatiquement des vérifications préliminaires avant d'apporter des modifications.

Une fois les vérifications validées, GKE sur Bare Metal crée les clusters.

Ignorer les résultats des vérifications préliminaires automatiques

Si vous souhaitez contourner ces vérifications préliminaires automatiques, vous pouvez utiliser l'option facultative --force dans la commande.

Exécuter des vérifications préliminaires indépendamment

Vous pouvez également effectuer vous-même des vérifications préliminaires avant de créer un cluster. Cela peut vous faire gagner du temps en vous assurant que vos ressources machine et de nœud répondent aux besoins des vérifications.

  • La commande suivante valide le fichier de configuration de cluster spécifié, mais n'essaie pas de créer le cluster lui-même:

    bmctl check config --cluster CLUSTER_NAME
    

    Remplacez CLUSTER_NAME par le nom du cluster dont vous souhaitez vérifier le fichier de configuration.

  • Cette commande vérifie si les machines et le réseau sont prêts à créer le cluster :

    bmctl check preflight --cluster CLUSTER_NAME
    

    Remplacez CLUSTER_NAME par le nom du cluster que vous vérifiez.

Exécuter les dernières vérifications préliminaires et les dernières vérifications d'état

Vous pouvez effectuer des vérifications préliminaires sur votre système. Les vérifications préliminaires garantissent que vos machines et votre réseau sont prêts pour la création du cluster. La commande suivante utilise la dernière liste de vérifications pour s'assurer que vos machines et votre réseau sont prêts à être créés:

bmctl check preflight --cluster CLUSTER_NAME --check-image-version latest

Remplacez CLUSTER_NAME par le nom du cluster que vous vérifiez.

Vous pouvez également effectuer les vérifications de l'état d'un cluster actif pour déterminer s'il est opérationnel. Pour effectuer les vérifications d'état les plus récentes sur un cluster actif, exécutez la commande suivante:

bmctl check cluster --cluster CLUSTER_NAME --check-image-version latest

Remplacez CLUSTER_NAME par le nom du cluster que vous vérifiez.

Vérifications préliminaires pour les mises à niveau

La commande bmctl check preflight vous permet d'exécuter une vérification préliminaire avant de mettre à niveau votre cluster. Pour vérifier si les clusters sont prêts pour une mise à niveau, exécutez la commande de vérification préliminaire suivante avant de lancer la mise à niveau:

  1. Mettez à jour la version du cluster (anthosBareMetalVersion) dans le fichier de configuration du cluster.
  2. La commande suivante vous permet de vérifier si les clusters sont prêts pour une mise à niveau et d'exécuter une vérification préliminaire:

    bmctl check preflight --kubeconfig ADMIN_CLUSTER_KUBECONFIG_PATH
     -c CLUSTER_NAME
    

    Remplacez les éléments suivants :

    • CLUSTER_NAME : nom du cluster à mettre à niveau.
    • ADMIN_CLUSTER_KUBECONFIG_PATH: chemin d'accès au fichier kubeconfig du cluster d'administrateur.

    Notez que le bmctl check preflight pour la mise à niveau fonctionne lorsque le cluster d'origine est en version 1.13.1 ou ultérieure.

    Lorsque vous créez la vérification préliminaire à l'aide de cette commande pour tester une mise à niveau d'un cluster d'administrateur ou d'utilisateur, une ressource personnalisée PreflightCheck est créée dans le cluster d'administrateur.

Vérifications préliminaires pour la création d'un cluster d'utilisateur

Les clusters d'utilisateur sont créés à partir d'un cluster d'administrateur ou hybride existant. GKE sur Bare Metal exécute automatiquement des vérifications préliminaires avant d'apporter des modifications. Vous pouvez également effectuer des vérifications préliminaires avec bmctl avant de créer un cluster.

  • La commande suivante valide le fichier de configuration de cluster spécifié, mais n'essaie pas de créer le cluster lui-même:

    bmctl check config --cluster CLUSTER_NAME --admin-kubeconfig ADMIN_KUBECONFIG_PATH
    

    Remplacez CLUSTER_NAME par le nom du cluster d'utilisateur que vous vérifiez et remplacez ADMIN_KUBECONFIG_PATH par le chemin d'accès au fichier kubeconfig du cluster d'administrateur associé.

  • Cette commande vérifie si les machines et le réseau sont prêts à créer le cluster :

    bmctl check preflight --cluster CLUSTER_NAME --admin-kubeconfig ADMIN_KUBECONFIG_PATH
    

bmctl permet d'utiliser --kubeconfig comme alias pour l'option --admin-kubeconfig.

Vérifications préliminaires internes sur les clusters existants

GKE sur Bare Metal effectue également des vérifications préliminaires internes lorsque vous appliquez des ressources Kubernetes à un cluster existant. Si l'une des vérifications échoue, GKE sur Bare Metal n'apporte aucune modification aux nœuds associés, sauf si vous avez spécifiquement contrôlé les vérifications.

Contourner les vérifications préliminaires lors de l'application de ressources Kubernetes

Pour ignorer les vérifications préliminaires internes lors de l'application de ressources à des clusters existants, vous devez définir le champ BypassPreflightCheck sur true dans le fichier YAML du cluster.

Voici un fragment de fichier YAML de configuration de cluster affichant le champ bypassPreflightCheck défini sur true.

# Sample cluster config to bypass preflight check errors:

apiVersion: v1
kind: Namespace
metadata:
  name: cluster-user1
---
apiVersion: baremetal.cluster.gke.io/v1
kind: Cluster
metadata:
  name: user1
  namespace: cluster-user1
spec:
  type: user
  bypassPreflightCheck: true
  # Anthos cluster version.
  anthosBareMetalVersion: 1.14.11
....

Détails des vérifications préliminaires lors de l'installation

GKE sur Bare Metal vérifie diverses conditions préalables liées au système d'exploitation, aux logiciels et à la machine lors de l'exécution des vérifications préliminaires.

Pour en savoir plus, consultez la page Présentation des conditions préalables à l'installation.