Skip to main content
NetApp Automation
Die deutsche Sprachversion wurde als Serviceleistung für Sie durch maschinelle Übersetzung erstellt. Bei eventuellen Unstimmigkeiten hat die englische Sprachversion Vorrang.

Cloud Volumes ONTAP für Azure – Burst in die Cloud

Beitragende netapp-aoife dmp-netapp

Dieser Artikel unterstützt die NetApp Cloud Volumes ONTAP für die Azure-Automatisierungslösung, die NetApp Kunden aus dem BlueXP -Automatisierungskatalog erhalten.

Die Automatisierungslösung Cloud Volumes ONTAP für Azure automatisiert die Container-Implementierung von Cloud Volumes ONTAP für Azure mithilfe von Terraform, sodass Sie Cloud Volumes ONTAP für Azure schnell und ohne manuelles Eingreifen implementieren können.

Bevor Sie beginnen
  • Sie müssen die Automatisierungslösung über die Web-Oberfläche von BlueXP  herunterladen"Cloud Volumes ONTAP Azure – Burst in die Cloud". Die Lösung ist als verpackt CVO-Azure-Burst-To-Cloud.zip.

  • Sie müssen eine Linux-VM im gleichen Netzwerk wie Cloud Volumes ONTAP installieren.

  • Nach der Installation der Linux-VM müssen Sie die Schritte in dieser Lösung befolgen, um die erforderlichen Abhängigkeiten zu installieren.

Schritt: Installieren Sie Docker und Docker Compose

Installation Von Docker

Die folgenden Schritte verwenden Ubuntu 20.04 Debian Linux-Distributionssoftware als Beispiel. Die Befehle, die Sie ausführen, hängen von der Linux-Distributionssoftware ab, die Sie verwenden. Informationen zur Konfiguration finden Sie in der Dokumentation der jeweiligen Linux-Distributionssoftware.

Schritte
  1. Installieren Sie Docker, indem Sie die folgenden Befehle ausführen sudo:

    sudo apt-get update
    sudo apt-get install apt-transport-https cacertificates curl gnupg-agent software-properties-common curl -fsSL https://download.docker.com/linux/ubuntu/gpg |
    sudo apt-key add -
    sudo add-apt-repository “deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable”
    sudo apt-get update
    sudo apt-get install dockerce docker-ce-cli containerd.io
  2. Überprüfen Sie die Installation:

    docker –version
  3. Vergewissern Sie sich, dass auf Ihrem Linux-System eine Gruppe namens „Docker“ erstellt wurde. Erstellen Sie bei Bedarf die Gruppe:

    sudo groupadd docker
  4. Fügen Sie den Benutzer hinzu, der der Gruppe Zugriff auf Docker benötigt:

    sudo usermod -aG docker $(whoami)
  5. Ihre Änderungen werden übernommen, nachdem Sie sich beim Terminal abmelden und wieder anmelden. Alternativ können Sie die Änderungen sofort anwenden:

    newgrp docker

Installieren Sie Docker Compose

Schritte
  1. Installieren Sie Docker Compose, indem Sie die folgenden Befehle ausführen sudo:

    sudo curl -L “https://github.com/docker/compose/releases/download/1.29.2/dockercompose-(𝑢𝑛𝑎𝑚𝑒 − 𝑠)−(uname -m)” -o /usr/local/bin/docker-compose
    sudo chmod +x /usr/local/bin/docker-compose
  2. Überprüfen Sie die Installation:

    docker-compose –version

Schritt 2: Vorbereiten des Docker Images

