Freigeben über


Erstellen und Bereitstellen eines Clusters mithilfe der Azure CLI

In diesem Artikel wird beschrieben, wie man einen Cluster mithilfe der Azure-Befehlszeilenschnittstelle (AzCLI) erstellt. Außerdem veranschaulicht dieses Dokument, wie Sie den Status überprüfen, Updates durchführen oder einen Cluster löschen.

Voraussetzungen

  • Überprüfen, ob Network Fabric Controller und Cluster-Manager in Ihrer Azure-Region vorhanden sind
  • Überprüfen, ob Network Fabric erfolgreich bereitgestellt wurde

API-Leitfaden und -Metriken

Der API-Leitfaden enthält Informationen zu den Ressourcenanbietern, Ressourcenmodellen und APIs.

Die aus den Protokollierungsdaten generierten Metriken finden Sie unter Azure Monitor-Metriken.

Einschränkungen

  • Benennung: Benennungsregeln finden Sie hier.

Erstellen eines Clusters

Die Infrastrukturclusterressource stellt eine lokale Bereitstellung der Plattform im Cluster-Manager dar. Alle anderen plattformspezifischen Ressourcen sind in Bezug auf ihren Lebenszyklus davon abhängig.

Es empfiehlt sich, die Network Fabric-Instanz vor dieser lokalen Bereitstellung zu erstellen. Jede lokale Operator Nexus-Instanz weist eine 1:1-Zuordnung mit einem Netzwerk-Fabric auf.

Von Bedeutung

Es gibt ein bekanntes Problem, bei dem das Aktualisieren eines Clusters unmittelbar nach der Erstellung zu Clusterbereitstellungsfehlern führen kann. Das Problem tritt auf, wenn die Ressource aktualisiert wird, bevor die bmcConnectionString-Felder im cluster.spec.computeRackDefinitions.bareMetalMachineConfigurationData Abschnitt ausgefüllt werden. Die bmcConnectionStrings werden normalerweise innerhalb weniger Minuten nach dem Erstellen des Clusters festgelegt.

Um dieses Problem zu vermeiden, stellen Sie sicher, dass die bmcConnectionStrings vor dem Aktualisieren der Clusterressource über das Azure-Portal oder den az networkcloud update Befehl nicht entwendige Werte enthalten.

Um den Status zu bestätigen, öffnen Sie die JSON-Eigenschaften für die Clusterressource (Operator Nexus) im Azure-Portal, oder führen Sie einen az networkcloud cluster show CLI-Befehl aus, wie im folgenden Beispiel gezeigt. Wenn die "bmmConnectionString"-Werte nicht leere redfish+https..-Werte anzeigen, ist es sicher, den Cluster zu aktualisieren. Dieses Problem wird in einer zukünftigen Version behoben.

Die bmcConnectionString-Beispielausgabe az networkcloud cluster show -n cluster01 -g cluster01resourceGroup--query 'computeRackDefinitions[].bareMetalMachineConfigurationData[].bmcConnectionString' -o json lautet wie folgt:

["redfish+https://10.9.3.20/redfish/v1/Systems/System.Embedded.1",
"redfish+https://10.9.3.19/redfish/v1/Systems/System.Embedded.1",
"redfish+https://10.9.3.18/redfish/v1/Systems/System.Embedded.1",
"redfish+https://10.9.3.17/redfish/v1/Systems/System.Embedded.1"]

Erstellen Sie den Cluster mithilfe der Azure CLI – Single Storage Appliance:

Von Bedeutung

Mit diesem Befehl wird der Cluster für eine Nexus-Instanz erstellt, die eine einzelne Speicher-Appliance enthält. Wenn Sie sie für eine Instanz mit zwei Speichergeräten ausführen, wird das zweite Speichergerät nicht konfiguriert. Befolgen Sie die Anweisungen für mehrere Speichergeräte , wenn Ihre Nexus-Instanz zwei Speichergeräte enthält.

