Hinzufügen von Azure Dedicated Host zu einem AKS-Cluster (Azure Kubernetes Service)

Azure Dedicated Host ist ein Dienst zum Bereitstellen physischer Server, die virtuelle Computer hosten können und ausschließlich für ein Azure-Abonnement reserviert sind. Dedizierte Hosts sind die in unseren Rechenzentren verwendeten physischen Server, die als Ressource bereitgestellt werden. Sie können dedizierte Hosts in einer Region, in einer Verfügbarkeitszone und in einer Fehlerdomäne bereitstellen. Anschließend können Sie VMs direkt in Ihren bereitgestellten Hosts platzieren, und zwar in einer beliebigen Konfiguration, die Ihren Anforderungen am besten entspricht.

Die Verwendung von Azure Dedicated Host-Instanzen für Knoten mit Ihrem AKS-Cluster hat die folgenden Vorteile:

  • Hardwareisolation auf physischer Serverebene. Es werden keine anderen virtuellen Computer auf Ihren Hosts platziert. Dedizierte Hosts werden in denselben Rechenzentren bereitgestellt und nutzen dasselbe Netzwerk und dieselbe zugrunde liegende Speicherinfrastruktur wie andere, nicht isolierte Hosts.
  • Kontrolle über Wartungsereignisse, die von der Azure-Plattform initiiert werden. Die meisten Wartungsereignisse haben nur geringfügige oder gar keine Auswirkungen auf Ihre virtuellen Computer, es gibt jedoch einige empfindliche Workloads, bei denen jede Sekunde Pause Auswirkungen haben kann. Mit dedizierten Hosts können Sie sich für ein Wartungsfenster anmelden, um die Auswirkungen auf Ihren Dienst zu verringern.

Voraussetzungen

  • Ein Azure-Abonnement. Falls Sie über kein Azure-Abonnement verfügen, können Sie ein kostenloses Konto erstellen.
  • Bevor Sie beginnen, stellen Sie sicher, dass Ihre Version von Azure CLI 2.39.0 oder höher ist. Wenn es sich um eine frühere Version handelt, installieren Sie die neueste Version.

Einschränkungen

Die folgenden Einschränkungen gelten, wenn Sie Azure Dedicated Host in Azure Kubernetes Service integrieren:

  • Beschleunigter Netzwerkbetrieb
  • Ein vorhandener Agentpool kann nicht von Nicht-ADH in ADH oder ADH in Nicht-ADH konvertiert werden.
  • Das Aktualisieren des Agentpools von Hostgruppe A auf Hostgruppe B wird nicht unterstützt.
  • Verwenden von ADH über Abonnements hinweg.

Planen der ADH-Kapazität in AKS

Nicht alle Host-SKUs sind in allen Regionen und allen Verfügbarkeitszonen verfügbar. Sie können die Hostverfügbarkeit und alle Angebotseinschränkungen auflisten, bevor Sie mit der Bereitstellung dedizierter Hosts beginnen.

az vm list-skus -l eastus  -r hostGroups/hosts  -o table

Hinweis

Erstens: Bei Verwendung einer Hostgruppe entspricht die Anzahl von Knotenpool-Fehlerdomänen immer der Anzahl von Hostgruppen-Fehlerdomänen. Stellen Sie sicher, dass die Anzahl von Hostgruppenfehlerdomänen und die Kapazität ausreichen, um die automatische Skalierung von Clustern für die Arbeit mit ADH und AKS verwenden zu können. Zweitens: Legen Sie die Standardanzahl von Fehlerdomänen (1) nur auf eine andere Zahl fest, wenn Sie mit den Auswirkungen vertraut sind. Eine Fehlkonfiguration kann zu einer nicht skalierbaren Konfiguration führen.

Bestimmen Sie anhand der erwarteten VM-Auslastung, wie viele Hosts Sie benötigen würden.

Bewerten Sie die Hostauslastung, um die Anzahl der zuordenbaren VMs nach Größe vor der Bereitstellung zu ermitteln.

az vm host get-instance-view -g myDHResourceGroup --host-group MyHostGroup --name MyHost

Hinzufügen einer Dedicated Host-Gruppe zu einem AKS-Cluster