Schritte
  1. Kopieren Sie den CVO-Azure-Burst-To-Cloud.zip Ordner auf die Linux-VM, die Sie zum Bereitstellen von Cloud Volumes ONTAP verwenden möchten:

    scp -i ~/<private-key>.pem -r CVO-Azure-Burst-To-Cloud.zip <azureuser>@<IP_ADDRESS_OF_VM>:<LOCATION_TO_BE_COPIED>
    • private-key.pem Ist Ihre private Schlüsseldatei für die Anmeldung ohne Kennwort.

    • azureuser Ist der VM-Benutzername.

    • IP_ADDRESS_OF_VM Ist die VM IP-Adresse.

    • LOCATION_TO_BE_COPIED Ist der Speicherort, an den der Ordner kopiert werden soll.

  2. Extrahieren Sie den CVO-Azure-Burst-To-Cloud.zip Ordner. Sie können den Ordner im aktuellen Verzeichnis oder an einem benutzerdefinierten Speicherort extrahieren.

    Um den Ordner im aktuellen Verzeichnis zu extrahieren, führen Sie Folgendes aus:

    unzip CVO-Azure-Burst-To-Cloud.zip

    Um den Ordner an einem benutzerdefinierten Speicherort zu extrahieren, führen Sie Folgendes aus:

    unzip CVO-Azure-Burst-To-Cloud.zip -d ~/<your_folder_name>
  3. Navigieren Sie nach dem Extrahieren des Inhalts zum Ordner, CVO_Azure_Deployment und führen Sie den folgenden Befehl aus, um die Dateien anzuzeigen:

     ls -la

    Sie sollten eine Liste von Dateien sehen, ähnlich wie das folgende Beispiel:

    drwxr-xr-x@ 11 user1 staff 352 May 5 13:56 .
    drwxr-xr-x@ 5 user1 staff 160 May 5 14:24 ..
    -rw-r--r--@ 1 user1 staff 324 May 5 13:18 .env
    -rw-r--r--@ 1 user1 staff 1449 May 5 13:18 Dockerfile
    -rw-r--r--@ 1 user1 staff 35149 May 5 13:18 LICENSE
    -rw-r--r--@ 1 user1 staff 13356 May 5 14:26 README.md
    -rw-r--r-- 1  user1 staff 354318151 May 5 13:51 cvo_azure_flexcache_ubuntu_image_latest
    drwxr-xr-x@ 4 user1 staff 128 May 5 13:18 cvo_azure_variables
    -rw-r--r--@ 1 user1 staff 996 May 5 13:18 docker-compose-deploy.yml
    -rw-r--r--@ 1 user1 staff 1041 May 5 13:18 docker-compose-destroy.yml
    -rw-r--r--@ 1 user1 staff 4771 May 5 13:18 sp_role.json
  4. Suchen Sie die cvo_azure_flexcache_ubuntu_image_latest.tar.gz Datei. Dieses enthält das Docker Image, das für die Implementierung von Cloud Volumes ONTAP für Azure erforderlich ist.

  5. Enttaren Sie die Datei:

    docker load -i cvo_azure_flexcache_ubuntu_image_latest.tar.gz
  6. Warten Sie einige Minuten, bis das Docker-Image geladen ist, und überprüfen Sie dann, ob das Docker-Image erfolgreich geladen wurde:

    docker images

    Sie sollten ein Docker-Image mit dem latest Tag sehen cvo_azure_flexcache_ubuntu_image_latest, wie im folgenden Beispiel gezeigt:

    REPOSITORY TAG IMAGE ID CREATED SIZE
    cvo_azure_flexcache_ubuntu_image latest 18db15a4d59c 2 weeks ago 1.14GB

Schritt 3: Erstellen Sie variable Umgebungsdateien

In dieser Phase müssen Sie zwei Umgebungsvariablen erstellen. Eine Datei dient zur Authentifizierung der Azure Resource Manager APIs mit den Anmeldeinformationen für das Serviceprinzipal. Die zweite Datei dient zum Festlegen von Umgebungsvariablen, die BlueXP  Terraform-Module zum Auffinden und Authentifizieren von Azure APIs ermöglichen.