az networkcloud cluster create --name "<CLUSTER_NAME>" --location "<LOCATION>" \
  --extended-location name="<CL_NAME>" type="CustomLocation" \
  --resource-group "<CLUSTER_RG>" \
  --cluster-location "<CLUSTER_LOCATION>" \
  --network-rack-id "<AGGR_RACK_RESOURCE_ID>" \
  --rack-sku-id "<AGGR_RACK_SKU>"\
  --rack-serial-number "<AGGR_RACK_SN>" \
  --rack-location "<AGGR_RACK_LOCATION>" \
  --bare-metal-machine-configuration-data "["<AGGR_RACK_BMM>"]" \
  --storage-appliance-configuration-data '[{"adminCredentials":{"password":"<SA1_PASS>","username":"<SA_USER>"},"rackSlot":1,"serialNumber":"<SA1_SN>","storageApplianceName":"<SA1_NAME>"}]' \
  --compute-rack-definitions '[{"networkRackId": "<COMPX_RACK_RESOURCE_ID>", "rackSkuId": "<COMPX_RACK_SKU>", "rackSerialNumber": "<COMPX_RACK_SN>", "rackLocation": "<COMPX_RACK_LOCATION>", "storageApplianceConfigurationData": [], "bareMetalMachineConfigurationData":[{"bmcCredentials": {"password":"<COMPX_SVRY_BMC_PASS>", "username":"<COMPX_SVRY_BMC_USER>"}, "bmcMacAddress":"<COMPX_SVRY_BMC_MAC>", "bootMacAddress":"<COMPX_SVRY_BOOT_MAC>", "machineDetails":"<COMPX_SVRY_SERVER_DETAILS>", "machineName":"<COMPX_SVRY_SERVER_NAME>"}]}]'\
  --managed-resource-group-configuration name="<MRG_NAME>" location="<MRG_LOCATION>" \
  --network fabric-id "<NF_ID>" \
  --mi-user-assigned "<CLUSTER_UAMI>" \
  --analytics-output-settings analytics-workspace-id="<LAW_ID>" identity-type="<ID_TYPE>" identity-resource-id="<CLUSTER_UAMI>" \
  --command-output-settings container-url="<COMMAND_OUTPUT_CONTAINER_URI>" identity-type="<ID_TYPE>" identity-resource-id="<CLUSTER_UAMI>" \
  --secret-archive-settings vault-uri="<VAULT_URI>" identity-type="<ID_TYPE>" identity-resource-id="<CLUSTER_UAMI>" \
  --subscription "<SUBSCRIPTION_ID>" \
  --cluster-type "<CLUSTER_TYPE>" --cluster-version "<CLUSTER_VERSION>" \
  --tags <TAG_KEY1>="<TAG_VALUE1>" <TAG_KEY2>="<TAG_VALUE2>"

Erstellen Sie den Cluster mithilfe der Azure CLI – mehrere Speichergeräte:

"<AGGR_RACK_SKU>" muss auf einen Wert festgelegt werden, der zwei Speichergeräte unterstützt. Siehe Operator Nexus Network Cloud SKUs , um eine entsprechende SKU zu wählen. Der Befehl für die Clustererstellung legt auch die Standardspeicherappliance für die Volumeerstellung fest. Die Standard-Appliance ist die Appliance mit "rackSlot":1 in ihren Konfigurationsdaten.

az networkcloud cluster create --name "<CLUSTER_NAME>" --location "<LOCATION>" \
  --extended-location name="<CL_NAME>" type="CustomLocation" \
  --resource-group "<CLUSTER_RG>" \
  --analytics-workspace-id "<LAW_ID>" \
  --cluster-location "<CLUSTER_LOCATION>" \
  --network-rack-id "<AGGR_RACK_RESOURCE_ID>" \
  --rack-sku-id "<AGGR_RACK_SKU>"\
  --rack-serial-number "<AGGR_RACK_SN>" \
  --rack-location "<AGGR_RACK_LOCATION>" \
  --bare-metal-machine-configuration-data "["<AGGR_RACK_BMM>"]" \
  --storage-appliance-configuration-data '[{"adminCredentials":{"password":"<SA1_PASS>","username":"<SA_USER>"},"rackSlot":1,"serialNumber":"<SA1_SN>","storageApplianceName":"<SA1_NAME>"},{"adminCredentials":{"password":"<SA2_PASS>","username":"<SA_USER>"},"rackSlot":2,"serialNumber":"<SA2_SN>","storageApplianceName":"<SA2_NAME>"}]' \
  --compute-rack-definitions '[{"networkRackId": "<COMPX_RACK_RESOURCE_ID>", "rackSkuId": "<COMPX_RACK_SKU>", "rackSerialNumber": "<COMPX_RACK_SN>", "rackLocation": "<COMPX_RACK_LOCATION>", "storageApplianceConfigurationData": [], "bareMetalMachineConfigurationData":[{"bmcCredentials": {"password":"<COMPX_SVRY_BMC_PASS>", "username":"<COMPX_SVRY_BMC_USER>"}, "bmcMacAddress":"<COMPX_SVRY_BMC_MAC>", "bootMacAddress":"<COMPX_SVRY_BOOT_MAC>", "machineDetails":"<COMPX_SVRY_SERVER_DETAILS>", "machineName":"<COMPX_SVRY_SERVER_NAME>"}]}]'\
  --managed-resource-group-configuration name="<MRG_NAME>" location="<MRG_LOCATION>" \
  --network fabric-id "<NF_ID>" \
  --mi-user-assigned "<CLUSTER_UAMI>" \
  --analytics-output-settings analytics-workspace-id="<LAW_ID>" identity-type="<ID_TYPE>" identity-resource-id="<CLUSTER_UAMI>" \
  --command-output-settings container-url="<COMMAND_OUTPUT_CONTAINER_URI>" identity-type="<ID_TYPE>" identity-resource-id="<CLUSTER_UAMI>" \
  --secret-archive-settings vault-uri="<VAULT_URI>" identity-type="<ID_TYPE>" identity-resource-id="<CLUSTER_UAMI>" \
  --subscription "<SUBSCRIPTION_ID>" \
  --cluster-type "<CLUSTER_TYPE>" --cluster-version "<CLUSTER_VERSION>" \
  --tags <TAG_KEY1>="<TAG_VALUE1>" <TAG_KEY2>="<TAG_VALUE2>"