Eine Hostgruppe ist eine Ressource, die eine Sammlung dedizierter Hosts darstellt. Sie erstellen eine Hostgruppe in einer Region und einer Verfügbarkeitszone und fügen ihr Hosts hinzu. Bei der Planung für Hochverfügbarkeit stehen mehr Optionen zur Verfügung. Sie können eine oder beide der folgenden Optionen mit Ihren dedizierten Hosts verwenden:

  • Ausdehnen über mehrere Verfügbarkeitszonen. In diesem Fall muss in jeder Zone, die Sie verwenden möchten, eine Hostgruppe vorhanden sein.
  • Ausdehnen über mehrere Fehlerdomänen, die physischen Racks zugeordnet sind.

In jedem Fall müssen Sie die Anzahl der Fehlerdomänen für Ihre Hostgruppe angeben. Wenn Ihre Gruppe keine Fehlerdomänen umfassen soll, verwenden Sie 1 als Anzahl von Fehlerdomänen.

Sie können auch sowohl Verfügbarkeitszonen als auch Fehlerdomänen verwenden.

Erstellen einer Hostgruppe

Erstellen Sie nun einen dedizierten Host in der Hostgruppe. Zusätzlich zu einem Namen müssen Sie die SKU für den Host angeben. Die Host-SKU erfasst die unterstützte VM-Serie und die Hardwaregeneration für Ihren dedizierten Host.

Weitere Informationen zu den Host-SKUs und Preisen finden Sie unter Azure Dedicated Host – Preise.

Erstellen Sie mit az vm host create einen Host. Beim Festlegen der Anzahl der Fehlerdomänen für die Hostgruppe werden Sie aufgefordert, die Fehlerdomäne für den Host anzugeben.

In diesem Beispiel verwenden wir az vm host group create, um eine Hostgruppe mit Verfügbarkeitszonen und Fehlerdomänen zu erstellen.

az vm host group create \
--name myHostGroup \
-g myDHResourceGroup \
-z 1 \
--platform-fault-domain-count 1 \
--automatic-placement true

Erstellen eines dedizierten Hosts

Erstellen Sie nun einen dedizierten Host in der Hostgruppe. Zusätzlich zu einem Namen müssen Sie die SKU für den Host angeben. Die Host-SKU erfasst die unterstützte VM-Serie und die Hardwaregeneration für Ihren dedizierten Host.

Beim Festlegen der Anzahl der Fehlerdomänen für Ihre Hostgruppe müssen Sie die Fehlerdomäne für Ihren Host angeben.

az vm host create \
--host-group myHostGroup \
--name myHost \
--sku DSv3-Type1 \
--platform-fault-domain 1 \
-g myDHResourceGroup

Verwenden einer benutzerseitig zugewiesenen Identität

Wichtig

Eine benutzerseitig zugewiesene Identität mit der Rolle „Mitwirkender“ für die Ressourcengruppe der Hostgruppe ist erforderlich.

Erstellen Sie zunächst eine verwaltete Identität.

az identity create -g <Resource Group> -n <Managed Identity name>

Zuweisen einer verwalteten Identität

az role assignment create --assignee <id> --role "Contributor" --scope <Resource id>

Erstellen eines AKS-Clusters mithilfe der Hostgruppe

Erstellen Sie einen AKS-Cluster, und fügen Sie die soeben konfigurierte Hostgruppe hinzu.

az aks create -g MyResourceGroup -n MyManagedCluster --location eastus --nodepool-name agentpool1 --node-count 1 --host-group-id <id> --node-vm-size Standard_D2s_v3 --enable-managed-identity --assign-identity <id>

Hinzufügen eines Dedicated Host-Knotenpools zu einem vorhandenen AKS-Cluster

Fügen Sie einem bereits vorhandenen AKS-Cluster eine Hostgruppe hinzu.

az aks nodepool add --cluster-name MyManagedCluster --name agentpool3 --resource-group MyResourceGroup --node-count 1 --host-group-id <id> --node-vm-size Standard_D2s_v3

Entfernen eines Dedicated Host-Knotenpools aus einem AKS-Cluster

az aks nodepool delete --cluster-name MyManagedCluster --name agentpool3 --resource-group MyResourceGroup

Nächste Schritte

In diesem Artikel haben Sie erfahren, wie Sie einen AKS-Cluster mit einem dedizierten Host erstellen und einem vorhandenen Cluster einen dedizierten Host hinzufügen. Weitere Informationen zu dedizierten Hosts finden Sie unter Dedizierte Azure-Hosts.