Im privaten Anthos-Modus können Sie Preflight-Prüfungen für verschiedene Situationen ausführen:
- Im privaten Modus von Anthos werden Preflight-Prüfungen durchgeführt, wenn Sie Administrator- oder Nutzercluster und Knotenpoolressourcen mit
actl
erstellen oder aktualisieren. Wenn die Prüfungen fehlschlagen, werden keine Änderungen vorgenommen. Sie können diese Prüfungen auch umgehen. - Der private Anthos-Modus führt interne Preflight-Prüfungen aus, wenn Sie Kubernetes-Ressourcen von einem Administratorcluster auf Nutzercluster anwenden. Die Diagnosen werden ausgeführt, bevor die Änderungen tatsächlich auf die betroffenen Nutzercluster angewendet werden. Wenn die Prüfungen fehlschlagen, werden keine Änderungen vorgenommen. Sie können diese Prüfungen auch umgehen oder explizit ausführen.
Preflight-Prüfung beim Erstellen von Clustern mit actl
Wenn Sie Administrator- oder Nutzercluster mit dem Befehl actl
erstellen, werden vom privaten Anthos-Modus automatisch Preflight-Prüfungen ausgeführt, bevor Änderungen vorgenommen werden.
Wenn die Prüfungen erfolgreich waren, erstellt der private Anthos-Modus die Cluster.
Ergebnisse der automatisierten Preflight-Prüfungen ignorieren
Wenn Sie diese automatisierten Preflight-Prüfungen umgehen möchten, können Sie das optionale Flag --force
im Befehl verwenden.
Preflight-Prüfungen unabhängig ausführen
Sie können Preflight-Prüfungen auch selbst ausführen, bevor Sie einen Cluster erstellen. Auf diese Weise können Sie Zeit sparen, indem Sie dafür sorgen, dass Ihre Rechner- und Knotenressourcen Prüfungen erfolgreich bestehen.
Dieser Befehl prüft, ob die Maschinen und das Netzwerk für die Clustererstellung bereit sind:
actl clusters baremetal check cluster CLUSTER_NAME
Preflight-Prüfungen für die Erstellung von Nutzerclustern
Nutzercluster werden aus einem vorhandenen Administratorcluster erstellt. Vom privaten Anthos-Modus werden automatisch Preflight-Prüfungen ausgeführt, bevor Änderungen vorgenommen werden. Sie können Preflight-Prüfungen auch mit kubectl
ausführen, bevor Sie einen Cluster erstellen.
Erstellen Sie eine Nutzercluster-Konfigurationsdatei gemäß der Beispiel-Nutzerkonfigurationsdatei.
Erstellen Sie einen Namespace für den neuen Nutzercluster. Wenn Sie beispielsweise einen neuen Nutzercluster namens
user1
erstellen möchten, können Sie einen Namespace namenscluster-user1
erstellen. Hier sehen Sie den Befehlkubectl
zum Erstellen des Namespace. Dabei gibt ADMIN_KUBECONFIG den Pfad zur Administratorclusterdateikubeconfig
an:kubectl --kubeconfig ADMIN_KUBECONFIG create namespace cluster-user1
Lade deine private SSH-Schlüsseldatei als Secret hoch, um deine Anmeldedaten festzulegen. Hier sehen Sie ein Beispielbefehl, wobei ADMIN_KUBECONFIG den Pfad zur Administratorclusterdatei
kubeconfig
angibt und SSH_PRIVATE_KEY_FILE_PATH den Pfad zur privaten SSH-Schlüsseldatei angibt:kubectl --kubeconfig ADMIN_KUBECONFIG create secret generic ssh-key -n cluster-user1 --from-file=id_rsa=SSH_PRIVATE_KEY_FILE_PATH
Erstellen Sie eine neue YAML-Datei für die Precheck-Prüfung mit der folgenden Struktur. Geben Sie im Feld
configYAML
den Textinhalt der Konfigurationsdatei des Nutzerclusters ein, die Sie in Schritt 1 erstellt haben:apiVersion: baremetal.cluster.gke.io/v1 kind: PreflightCheck metadata: generateName: preflightcheck- namespace: cluster-user1 spec: configYAML: | # insert user cluster config file content here.
Mit dem folgenden
kubectl
-Befehl wird die Preflight-Prüfung für den Nutzercluster ausgeführt, wobei ADMIN_KUBECONFIG den Pfad zur Kubeconfig-Datei des Administratorclusters angibt und USER_CLUSTER_PREFLIGHT_CHECK_CONFIG den Pfad zum Preflight-Prüfung YAML-Datei, die Sie im vorherigen Schritt erstellt haben: Für die Preflight-Prüfkonfiguration eines Nutzerclusters mit dem Namenkubectl --kubeconfig ADMIN_KUBECONFIG create -f USER_CLUSTER_PREFLIGHT_CHECK_CONFIG
user1-preflight.yaml
lautet der Befehl beispielsweise: Das System gibt die folgende Nachricht mit der Job-ID der Preflight-Prüfung zurück:kubectl --kubeconfig ADMIN_KUBECONFIG create -f user1-preflight.yaml
preflightcheck.baremetal.cluster.gke.io/preflightcheck-g7hfo4 created
Fragen Sie den Status des Preflight-Prüfjobs mit dem Befehl
kubectl
ab:kubectl --kubeconfig ADMIN_KUBECONFIG -n cluster-user1 get preflightchecks preflightcheck-g7hfo4
Wenn der Preflight-Prüfjob fehlschlägt, überprüfen Sie seinen Status und prüfen Sie dann in den detaillierten Joblogs, welche Diagnose fehlgeschlagen ist. Beheben Sie die in den Jobs erwähnten Probleme und führen Sie die Prüfungen noch einmal aus.
Interne Preflight-Prüfungen für vorhandene Cluster
Der private Anthos-Modus führt auch interne Preflight-Prüfungen aus, wenn Sie Cluster
-Kubernetes-Ressourcen auf einen vorhandenen Administrator-Cluster anwenden. Wenn Prüfungen fehlschlagen, werden vom privaten Anthos-Modus keine Änderungen an den zugehörigen Knoten vorgenommen, es sei denn, Sie haben die Prüfungen explizit umgangen.
Preflight-Prüfungen beim Anwenden von Kubernetes-Ressourcen umgehen
Wenn Sie die internen Preflight-Prüfungen beim Anwenden von Cluster
-Ressourcen auf einen vorhandenen Administratorcluster ignorieren möchten, müssen Sie für das Feld BypassPreflightCheck
in der Clusterressource den Wert true
festlegen.
Hier ist ein Fragment einer YAML-Datei für die Clusterkonfiguration, in der das Feld bypassPreflightCheck
auf true
gesetzt ist.
# 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: v1.7.99 ....
Preflight-Prüfungen wieder aktivieren
Sie können explizit eine neue Runde von Preflight-Prüfungen auslösen, sodass Anthos im privaten Modus neue Cluster aktualisieren oder erstellen kann, wenn die Preflight-Prüfung erfolgreich abgeschlossen wurde.
Erstellen Sie eine neue YAML-Datei für die Preflight-Prüfung mit folgendem Inhalt. Geben Sie in den Feldern
namespace
undclusterName
den von Ihnen erstellten Clusternamen ein:apiVersion: baremetal.cluster.gke.io/v1 kind: PreflightCheck metadata: generateName: preflightcheck- namespace: CLUSTER_NAMESPACE spec: clusterName: CLUSTER_NAME
Führen Sie den Befehl
kubectl
aus, um die Preflight-Prüfung für den Cluster auszuführen. Dabei gibt ADMIN_KUBECONFIG den Pfad zur Administrator-kubeconfig-Datei an und CLUSTER_PREFLIGHT_CHECK_CONFIG gibt den Pfad zum Preflight-Prüfung YAML-Datei: Für die Preflight-Prüfkonfiguration eines Nutzerclusters mit dem Namenkubectl --kubeconfig ADMIN_KUBECONFIG create -f CLUSTER_PREFLIGHT_CHECK_CONFIG
user1-preflight.yaml
lautet der Befehl beispielsweise: Das System antwortet mit der Job-ID der Preflight-Prüfung:kubectl --kubeconfig ADMIN_KUBECONFIG create -f user1-preflight.yaml
preflightcheck.baremetal.cluster.gke.io/preflightcheck-g7hfo4 created
Fragen Sie den Status des Jobstatus der Preflight-Prüfung mit dem Befehl
kubectl
ab:kubectl --kubeconfig ADMIN_KUBECONFIG -n cluster-cluster1 get preflightchecks preflightcheck-g7hfo4
Wenn der Preflight-Prüfungsjob erfolgreich abgeschlossen wurde, erstellt der private Anthos-Modus den Cluster und seine Ressourcen.
Details zur Installation der Preflight-Prüfung
Im privaten Modus von Anthos prüft es verschiedene Betriebssystem-, Software- und Computervoraussetzungen, wenn Preflight-Prüfungen ausgeführt werden.
Weitere Informationen finden Sie unter Anforderungen.