Parameter für Clustervorgänge

Parametername Description
CLUSTER_NAME Ressourcenname des Clusters
LAGERPLATZ Die Azure-Region, in der der Cluster bereitgestellt wird
CL_NAME Der benutzerdefinierte Cluster Manager-Speicherort aus dem Azure-Portal
CLUSTER_RG Der Name der Clusterressourcengruppe
ID_TYPE Weitere Informationen zu verwalteten Identitäten für vom Benutzer bereitgestellte Ressourcen finden Sie unter Clusterunterstützung für verwaltete Identitäten .
CLUSTER_UAMI Weitere Informationen zu verwalteten Identitäten für vom Benutzer bereitgestellte Ressourcen finden Sie unter Clusterunterstützung für verwaltete Identitäten .
LAW_ID Details zu Analyseausgabeeinstellungen finden Sie unter "Clusterunterstützung für verwaltete Identitäten ".
Clusterstandort Der lokale Name des Clusters
AGGR_RACK_RESOURCE_ID Rack-ID für das Aggregator-Rack
AGGR_RACK_SKU Die Rack-SKU (Stock Keeping Unit) für das Aggregator-Rack *Siehe SKUs für Azure Operator Nexus
AGGR_RACK_SN Rackseriennummer für das Aggregator-Rack
AGGR_RACK_LOCATION Physischer Rackstandort für das Aggregator-Rack
AGGR_RACK_BMM Nur für die Bereitstellung eines Einzelracks verwendet, leer bei mehreren Racks
SA1_NAME Erster Speichergerät-Name
SA2_NAME Zweiter Speichergerät Name
SA1_PASS Erster Referenz-URI für das Adminkennwort der Speicherappliance oder Kennwortwert *Siehe Referenz zu Key Vault-Anmeldeinformationen
SA2_PASS Zweiter Referenz-URI für das Adminkennwort der Speicherappliance oder Kennwortwert *Siehe Referenz zu Key Vault-Anmeldeinformationen
SA_USER Administratorbenutzer der Speicherappliance
SA1_SN First Storage Appliance Seriennummer
SA2_SN Seriennummer der zweiten Speicher-Appliance
COMPX_RACK_RESOURCE_ID Rack-ID für CompX-Rack, für jedes Rack in „compute-rack-definitions“ wiederholen
COMPX_RACK_SKU Rack-SKU (Stock Keeping Unit) für CompX-Rack, für jedes Rack in „compute-rack-definitions“ wiederholen *Siehe SKUs für Azure Operator Nexus
COMPX_RACK_SN Rackseriennummer für CompX-Rack; für jedes Rack in „Compute-Rack-Definitions“ wiederholen
COMPX_RACK_LOCATION Physischer Standort für CompX-Rack, für jedes Rack in „compute-rack-definitions“ wiederholen
COMPX_SVRY_BMC_PASS Kennwortreferenz-URI oder Kennwortwert des CompX Rack ServerY-Baseboard-Verwaltungscontrollers (BMC). Für jedes Rack in „compute-rack-definitions“ und für jeden Server im Rack wiederholen *Siehe Referenz zu Key Vault-Anmeldeinformationen
COMPX_SVRY_BMC_USER Benutzende Person für CompX-Rack-ServerY-BMC, für jedes Rack in „compute-rack-definitions“ und für jeden Server im Rack wiederholen
COMPX_SVRY_BMC_MAC MAC-Adresse für CompX-Rack-ServerY-BMC, für jedes Rack in „compute-rack-definitions“ und für jeden Server im Rack wiederholen
COMPX_SVRY_BOOT_MAC MAC-Adresse von Boot-NIC (Netzwerkadapter) für CompX-Rack-ServerY, für jedes Rack in „compute-rack-definitions“ und für jeden Server im Rack wiederholen
COMPX_SVRY_SERVER_DETAILS Details für CompX-Rack-ServerY, für jedes Rack in „compute-rack-definitions“ und für jeden Server im Rack wiederholen
COMPX_SVRY_SERVER_NAME Name für CompX-Rack-ServerY, für jedes Rack in „compute-rack-definitions“ und für jeden Server im Rack wiederholen
MRG_NAME Name der verwalteten Clusterressourcengruppe
MRG_LOCATION Cluster-Azure-Region
NF_ID Verweis auf Network Fabric
TENANT_ID ID des Abonnementmandanten
SUBSCRIPTION_ID Abonnement-ID
Clustertyp Art des Clusters: einzeln oder MultiRack
CLUSTER_VERSION Network Cloud (NC)-Version des Clusters
TAG_KEY1 Optionales tag1 zum Übergeben an die Clustererstellung
TAG_VALUE1 Wert des optionalen tag1 zum Übergeben an die Clustererstellung
TAG_KEY2 Optionales tag2 zum Übergeben an die Clustererstellung
TAG_VALUE2 Wert des optionalen tag2 zum Übergeben an die Clustererstellung
VAULT_URI Weitere Informationen zu den geheimen Archivierungseinstellungen finden Sie unter Clusterunterstützung für verwaltete Identitäten
CONTAINER_URI Details zu Befehlsausgabeeinstellungen finden Sie unter Clusterunterstützung für verwaltete Identitäten .