Schritte
  1. Erstellen Sie einen Dienstprinzipal.

    Bevor Sie die Umgebungsvariablen-Dateien erstellen können, müssen Sie einen Dienstprinzipal erstellen, indem Sie die Schritte in befolgen"Erstellen Sie eine Azure Active Directory-Applikation und einen Dienstprinzipal, die auf Ressourcen zugreifen können".

  2. Weisen Sie die Rolle Contributor dem neu erstellten Service-Prinzipal zu.

  3. Erstellen Sie eine benutzerdefinierte Rolle.

    1. Suchen Sie die sp_role.json Datei, und prüfen Sie unter den aufgeführten Aktionen, ob die erforderlichen Berechtigungen vorhanden sind.

    2. Fügen Sie diese Berechtigungen ein und hängen Sie die benutzerdefinierte Rolle an den neu erstellten Dienstprinzipal an.

  4. Navigieren Sie zu Certificates & Secrets und wählen Sie New Client secret, um das Client-Secret zu erstellen.

    Wenn Sie das Client-Secret erstellen, müssen Sie die Details aus der Spalte Wert aufzeichnen, da Sie diesen Wert nicht mehr sehen können. Außerdem müssen Sie folgende Informationen erfassen:

    • Client-ID

    • Abonnement-ID

    • Mandanten-ID

      Sie benötigen diese Informationen, um die Umgebungsvariablen zu erstellen. Die Client-ID und die Mandanten-ID finden Sie im Abschnitt Übersicht der Service Principal UI.

  5. Erstellen Sie die Umgebungsdateien.

    1. Erstellen Sie die azureauth.env Datei an folgendem Speicherort:

      path/to/env-file/azureauth.env

      1. Fügen Sie der Datei folgenden Inhalt hinzu:

        ClientID=<> ClientSecret=<> SubscriptionID=<> tenantId=<>

      Das Format muss genau wie oben dargestellt sein, ohne Leerzeichen zwischen Schlüssel und Wert.

    2. Erstellen Sie die credentials.env Datei an folgendem Speicherort:

      path/to/env-file/credentials.env

      1. Fügen Sie der Datei folgenden Inhalt hinzu:

        AZURE_TENANT_ID=<> AZURE_CLIENT_SECRET=<> AZURE_CLIENT_ID=<> AZURE_SUBSCRIPTION_ID=<>

    Das Format muss genau wie oben dargestellt sein, ohne Leerzeichen zwischen Schlüssel und Wert.

  6. Fügen Sie der Datei die absoluten Dateipfade hinzu .env.

    Geben Sie den absoluten Pfad für die Umgebungsdatei in die .env Datei ein azureauth.env, die der Umgebungsvariable entspricht AZURE_RM_CREDS.

    AZURE_RM_CREDS=path/to/env-file/azureauth.env

    Geben Sie den absoluten Pfad für die Umgebungsdatei in die .env Datei ein credentials.env, die der Umgebungsvariable entspricht BLUEXP_TF_AZURE_CREDS.

    BLUEXP_TF_AZURE_CREDS=path/to/env-file/credentials.env

Schritt 4: Cloud Volumes ONTAP-Lizenzen zu BlueXP  hinzufügen oder BlueXP  abonnieren

Sie können Cloud Volumes ONTAP Lizenzen zu BlueXP  hinzufügen oder NetApp BlueXP  im Azure Marketplace abonnieren.

Schritte
  1. Navigieren Sie im Azure-Portal zu SaaS und wählen Sie NetApp BlueXP  abonnieren.

  2. Wählen Sie den Plan Cloud Manager (nach Cap PYGO nach Stunde, WORM und Datendiensten) aus.

    Sie können entweder dieselbe Ressourcengruppe wie Cloud Volumes ONTAP oder eine andere Ressourcengruppe verwenden.

  3. Konfigurieren Sie das BlueXP -Portal für den Import des SaaS-Abonnements in BlueXP .

    Sie können dies direkt über das Azure-Portal konfigurieren, indem Sie zu Produkt- und Plandetails navigieren und die Option Jetzt Konto konfigurieren auswählen.

    Sie werden dann zum BlueXP -Portal weitergeleitet, um die Konfiguration zu bestätigen.

  4. Bestätigen Sie die Konfiguration im BlueXP -Portal mit Speichern.

Schritt 5: Erstellen Sie ein externes Volume

Sie sollten ein externes Volume erstellen, damit die Terraform-Statusdateien und andere wichtige Dateien erhalten bleiben. Sie müssen sicherstellen, dass die Dateien für Terraform verfügbar sind, um den Workflow und die Implementierungen auszuführen.

