Anmerkung
Der Zugriff auf diese Seite erfordert eine Genehmigung. Du kannst versuchen, dich anzumelden oder die Verzeichnisse zu wechseln.
Der Zugriff auf diese Seite erfordert eine Genehmigung. Du kannst versuchen , die Verzeichnisse zu wechseln.
Azure Container Storage ist ein cloudbasierter Volumeverwaltungs-, Bereitstellungs- und Orchestrierungsdienst, der nativ für Container erstellt wurde. In diesem Lernprogramm erstellen Sie einen Azure Kubernetes Service (AKS) -Cluster und installieren Azure Container Storage (Version 1.x.x) auf dem Cluster. Wenn Sie bereits einen AKS-Cluster bereitgestellt haben, empfehlen wir die Installation von Azure Container Storage (Version 1.x.x) mithilfe dieser Schnellstartanleitung , anstatt den manuellen Schritten in diesem Lernprogramm zu folgen.
Von Bedeutung
In diesem Artikel wird erläutert, wie Sie Azure Container Storage (Version 1.x.x) installieren, der jetzt explizit einen Versionsheftungsparameter --container-storage-version 1 für die Installation erfordert.
Azure Container Storage (Version 2.x.x) ist jetzt verfügbar.
- Erstellen einer Ressourcengruppe
- Wählen Sie eine Datenspeicheroption und einen VM-Typ aus.
- Erstellen eines AKS-Clusters
- Herstellen einer Verbindung mit dem Cluster
- Beschriften des Knotenpools
- Der AKS verwalteten Identität die Azure Container Storage Operator-Rolle zuweisen
- Installieren von Azure Container Storage (Version 1.x.x)
Voraussetzungen
Wenn Sie noch kein Azure-Abonnement haben, erstellen Sie ein kostenloses Konto, bevor Sie beginnen.
Für diesen Artikel ist die Azure CLI-Version v2.83.0 oder höher erforderlich. Weitere Informationen finden Sie unter Installieren der Azure CLI. Deaktivieren Sie Erweiterungen wie
aks-preview, wenn Probleme auftreten. Installieren oder Aktualisieren von Erweiterungen nach Bedarf:az extension add --upgrade --name k8s-extension-
az extension add --upgrade --name elastic-san(Nur elastisch SAN)
Sie benötigen den Kubernetes-Befehlszeilenclient.
kubectlSie ist bereits installiert, wenn Sie Azure Cloud Shell verwenden. Sie können es lokal installieren, indem Sie denaz aks install-cliBefehl ausführen.Überprüfen Sie, ob Ihre Zielregion in Azure Container Storage-Regionen unterstützt wird.
- Planen Sie die Konfiguration Ihres Knotenpools:
- Verwenden Sie Linux als Betriebssystemtyp (Windows wird nicht unterstützt).
- Wählen Sie eine VM-SKU aus, die lokale NVMe-Datenträger unterstützt, wenn Sie den lokalen NVMe-Speichertyp verwenden möchten, z. B. speicheroptimierte oder GPU-beschleunigte VMs.
- Stellen Sie für vorhandene Cluster sicher, dass Knotenpools bereits eine unterstützte VM-SKU verwenden, bevor Sie Azure Container Storage aktivieren.
Erste Schritte
Notieren Sie sich Ihre Azure-Abonnement-ID. Wenn Sie Azure Elastic SAN als Datenspeicher verwenden möchten, benötigen Sie entweder eine Azure Container Storage Owner-Rolle oder eine Azure Container Storage-Mitwirkenderrolle , die dem Azure-Abonnement zugewiesen ist. Der Zugriff auf Besitzerebene ermöglicht Ihnen die Installation der Azure Container Storage-Erweiterung, gewährt Zugriff auf seine Speicherressourcen und gewährt Ihnen die Berechtigung, Ihre Azure Elastic SAN-Ressource zu konfigurieren. Mitwirkenden-Zugriff ermöglicht die Installation der Erweiterung und gewährt Zugriff auf die Speicherressourcen der Erweiterung. Wenn Sie planen, Azure Disks oder Ephemeral Disk als Datenspeicher zu verwenden, benötigen Sie keine speziellen Berechtigungen für Ihr Abonnement.
Starten Sie Azure Cloud Shell, oder melden Sie sich mit dem Az-Anmeldebefehl bei der Azure CLI an, wenn Sie eine lokale Installation verwenden.
Wenn Sie Azure Cloud Shell verwenden, werden Sie möglicherweise aufgefordert, Den Speicher einzulagern. Wählen Sie das Azure-Abonnement aus, in dem Sie das Speicherkonto erstellen möchten, und wählen Sie "Erstellen" aus.
Festlegen des Abonnementkontexts
Legen Sie Ihren Azure-Abonnementkontext mithilfe des az account set Befehls fest. Sie können die Abonnement-IDs für alle Abonnements anzeigen, auf die Sie Zugriff haben, indem Sie den az account list --output table Befehl ausführen. Denken Sie daran, <subscription-id> durch Ihre Abonnement-ID zu ersetzen.
az account set --subscription <subscription-id>
Erstellen einer Ressourcengruppe
Eine Azure-Ressourcengruppe ist eine logische Gruppe, die Ihre Azure-Ressourcen enthält, die Sie als Gruppe verwalten möchten. Wenn Sie eine Ressourcengruppe erstellen, werden Sie zur Angabe eines Speicherorts aufgefordert. Dieser Standort ist:
- Der Speicherort Ihrer Metadaten der Ressourcengruppe.
- Wo Ihre Ressourcen in Azure ausgeführt werden, wenn Sie während der Ressourcenerstellung keine andere Region angeben.
Erstellen Sie eine Ressourcengruppe mit dem Befehl az group create. Ersetzen Sie den <resource-group-name> Namen der Ressourcengruppe, die Sie erstellen möchten, und ersetzen <location> Sie sie durch eine Azure-Region wie Ost-, Westus2-, Westus3- oder Westeuropa.
az group create --name <resource-group-name> --location <location>
Wenn die Ressourcengruppe erfolgreich erstellt wurde, sehen Sie eine Ausgabe, die folgendermaßen aussieht:
{
"id": "/subscriptions/<guid>/resourceGroups/myContainerStorageRG",
"location": "eastus",
"managedBy": null,
"name": "myContainerStorageRG",
"properties": {
"provisioningState": "Succeeded"
},
"tags": null
}
Auswählen einer Datenspeicheroption und eines virtuellen Computertyps
Bevor Sie Ihren Cluster erstellen, entscheiden Sie, welche Back-End-Speicheroption für Ihren Speicherpool verwendet werden soll. Verschiedene Speicherdienste funktionieren am besten mit verschiedenen VM-Typen (Virtual Machine) als Clusterknoten, und Sie erstellen den Cluster vor dem Speicherpool.
Datenspeicheroptionen
Azure Elastic SAN: Azure Elastic SAN eignet sich gut für allgemeine Datenbanken, Streaming- und Messagingdienste, CD/CI-Umgebungen und andere Workloads der Ebene 1/Ebene 2. Der Speicher wird bei Bedarf pro erstelltem Volume und erstellter Volumemomentaufnahme bereitgestellt. Mehrere Cluster können gleichzeitig auf ein einzelnes SAN zugreifen, persistente Volumes können jedoch nur jeweils von einem Verbraucher angefügt werden.
Azure Disks: Azure Disks eignen sich gut für Datenbanken wie MySQL, MongoDB und PostgreSQL. Der Speicher wird pro Größe des Zielcontainerspeicherpools und der maximalen Volumegröße bereitgestellt.
Ephemeral Disk: Diese Option verwendet lokale NVMe- oder temp-SSD-Laufwerke auf den AKS-Knoten und verfügt über Unter-ms-Latenz, daher empfiehlt es sich für Anwendungen, die keine Datenbeständigkeit erfordern oder datenreplikation enthalten, z. B. Cassandra. AKS ermittelt den verfügbaren kurzlebigen Speicher auf AKS-Knoten und ruft die Laufwerke für die Volumebereitstellung ab.
Ressourcenverbrauch
Azure Container Storage erfordert bestimmte Knotenressourcen, um Komponenten für den Dienst auszuführen. Basierend auf ihrer Auswahl des Speicherpooltyps, die Sie beim Installieren von Azure Container Storage angeben, sind dies die Ressourcen, die verbraucht werden:
| Speicherpooltyp | CPU-Kerne | RAM |
|---|---|---|
| Azure Elastic SAN | Nichts | Nichts |
| Azure-Datenträger | 1 | 1 GiB |
| Flüchtiger Datenträger - Temp SSD | 1 | 1 GiB |
| Ephemeral Disk - Local NVMe (Standardebene) | 25 % der Prozessorkerne (Leistungsebene kann aktualisiert werden)* | 1 GiB |
Die verbrauchten Ressourcen sind pro Knoten und gelten für jeden Knoten im Knotenpool, in dem Azure Container Storage installiert ist. Wenn Ihre Knoten nicht über genügend Ressourcen verfügen, kann Azure Container Storage nicht ausgeführt werden. Kubernetes versucht automatisch, diese Pods neu zu starten, sodass sie erneut initialisiert werden, sobald Ressourcen verfügbar sind.
*Beim Speicherpooltyp „Kurzlebiger Datenträger – Lokaler NVMe-Datenträger“ mit der Leistungsstufe „Standard“ (Standardeinstellung) gelten die 25 % verbrauchter CPU-Kerne für die kleinste verwendete SKU, wenn Sie mehrere VM-SKU-Typen für Ihre Clusterknoten verwenden. Wenn Sie beispielsweise eine Mischung aus 8-Kern- und 16-Kern-VM-Typen verwenden, beträgt der Ressourcenverbrauch 2 Kerne. Sie können die Leistungsebene aktualisieren , um einen größeren Prozentsatz der Kerne zu verwenden und höhere IOPS zu erzielen.
Stellen Sie sicher, dass der VM-Typ für Ihren Cluster die folgenden Kriterien erfüllt.
Um Azure Container Storage zu verwenden, benötigen Sie einen Knotenpool von mindestens drei Linux-VMs. Jeder virtuelle Computer sollte mindestens vier virtuelle CPUs (vCPUs) aufweisen. Azure Container Storage nutzt einen Kern für die E/A-Verarbeitung auf jeder VM, auf der die Erweiterung bereitgestellt wird.
Befolgen Sie diese Richtlinien, wenn Sie einen VM-Typ für die Clusterknoten auswählen. Sie müssen einen VM-Typ auswählen, der Azure Premium Storage unterstützt.
- Wenn Sie beabsichtigen, Azure Elastic SAN oder Azure Disks als Sicherungsspeicher zu verwenden, wählen Sie einen allgemeinen VM-Typ wie standard_d4s_v5 aus.
- Wenn Sie den ephemeralen Datenträger mit lokalem NVMe verwenden möchten, wählen Sie eine VM-SKU aus, die lokale NVMe-Datenträger unterstützt, z. B. speicheroptimierte VM-SKUs oder gpubeschleunigte VM-SKUs.
- Wenn Sie beabsichtigen, ephemeral Disk mit temp SSD zu verwenden, wählen Sie einen virtuellen Computer mit einem temporären SSD-Datenträger wie Ev3 und Esv3-Serie aus.
Erstellen eines neuen AKS-Clusters und Installieren von Azure Container Storage
Wenn Sie bereits einen AKS-Cluster bereitgestellt haben, befolgen Sie die Installationsanweisungen in dieser Schnellstartanleitung.
Führen Sie den folgenden Befehl aus, um einen neuen AKS-Cluster zu erstellen, Azure Container Storage zu installieren und einen Speicherpool zu erstellen. Ersetzen Sie <cluster-name> und <resource-group> durch Ihre eigenen Werte, und geben Sie an, welchen VM-Typ Sie verwenden möchten. Ersetzen Sie <storage-pool-type> durch azureDisk, ephemeralDisk oder elasticSan. Wenn Sie ephemeralDisk auswählen, müssen Sie auch --storage-pool-option angeben, und die Werte können entweder NVMe oder Temp sein.
Wenn Sie diesen Befehl ausführen, wird Azure Container Storage im Systemknotenpool* mit drei Linux-VMs aktiviert. Wenn Sie lokale NVMe für Den Speicherpooltyp angeben, stellen Sie sicher, dass die Knotenanzahl auf 4 oder höher festgelegt wird, oder der Befehl kann nicht ausgeführt werden.
Standardmäßig heißt nodepool1der Systemknotenpool . Wenn Sie Azure Container Storage in anderen Knotenpools aktivieren möchten, lesen Sie "Installieren von Azure Container Storage" in bestimmten Knotenpools. Wenn Sie mit diesem Befehl weitere Speicherpoolparameter angeben möchten, lesen Sie diese Tabelle.
Wenn es vorhandene Knotenpools mit dem acstor.azure.com/io-engine:acstor Label gibt, installiert Azure Container Storage standardmäßig dort die Komponenten der Datenebene. Andernfalls können Sie den bevorzugten Knotenpool acstor über Azure CLI übergeben. Wenn der Cluster nur über den Systemknotenpool verfügt, wird er standardmäßig für Azure Container Storage bezeichnet und verwendet. Nur Datenebenenkomponenten sind auf den beschrifteten Knotenpool beschränkt. Die Komponenten der Steuerungsebene von Azure Container Storage sind nicht auf die bezeichneten Knoten beschränkt und können auch im Systemknotenpool ausgeführt werden.
Von Bedeutung
Wenn Sie einen Multizonen-AKS-Cluster mit Azure Elastic SAN verwenden: Sie müssen einen zonenredundanten Speicher (ZRS) Elastic SAN verwenden. Der Standardwert für einen Elastic SAN-Speicherpool ist lokal redundanter Speicher (LRS). Um ZRS für Elastic SAN zu aktivieren, verwenden Sie elasticSan für den Speicherpooltyp und fügen Sie das --storage-pool-sku Premium_ZRS-Flag dem folgenden CLI-Befehl hinzu.
az aks create -n <cluster-name> -g <resource-group> --node-vm-size Standard_D4s_v3 --node-count 3 --enable-azure-container-storage <storage-pool-type> --container-storage-version 1 --generate-ssh-keys
Die Bereitstellung dauert 10-15 Minuten. Nach Abschluss des Vorgangs ist ein AKS-Cluster mit Azure Container Storage installiert, die Komponenten für den ausgewählten Speicherpooltyp aktiviert und ein Standardspeicherpool. Wenn Sie weitere Speicherpooltypen zum Erstellen weiterer Speicherpools aktivieren möchten, lesen Sie "Aktivieren weiterer Speicherpooltypen".
Von Bedeutung
Wenn Sie Azure Elastic SAN als Sicherungsspeicher für Ihren Speicherpool angegeben haben und keine Azure Container Storage Owner-Rolle oder Azure Container Storage-Mitwirkenderrolle dem Azure-Abonnement zugewiesen haben, schlägt die Azure Container Storage-Installation fehl, und ein Speicherpool wird nicht erstellt.
Von Bedeutung
Wenn Sie Azure Elastic SAN als Sicherungsspeicher für Ihren Speicherpool angegeben haben und keine Azure Container Storage Owner-Rolle oder Azure Container Storage-Mitwirkenderrolle dem Azure-Abonnement zugewiesen haben, schlägt die Azure Container Storage-Installation fehl, und ein Speicherpool wird nicht erstellt. Wenn Sie versuchen, Azure Elastic SAN als einen anderen Speicherpooltyp ohne eine dieser Rollen zu aktivieren, bleiben Ihre vorherigen Installations- und Speicherpools nicht betroffen, und ein Elastic SAN-Speicherpool wird nicht erstellt.
Anzeigen verfügbarer Speicherpools
Führen Sie den folgenden Befehl aus, um die Liste der verfügbaren Speicherpools abzurufen:
kubectl get sp -n acstor
Führen Sie den folgenden Befehl aus, um den Status eines Speicherpools zu überprüfen:
kubectl describe sp <storage-pool-name> -n acstor
Wenn Message nicht StoragePool is ready lautet, wird der Speicherpool noch erstellt, oder es ist ein Problem aufgetreten. Siehe Problembehandlung bei Azure Container Storage.
Nächster Schritt
Wählen Sie den Link für den ausgewählten Sicherungsspeichertyp aus, und folgen Sie den Anweisungen zum Erstellen von Volumes.
- Erstellen eines persistenten Volumes mit von Azure verwalteten Datenträgern
- Erstellen eines persistenten Volumes mit Azure Elastic SAN
- Erstellen eines generischen ephemeralen Volumes mit lokalem NVMe
- Generisches ephemeres Volume mit temporärer SSD erstellen
- Erstellen eines persistenten Volumes mit lokaler NVMe und Volumereplikation