Clusteridentität

Nach der Veröffentlichung der 2024-07-01 API-Version kann ein Kunde einem Cluster verwaltete Identität zuweisen. Es werden sowohl systemseitig als auch benutzerseitig zugewiesene verwaltete Identitäten unterstützt.

Nach dem Hinzufügen kann die Identität derzeit nur über den API-Aufruf entfernt werden.

Weitere Informationen zu verwalteten Identitäten für Operator Nexus Cluster finden Sie unter Azure Operator Nexus Cluster-Unterstützung für verwaltete Identitäten und vom Benutzer bereitgestellte Ressourcen.

Erstellen des Clusters mithilfe des Azure Resource Manager-Vorlagen-Editors

Eine alternative Möglichkeit zum Erstellen eines Clusters ist der ARM-Vorlagen-Editor.

Um den Cluster auf diese Weise zu erstellen, müssen Sie eine Vorlagendatei (cluster.jsonc) und eine Parameterdatei (cluster.parameters.jsonc) bereitstellen. Beispiele für einen 8-Rack 2M16C-SKU-Cluster finden Sie unter Verwendung dieser beiden Dateien:

cluster.jsonc , cluster.parameters.jsonc

Hinweis

Um die richtige Formatierung zu erhalten, kopieren Sie die Rohcodedatei. Die Werte in der Datei "cluster.parameters.jsonc" sind kundenspezifisch und sind möglicherweise keine vollständige Liste. Aktualisieren Sie dann die Werte entsprechend Ihrer jeweiligen Umgebung.

  1. Navigieren Sie in einem Webbrowser zum Azure-Portal, und melden Sie sich an.
  2. Suchen Sie über die Suchleiste im Azure-Portal nach „Benutzerdefinierte Vorlage bereitstellen“, und wählen Sie sie dann aus den verfügbaren Diensten aus.
  3. Wählen Sie "Eigene Vorlage erstellen" im Editor aus.
  4. Wählen Sie "Datei laden" aus. Suchen Sie die Vorlagendatei "cluster.jsonc", und laden Sie sie hoch.
  5. Wählen Sie „Speichern“ aus.
  6. Wählen Sie "Parameter bearbeiten" aus.
  7. Wählen Sie "Datei laden" aus. Suchen Sie die Parameterdatei "cluster.parameters.jsonc", und laden Sie sie hoch.
  8. Wählen Sie „Speichern“ aus.
  9. Wählen Sie das richtige Abonnement aus.
  10. Suchen Sie nach der Ressourcengruppe, um festzustellen, ob sie bereits vorhanden ist. Falls nicht, erstellen Sie eine neue Ressourcengruppe.
  11. Stellen Sie sicher, dass alle Instanzendetails korrekt sind.
  12. Wählen Sie "Überprüfen" und "Erstellen" aus.