Schritte
  1. Externes Volume außerhalb von Docker Compose erstellen:

    docker volume create « volume_name »

    Beispiel:

    docker volume create cvo_azure_volume_dst
  2. Verwenden Sie eine der folgenden Optionen:

    1. Fügen Sie einen externen Volume-Pfad zur Umgebungsdatei hinzu .env.

      Sie müssen das genaue unten dargestellte Format einhalten.

      Format:

      PERSISTENT_VOL=path/to/external/volume:/cvo_azure

      Beispiel:
      PERSISTENT_VOL=cvo_azure_volume_dst:/cvo_azure

    2. Fügen Sie NFS-Freigaben als externes Volume hinzu.

      Stellen Sie sicher, dass der Docker Container mit den NFS-Freigaben kommunizieren kann und dass die korrekten Berechtigungen wie Lese-/Schreibvorgänge konfiguriert sind.

      1. Fügen Sie den Pfad der NFS-Freigaben als Pfad zum externen Volume in der Docker Compose-Datei hinzu, wie unten gezeigt: Format:

        PERSISTENT_VOL=path/to/nfs/volume:/cvo_azure

    Beispiel:
    PERSISTENT_VOL=nfs/mnt/document:/cvo_azure

  3. Navigieren Sie zum cvo_azure_variables Ordner.

    Im Ordner sollten die folgenden Variablendateien angezeigt werden:

    terraform.tfvars

    variables.tf

  4. Ändern Sie die Werte innerhalb der terraform.tfvars Datei entsprechend Ihren Anforderungen.

    Sie müssen die spezifische Begleitdokumentation lesen, wenn Sie einen der Variablenwerte in der Datei ändern terraform.tfvars. Die Werte können je nach Region, Verfügbarkeitszonen und anderen von Cloud Volumes ONTAP für Azure unterstützten Faktoren variieren. Dies umfasst Lizenzen, Festplattengröße und VM-Größe für einzelne Nodes sowie Hochverfügbarkeitspaare (HA).

    Alle unterstützenden Variablen für die Module Connector und Cloud Volumes ONTAP Terraform sind bereits in der Datei definiert variables.tf. Sie müssen sich auf die Variablennamen in der Datei beziehen variables.tf, bevor Sie sie zur Datei hinzufügen terraform.tfvars.

  5. Je nach Ihren Anforderungen können Sie FlexCache und FlexClone aktivieren oder deaktivieren, indem Sie die folgenden Optionen auf oder false einstellen true.

    Die folgenden Beispiele aktivieren FlexCache und FlexClone:

    • is_flexcache_required = true

    • is_flexclone_required = true

  6. Bei Bedarf können Sie den Wert für die Terraform-Variable aus dem Azure Active Directory-Dienst abrufen az_service_principal_object_id:

    1. Navigieren Sie zu Enterprise Applications –> All Applications und wählen Sie den Namen des zuvor erstellten Service Principal aus.

    2. Kopieren Sie die Objekt-ID, und fügen Sie den Wert für die Terraform-Variable ein:

      az_service_principal_object_id

Schritt 6: Implementierung von Cloud Volumes ONTAP für Azure

Gehen Sie wie folgt vor, um Cloud Volumes ONTAP für Azure zu implementieren.

Schritte
  1. Führen Sie im Stammordner den folgenden Befehl aus, um die Bereitstellung auszulösen:

    docker-compose up -d

    Zwei Container werden ausgelöst, der erste Container implementiert Cloud Volumes ONTAP und der zweite Container sendet Telemetriedaten an AutoSupport.

    Der zweite Container wartet, bis der erste Container alle Schritte erfolgreich abgeschlossen hat.

  2. Überwachen Sie den Fortschritt des Bereitstellungsprozesses mithilfe der Protokolldateien:

    docker-compose logs -f

    Dieser Befehl liefert die Ausgabe in Echtzeit und erfasst die Daten in den folgenden Protokolldateien:

    deployment.log

    telemetry_asup.log

    Sie können den Namen dieser Protokolldateien ändern, indem Sie die Datei mithilfe der folgenden Umgebungsvariablen bearbeiten .env:

    DEPLOYMENT_LOGS

    TELEMETRY_ASUP_LOGS

    Die folgenden Beispiele zeigen, wie Sie die Protokolldateinamen ändern:

    DEPLOYMENT_LOGS=<your_deployment_log_filename>.log

    TELEMETRY_ASUP_LOGS=<your_telemetry_asup_log_filename>.log

Nachdem Sie fertig sind

Mit den folgenden Schritten können Sie die temporäre Umgebung entfernen und Elemente bereinigen, die während des Bereitstellungsprozesses erstellt wurden.

Schritte
  1. Wenn Sie FlexCache bereitgestellt haben, legen Sie die folgende Option in der terraform.tfvars Datei fest. Dadurch werden FlexCache-Volumes bereinigt und die zuvor erstellte temporäre Umgebung wird entfernt.

    flexcache_operation = "destroy"

    Hinweis Die möglichen Optionen sind deploy und destroy.
  2. Wenn Sie FlexClone bereitgestellt haben, legen Sie die folgende Option in der terraform.tfvars Datei fest. Dadurch werden FlexClone-Volumes bereinigt und die zuvor erstellte temporäre Umgebung wird entfernt.

    flexclone_operation = "destroy"

    Hinweis Die möglichen Optionen sind deploy und destroy.