Avec les clusters Anthos sur Bare Metal, vous pouvez effectuer des vérifications préliminaires dans différentes situations :
- Les clusters Anthos sur Bare Metal effectuent des vérifications préliminaires lorsque vous créez ou mettez à jour des clusters d'administrateur, hybrides, autonomes ou d'utilisateur, ainsi que 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. - Les clusters Anthos sur Bare Metal exécutent également des vérifications internes préliminaires lorsque vous appliquez des ressources Kubernetes aux clusters d'utilisateur à partir d'un cluster d'administrateur ou hybride. Les vérifications sont exécutées avant que les modifications ne soient 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 lors de la création de clusters à l'aide de bmctl
Lorsque vous créez des clusters d'administrateur, hybrides, autonomes ou d'utilisateur avec la commande bmctl
, les clusters Anthos sur Bare Metal exécutent automatiquement des vérifications préliminaires avant toute modification.
Une fois les vérifications terminées, Anthos Clusters on 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épendantes
Vous pouvez également effectuer des vérifications préliminaires avant de créer un cluster, afin de vous assurer que les ressources de votre machine et de votre nœud réussissent bien les 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
Cette commande vérifie si les machines et le réseau sont prêts à créer le cluster :
bmctl check preflight --cluster CLUSTER_NAME
Seules les versions 1.7.0 et ultérieures de Anthos Clusters on Bare Metal sont compatibles avec la création de clusters d'utilisateur à l'aide de bmctl
.
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. Les clusters Anthos sur Bare Metal exécutent automatiquement des vérifications préliminaires avant toute modification. Vous pouvez également effectuer des vérifications préliminaires avec kubectl
avant de créer un cluster.
Créez un fichier de configuration de cluster d'utilisateur en suivant la procédure décrite dans la page Créer des clusters d'utilisateur dans une configuration multicluster.
Créez un espace de noms pour le nouveau cluster d'utilisateur. Par exemple, pour créer un cluster d'utilisateur nommé
user1
, vous pouvez créer un espace de noms nommécluster-user1
. Voici la commandekubectl
permettant de créer l'espace de noms, où ADMIN_KUBECONFIG spécifie le chemin d'accès au fichierkubeconfig
du cluster d'administrateur :kubectl --kubeconfig ADMIN_KUBECONFIG create namespace cluster-user1
Importez votre fichier de clé privée SSH dans le nouvel espace de noms en tant que secret pour définir vos identifiants. Voici un exemple de commande, où ADMIN_KUBECONFIG spécifie le chemin d'accès au fichier
kubeconfig
du cluster administrateur et SSH_PRIVATE_KEY_FILE_PATH spécifie le chemin d'accès au fichier de clé privée SSH :kubectl --kubeconfig ADMIN_KUBECONFIG create secret generic ssh-key -n cluster-user1 --from-file=id_rsa=SSH_PRIVATE_KEY_FILE_PATH
Créez un fichier YAML de vérification préliminaire avec la structure suivante : Dans le champ
configYAML
, saisissez le contenu textuel du fichier de configuration de cluster d'utilisateur que vous avez créé à l'étape 1 :apiVersion: baremetal.cluster.gke.io/v1 kind: PreflightCheck metadata: generateName: preflightcheck- namespace: cluster-user1 spec: configYAML: | # insert user cluster config file content here.
Exécutez la commande
kubectl
pour lancer la vérification préliminaire du cluster d'utilisateur :kubectl --kubeconfig ADMIN_KUBECONFIG create -f USER_CLUSTER_PREFLIGHT_CHECK_CONFIG
Remplacez les éléments suivants :
ADMIN_KUBECONFIG
: chemin d'accès au fichier kubeconfig du cluster d'administrateurUSER_CLUSTER_PREFLIGHT_CHECK_CONFIG
: chemin d'accès au fichier YAML de vérification préliminaire que vous avez créé à l'étape précédente
Par exemple, pour un cluster d'administrateur nommé
cluster1
et une configuration de vérification préliminaire de cluster d'utilisateur nomméeuser1-preflight.yaml
, la commande est la suivante :kubectl --kubeconfig bmctl-workspace/cluster1/cluster1-kubeconfig create -f user1-preflight.yaml
Le système renvoie le message suivant, avec l'ID de la tâche de vérification préliminaire :
preflightcheck.baremetal.cluster.gke.io/preflightcheck-g7hfo4 created
Pour obtenir l'état de la tâche de vérification préliminaire, utilisez la commande
kubectl
:kubectl --kubeconfig bmctl-workspace/cluster1/cluster1-kubeconfig -n cluster-user1 get preflightchecks preflightcheck-g7hfo4
En cas d'échec de la tâche de vérification préliminaire, vérifiez son état, puis consultez les journaux de tâches détaillés pour identifier la vérification en question. Corrigez les problèmes mentionnés dans les tâches en conséquence, puis exécutez de nouveau les vérifications.
Vérifications préliminaires internes sur les clusters existants
Les clusters Anthos sur Bare Metal effectuent également des vérifications préliminaires internes lorsque vous appliquez des ressources Kubernetes à un cluster d'administrateur ou hybride existant. Si l'une de ces vérifications échoue, Anthos Clusters on Bare Metal ne modifie pas les nœuds associés, sauf si vous avez choisi d'ignorer 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 d'un fichier de configuration YAML du cluster, avec 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.7.7 ....
Réactiver les vérifications préliminaires
Vous pouvez déclencher explicitement une nouvelle série de vérifications préliminaires afin que les clusters Anthos sur Bare Metal puissent mettre à jour ou créer des clusters une fois la vérification préliminaire réussie.
Créez un fichier YAML de vérification préliminaire avec le contenu suivant : Renseignez les champs
namespace
etclusterName
avec le nom du cluster que vous créez :apiVersion: baremetal.cluster.gke.io/v1 kind: PreflightCheck metadata: generateName: preflightcheck- namespace: CLUSTER_NAMESPACE spec: clusterName: CLUSTER_NAME
Utilisez la commande
kubectl
pour lancer la vérification préliminaire du cluster :kubectl --kubeconfig ADMIN_KUBECONFIG create -f CLUSTER_PREFLIGHT_CHECK_CONFIG
Remplacez les éléments suivants :
ADMIN_KUBECONFIG
: chemin d'accès au fichier kubeconfig du cluster d'administrateurCLUSTER_PREFLIGHT_CHECK_CONFIG
: chemin d'accès au fichier YAML de vérification préliminaire que vous avez créé précédemment
Par exemple, pour un cluster d'administrateur nommé
cluster1
et une configuration de vérification préliminaire de cluster d'utilisateur nomméeuser1-preflight.yaml
, la commande est la suivante:kubectl --kubeconfig bmctl-workspace/cluster1/cluster1-kubeconfig create -f user1-preflight.yaml
Le système répond avec l'ID de la tâche de vérification préliminaire :preflightcheck.baremetal.cluster.gke.io/preflightcheck-g7hfo4 created
Pour obtenir l'état de l'ID de la tâche de vérification préliminaire, utilisez la commande
kubectl
:kubectl --kubeconfig bmctl-workspace/cluster1/cluster1-kubeconfig -n cluster-cluster1 get preflightchecks preflightcheck-g7hfo4
Une fois la tâche de vérification préliminaire terminée, les clusters Anthos sur Bare Metal créent le cluster et ses ressources.
Détails des vérifications préliminaires lors de l'installation
Anthos Clusters on Bare Metal vérifie divers paramètres de système d'exploitation, de logiciels et de machines lors des vérifications préliminaires.
Pour en savoir plus, consultez la page Présentation des conditions préalables à l'installation.