Clustervalidierung

Bei erfolgreicher Erstellung des Operator Nexus-Clusters wird in Ihrem Abonnement eine Azure-Ressource erstellt. Die Cluster-ID, der Clusterbereitstellungsstatus und der Bereitstellungsstatus werden als Ergebnis einer erfolgreichen cluster createRückgabe zurückgegeben.

Zeigen Sie den Status des Clusters an:

az networkcloud cluster show --cluster-name "<clusterName>" /
--resource-group "<resourceGroupName>" /
--subscription <subscriptionID>

Die Clustererstellung ist abgeschlossen, wenn für provisioningState der Ressource Folgendes angezeigt wird: "provisioningState": "Succeeded"

Clusterprotokollierung

Protokolle zur Clustererstellung können an den folgenden Stellen angezeigt werden:

  1. Aktivitätsprotokolle für Ressourcen/Ressourcengruppen im Azure-Portal
  2. Azure CLI mit in der Befehlszeile übergebenem Flag --debug

Festlegen des Schwellenwerts für die Bereitstellung von Rechenressourcen

Der Schwellenwert für die zulässigen Fehler von Computeknoten während der Hardwareüberprüfung wird mithilfe des compute-deployment-threshold Parameters festgelegt.

Wenn compute-deployment-threshold nicht festgelegt ist, sind die Standardwerte wie folgt:

      "strategyType": "Rack",
      "thresholdType": "PercentSuccess",
      "thresholdValue": 80,
      "waitTimeMinutes": 1

Wenn ein vom Standardwert von 80 % abweichender compute-deployment-threshold-Wert erforderlich ist, führen Sie den Befehl cluster update aus.

Beispielsweise ein Kunde, der den Typ "PercentSuccess" mit einer Erfolgsquote von 97%anfordert:

az networkcloud cluster update --name "<clusterName>" /
--resource-group "<resourceGroup>" /
--compute-deployment-threshold type="PercentSuccess" grouping="PerCluster" value=97 /
--subscription <subscriptionID>

Überprüfen von Updates

az networkcloud cluster show --resource-group "<resourceGroup>" --name "<clusterName>" | grep -a3 computeDeploymentThreshold

  "clusterType": "MultiRack",
  "clusterVersion": "<CLUSTER_VERSION>",
  "computeDeploymentThreshold": {
    "grouping": "PerCluster",
    "type": "PercentSuccess",
    "value": 97

Wenn in diesem Beispiel weniger als 97 % der bereitgestellten Serverknoten die Hardwareüberprüfung bestehen, tritt bei der Clusterbereitstellung ein Fehler auf. HINWEIS: Alle Komponenten auf Kubernetes-Steuerungsebene (KCP) und Nexus-Verwaltungsebene (NMP) müssen die Hardwareüberprüfung bestehen. Wenn mindestens 97 % der bereitgestellten Serverknoten die Hardwareüberprüfung bestehen, wird die Clusterbereitstellung mit der Bootstrap-Bereitstellungsphase fortgesetzt.

Hinweis

Bereitstellungsschwellenwerte können nach dem Starten der Clusterbereitstellung nicht mehr geändert werden.

Bereitstellen eines Clusters

Von Bedeutung

Als bewährte Methode warten Sie 20 Minuten nach dem Erstellen eines Clusters, bevor Sie bereitstellen, um sicherzustellen, dass alle zugeordneten Ressourcen erstellt werden.

Nach dem Erstellen des Clusters kann die Aktion „Cluster bereitstellen“ ausgelöst werden. Die Aktion für die Clusterbereitstellung erstellt das Bootstrapimage und stellt den Cluster bereit.

Der Bereitstellungsvorgang initiiert eine Reihe von Ereignissen im Cluster-Manager.

  1. Überprüfung der Cluster-/Rack-Eigenschaften.
  2. Generierung eines startbaren Images für den kurzlebigen Bootstrap-Cluster (Überprüfung der Infrastruktur)
  3. Interaktion mit der IPMI-Schnittstelle (Intelligent Platform Management Interface) des Bootstrap-Zielcomputers
  4. Ausführung von Hardwareüberprüfungen
  5. Überwachung des Clusterbereitstellungsprozesses.

Stellen Sie den lokalen Cluster bereit:

az networkcloud cluster deploy \
  --name "$CLUSTER_NAME" \
  --resource-group "$CLUSTER_RG" \
  --subscription "$SUBSCRIPTION_ID" \
  --no-wait --debug

Tipp

Um den Status des az networkcloud cluster deploy-Befehls zu überprüfen, kann er mithilfe des --debug-Flags ausgeführt werden. Rufen Sie den Header Azure-AsyncOperation oder Location ab, der zum Abfragen der operationStatuses-Ressource aus der Debugausgabe verwendet wird. Ausführlichere Schritte finden Sie im Abschnitt Clusterbereitstellung fehlgeschlagen. Optional kann der Befehl asynchron mit dem --no-wait-Flag ausgeführt werden.

Überwachen des Status in Cluster-JSON-Eigenschaften

In Version 2509.1 und höher können Sie den Fortschritt der cluster deploy Aktion im Azure-Portal in der JSON View Ressource Cluster (Operator Nexus) anzeigen. Die folgenden Informationen sind im properties.actionStates Feld enthalten, wenn Sie die API-Version 2025-07-01-preview oder höher verwenden.

  • Start- und Endzeit der Bereitstellungsaktion.
  • Aktueller Status (Succeeded, Failedoder InProgress).
  • Alle zusätzlichen Kontext- oder Fehlermeldungen, die dem aktuellen Status zugeordnet sind.
  • Die Korrelations-ID für den ursprünglichen cluster deploy Vorgang, wie auch im Azure Activity-Protokoll dargestellt.
  • Eine sortierte Liste der einzelnen Schritte und deren Status – z. B. Validate Hardware, Generate Boostrap Image und Reset compute hosts.

Beispielausgabe JSON View für die Clusterressource (Operator Nexus):

{
  "properties": {
    "actionStates": [
      {
        "actionType": "Microsoft.NetworkCloud/clusters/deploy",
        "correlationId": "196157eb-0c9f-47df-8428-ac2f86cfc816",
        "endTime": "2025-07-28T23:33:27Z",
        "message": "Deploy action completed successfully; cluster deployment initiated and proceeding automatically - monitor progress via cluster detailed status",
        "startTime": "2025-07-28T17:32:50Z",
        "status": "Completed",
        "stepStates": [
          {
            "endTime": "2025-07-28T17:32:50Z",
            "startTime": "2025-07-28T17:32:50Z",
            "status": "Completed",
            "stepName": "Wait for Cluster to be created"
          },
          {
            "endTime": "2025-07-28T17:32:51Z",
            "startTime": "2025-07-28T17:32:51Z",
            "status": "Completed",
            "stepName": "Wait for Cluster network definitions"
          },
          {
            "endTime": "2025-07-28T17:32:51Z",
            "startTime": "2025-07-28T17:32:51Z",
            "status": "Completed",
            "stepName": "Validate Cluster conditions"
          },
          {
            "endTime": "2025-07-28T18:08:38Z",
            "startTime": "2025-07-28T17:32:51Z",
            "status": "Completed",
            "stepName": "Validate Hardware"
          },
          {
            "endTime": "2025-07-28T18:14:37Z",
            "startTime": "2025-07-28T18:08:38Z",
            "status": "Completed",
            "stepName": "Generate Bootstrap Image"
          },
          {
            "endTime": "2025-07-28T18:18:27Z",
            "message": "Successfully reset 30 nodes",
            "startTime": "2025-07-28T18:14:38Z",
            "status": "Completed",
            "stepName": "Reset compute hosts using Redfish/BMC"
          },
          {
            "endTime": "2025-07-28T18:18:51Z",
            "message": "Completed successfully on attempt 1 of 10",
            "startTime": "2025-07-28T18:18:51Z",
            "status": "Completed",
            "stepName": "Boot Ephemeral Node from Bootstrap Image"
          },
          {
            "endTime": "2025-07-28T23:33:27Z",
            "startTime": "2025-07-28T23:33:27Z",
            "status": "Completed",
            "stepName": "Clean-up Bootstrap Image job"
          }
        ]
      }
    ]
  }
}

Clusterbereitstellung mit Hardwareprüfung

Während der Bereitstellung eines Clusters ist einer der Schritte, die ausgeführt werden, die Hardwareprüfung. Bei der Hardwareprüfungsprozedur werden verschiedene Tests und Überprüfungen der über die Rackdefinition des Clusters bereitgestellten Maschinen durchgeführt. Basierend auf den Ergebnissen dieser Prüfungen und allen übersprungenen Computern wird festgestellt, ob genügend Knoten bestanden haben und/oder verfügbar sind, um die für die weitere Bereitstellung erforderlichen Schwellenwerte zu erreichen.

Von Bedeutung

Der Hardwareprüfungsprozess schreibt die Ergebnisse in das bei der Clustererstellung angegebene analyticsWorkspaceId-Element. Diese Funktion ist nur während einer neuen Bereitstellung (Green Field) sichtbar. die Protokolle sind rückwirkend nicht verfügbar.

Hinweis

Der RAID-Controller wird während der Clusterbereitstellung zurückgesetzt, wobei alle Daten von den virtuellen Datenträgern des Servers gelöscht werden. Alle virtuellen Festplattenwarnungen des Baseboard Management Controllers (BMC) können ignoriert werden, es sei denn, es liegen andere physische Datenträger- oder RAID-Controller-Warnungen vor.

Standardmäßig schreibt der Hardwareprüfungsprozess die Ergebnisse in den konfigurierten Cluster analyticsWorkspaceId. Aufgrund der Art der Datenerfassung und der Schemaauswertung des Log Analytics-Arbeitsbereichs kann es jedoch zu Verzögerungen bei der Erfassung kommen, die einige Minuten oder länger dauern können. Aus diesem Grund wird die Clusterbereitstellung fortgesetzt, auch wenn die Ergebnisse nicht in den Log Analytics-Arbeitsbereich geschrieben wurden. Um dieses mögliche Ereignis zu vermeiden, werden die Ergebnisse aus Redundanzgründen auch im Cluster-Manager protokolliert.

Im Log Analytics-Arbeitsbereich des bereitgestellten Clusterobjekts sollte eine neue benutzerdefinierte Tabelle mit dem Namen des Clusters als Präfix und dem Suffix *_CL angezeigt werden. Im Abschnitt Protokolle der LAW-Ressource kann eine Abfrage für die neue benutzerdefinierte Protokolltabelle *_CL ausgeführt werden.

Clusterbereitstellung mit Überspringen eines bestimmten Bare-Metal-Computers

Der --skip-validation-for-machines Parameter stellt die Namen von Bare-Metal-Computern im Cluster dar, die während der Hardwareüberprüfung übersprungen werden sollen. Übersprungene Knoten werden nicht überprüft und nicht zum Knotenpool hinzugefügt. Außerdem werden übersprungene Knoten nicht auf die Gesamtzahl angerechnet, die für die Berechnung der Schwellenwerte verwendet wird.

az networkcloud cluster deploy \
  --name "$CLUSTER_NAME" \
  --resource-group "$CLUSTER_RG" \
  --subscription "$SUBSCRIPTION_ID" \
  --skip-validations-for-machines "$COMPX_SVRY_SERVER_NAME"

Fehler bei der Clusterbereitstellung

Von Bedeutung

Wenn sich ein Cluster im Failed Zustand befindet, muss er gelöscht und neu erstellt werden, bevor es erneut bereitgestellt werden kann. Clusterfehler können auftreten, wenn der Schwellenwert für die Hardwareüberprüfung nicht erfüllt ist, oder eine Phase der Bereitstellung kann erst abgeschlossen werden, wenn sich der Cluster im Running Zustand befindet.

Um den Status eines asynchronen Vorgangs nachzuverfolgen, nehmen Sie die Ausführung mit einem aktivierten --debug-Flag vor. Wenn --debug angegeben ist, kann der Fortschritt der Anforderung überwacht werden. Die Vorgangsstatus-URL lässt sich ermitteln, indem man in der Debugausgabe in der HTTP-Antwort auf die Erstellungsanforderung nach dem Header Azure-AsyncOperation oder Location sucht. Die Header können das im HTTP-API-Aufruf verwendete Feld OPERATION_ID bereitstellen.

OPERATION_ID="aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e*99399E995..."
az rest -m GET -u "https://management.azure.com/subscriptions/${SUBSCRIPTION_ID}/providers/Microsoft.NetworkCloud/locations/${LOCATION}/operationStatuses/${OPERATION_ID}?api-version=2022-12-12-preview"

Die Ausgabe ähnelt dem JSON-Strukturbeispiel. Wenn der Fehlercode HardwareValidationThresholdFailed ist, enthält die Fehlermeldung eine Liste der Bare-Metal-Computer mit Fehlern bei der Hardwareprüfung (z. B. COMP0_SVR0_SERVER_NAME, COMP1_SVR1_SERVER_NAME). Diese Namen können verwendet werden, um die Protokolle nach weiteren Details zu parsen.

{
  "endTime": "2023-03-24T14:56:59.0510455Z",
  "error": {
    "code": "HardwareValidationThresholdFailed",
    "message": "HardwareValidationThresholdFailed error hardware validation threshold for cluster layout plan is not met for cluster $CLUSTER_NAME in namespace nc-system with listed failed devices $COMP0_SVR0_SERVER_NAME, $COMP1_SVR1_SERVER_NAME"
  },
  "id": "/subscriptions/$SUBSCRIPTION_ID/providers/Microsoft.NetworkCloud/locations/$LOCATION/operationStatuses/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e*99399E995...",
  "name": "aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e*99399E995...",
  "resourceId": "/subscriptions/$SUBSCRIPTION_ID/resourceGroups/$CLUSTER_RESOURCE_GROUP/providers/Microsoft.NetworkCloud/clusters/$CLUSTER_NAME",
  "startTime": "2023-03-24T14:56:26.6442125Z",
  "status": "Failed"
}

Tipp

In Version 2509.1 und höher können Sie auch den Status und das Endergebnis der cluster deploy Aktion im Azure-Portal in der JSON View Ressource Cluster (Operator Nexus) anzeigen, wie im Monitorstatus in Cluster JSON-Eigenschaften beschrieben. Dieser Status enthält eine detaillierte Aufschlüsselung der unternommenen Schritte und den Status der einzelnen Schritte im Bereitstellungsprozess. Anhand dieser Informationen können Sie ermitteln, welcher bestimmte Schritt fehlgeschlagen ist und warum.

Ein weiteres Beispiel finden Sie im Artikel Nachverfolgen asynchroner Vorgänge mithilfe der Azure CLI. Weitere Informationen zu bestimmten Computerüberprüfungs- oder Bereitstellungsfehlern finden Sie unter Problembehandlung bei der Bereitstellung von Bare Metal Machine (BMM).

Überprüfung der Clusterbereitstellung

Zeigen Sie den Status des Clusters im Portal oder über die Azure CLI an:

az networkcloud cluster show --resource-group "$CLUSTER_RG" \
  --name "$CLUSTER_NAME"

Die Clusterbereitstellung ist in Bearbeitung, wenn detailedStatus auf Deploying festgelegt ist, und detailedStatusMessage zeigt den Fortschritt der Bereitstellung an.

Einige Beispiele für den Bereitstellungsfortschritt in detailedStatusMessage sind Hardware validation is in progress. (wenn Cluster mit Hardwareüberprüfung bereitgestellt wird), Cluster is bootstrapping., KCP initialization in progress., Management plane deployment in progress., Cluster extension deployment in progress., waiting for "<rack-ids>" to be ready usw.

Screenshot des Azure-Portals mit cluster deploy progress kcp init.

Screenshot des Azure-Portals mit der Erweiterungsanwendung

Die Clusterbereitstellung ist abgeschlossen, wenn „detailedStatus“ auf Running gesetzt ist und „detailedStatusMessage“ die Meldung Cluster is up and running anzeigt.

Screenshot des Azure-Portals mit abgeschlossener Clusterbereitstellung.

Ansicht der Verwaltungsversion des Clusters

az k8s-extension list --cluster-name "$CLUSTER_NAME" --resource-group "$MRG_NAME" --cluster-type connectedClusters --query "[?name=='nc-platform-extension'].{name:name, extensionType:extensionType, releaseNamespace:scope.cluster.releaseNamespace,provisioningState:provisioningState,version:version}" -o table --subscription "$SUBSCRIPTION_ID"

Protokollierung der Clusterbereitstellung

Protokolle zur Clustererstellung können an den folgenden Stellen angezeigt werden:

  1. Aktivitätsprotokolle für Ressourcen/Ressourcengruppen im Azure-Portal
  2. Azure CLI mit in der Befehlszeile übergebenem Flag --debug

Momentaufnahme des Azure-Portals, mit der Anzeige des Fortschritts der Cluster-Bereitstellung Aktivitätsprotokoll.

Löschen eines Clusters

Beim Löschen eines Clusters werden die Ressourcen in Azure und dem Cluster gelöscht, der sich in der lokalen Umgebung befindet.

Von Bedeutung

Wenn im Cluster Mandantenressourcen vorhanden sind, schlägt die Löschung fehl, bis die Mandantenressourcen gelöscht werden.

Screenshot: Portal mit dem Fehler beim Löschen aufgrund von Mandantenressourcen.

az networkcloud cluster delete --name "$CLUSTER_NAME" --resource-group "$CLUSTER_RG"

Hinweis

Als bewährte Methode sollten Sie 20 Minuten nach dem Löschen eines Clusters warten, bevor Sie versuchen, einen neuen Cluster mit demselben Namen zu erstellen, um sicherzustellen, dass alle zugeordneten Ressourcen gelöscht werden.