Auf dieser Seite wird beschrieben, wie Sie ONTAP im ONTAP-Modus verwalten.
Aus Sicherheits- und Protokollierungsgründen sind in NetApp Volumes keine direkten Verbindungen zur ONTAP-Verwaltungs-LIF zulässig. Daher können Sie Tools wie SystemManager oder SSH nicht verwenden, um das ONTAP-System direkt zu verwalten. Stattdessen können Sie ONTAP-Vorgänge für Ihren ONTAP-Speicherpool über eine Google-Proxy-API für ONTAP-REST-API-Aufrufe senden.
Die Verwaltungstools wie Terraform verwenden den Google API-Proxy, um ONTAP-Ressourcen zu verwalten.
Google-Proxy-API für ONTAP REST API-Aufrufe verwenden
NetApp Volumes bietet für jeden Flex Unified ONTAP-Modus-Speicherpool einen Google API-Endpunkt, über den Sie ONTAP REST API-Aufrufe an den zugrunde liegenden ONTAP-Cluster senden können. So können Sie ONTAP-Funktionen über APIs steuern.
Für Aufrufe des ONTAP-Proxys muss das folgende URL-Format verwendet werden:
https://netapp.googleapis.com/v1beta1/projects/PROJECT/locations/LOCATION/storagePools/POOL_NAME/ontap/ONTAP_REST_URL
Diese URL besteht aus folgenden Elementen:
Baseline-URL:
https://netapp.googleapis.com/v1beta1/projectsGoogle-URN für den Speicherpool: /
PROJECT/locations/LOCATION/storagePools/POOL_NAMEErsetzen Sie die folgenden Informationen:
PROJECT: Ihreproject IDoder Nummer.LOCATION: Der Name der Zone für zonale Pools oder die Region für regionale Pools.POOL_NAME: Der Name des Pools.
ONTAP REST API-Pfad: /ontap/
ONTAP_REST_URL. Weitere Informationen finden Sie in der ONTAP REST API-Referenz.
Alle Volumes eines Speicherpools auflisten
Das folgende Beispiel zeigt die vollständige URL zum Auflisten aller Volumes für den Speicherpool mypool in us-central1-a im Projekt myproject.
https://netapp.googleapis.com/v1beta1/projects/myproject/locations/us-central1-a/storagePools/mypool/ontap/api/storage/volumes
Wie alle Google API-Aufrufe muss auch dieser Aufruf authentifiziert werden. Im folgenden CLI-Beispiel wird ein API-Token abgerufen und dann die URL mit curl aufgerufen, um alle Volumes im Pool aufzulisten:
TOKEN=$(gcloud auth print-access-token) curl --location 'https://netapp.googleapis.com/v1beta1/projects/myproject/locations/us-central1-a/storagePools/mypool/ontap/api/storage/volumes'
--header "Authorization: Bearer $TOKEN"
--header "Content-Type: application/json"
Volume erstellen
In diesem Abschnitt wird gezeigt, wie Sie mit der ONTAP REST API ein Volume mit dem Namen myvolume in einem vorhandenen Flex Unified-Speicherpool im ONTAP-Modus mit der URN /projects/myproject/locations/us-central1-a/storagePools/mypool erstellen.
Informationen zum Erstellen eines Volumes finden Sie in der ONTAP REST API-Onlinedokumentation. Rufen Sie in der Dokumentation den Abschnitt Storage auf und maximieren Sie Manage storage volumes (Speichervolumes verwalten). Dieser Abschnitt enthält mehrere Beispiele.
So erstellen Sie ein Volume:
Bestimmen Sie den ONTAP REST API-Endpunkt.
Wenn Sie das einfache Beispiel in NetApp Volumes verwenden, ist der erforderliche ONTAP API-Endpunkt
/api/storage/volumes. Mit diesem Endpunkt wird die URLhttps://netapp.googleapis.com/v1beta1/projects/myproject/locations/us-central1-a/storagePools/mypool/ontap/api/storage/volumeserstellt.Erstellen Sie die Anfragenutzlast.
Verwenden Sie die Beispielnutzlast aus der ONTAP-Dokumentation, um sie an Ihre spezifische Umgebung anzupassen. Beispiel:
{ "name": "vol1", "aggregates": [ { "name": "aggr1" } ], "svm": { "name": "vs1" } }Verwenden Sie beim Erstellen eines Volumes das Feld
name, um den Namen des Volumes zuzuweisen. Für die Nutzlast zum Erstellen von Volumes sind die Namen des Aggregats und der Storage Virtual Machine (SVM) erforderlich, die von NetApp Volumes während der Erstellung des ONTAP-Modus-Pools zugewiesen werden. Im ONTAP-Modus hat jeder Speicherpool eine SVM und ein Speicheraggregat. Diese Informationen können abgerufen werden, indem ONTAP nach allen SVMs abgefragt wird.So rufen Sie die SVM- und Aggregatnamen ab:
ontap_fieldszur Feldauswahl verwenden: Verwenden Sie in NetApp Volumes ONTAP-mode-Pools den Abfrageparameterontap_fields=anstelle des Standard-ONTAP-Parametersfields=, um die angeforderten Felder anzugeben.Optional:
jqverwenden, um Felder zu extrahieren: Im folgenden Beispiel wird das Open-Source-Tool jq verwendet, umname(SVM-Name) undaggregatesaus der JSON-Antwort zu extrahieren. Das ist nützlich für die Verarbeitung in Shell-Skripts.TOKEN=$(gcloud auth print-access-token) curl --location 'https://netapp.googleapis.com/v1beta1/projects/myproject/locations/us-central1-a/storagePools/mypool/ontap/api/svm/svms?ontap_fields=name,aggregates' \ --header "Authorization: Bearer $TOKEN" \ --header "Content-Type: application/json" | jq '.rawResponse.records[] | {name: .name, aggregates: .aggregates[].name}'Beispielantwort:
{ "name": "gcnv-7cf6ee41c1a94f0-svm-01", "aggregates": "aggr1" }
Führen Sie den API-Aufruf zum Erstellen des Volumes aus.
Erstellen Sie mit dem Aggregatnamen (
aggr1) und dem SVM-Namen (gcnv-7cf6ee41c1a94f0-svm-01) die Nutzlast für die endgültige Volume-Erstellung und senden Sie den API-Aufruf. Die ONTAP API-Nutzlast muss für NetApp-Volumes in einembody: {}-Umschlag eingeschlossen werden.Im folgenden Beispiel wird ein Volume mit dem Namen
myvolumeund einer Größe von 2 GB erstellt:curl --location 'https://netapp.googleapis.com/v1beta1/projects/myproject/locations/us-central1-a/storagePools/mypool/ontap/api/storage/volumes' \ --header "Authorization: Bearer $TOKEN" \ --header "Content-Type: application/json" \ --data '{ "body": { "name": "myvolume", "aggregates": [ { "name": "aggr1" } ], "svm": { "name": "gcnv-7cf6ee41c1a94f0-svm-01" }, "size": "2GB" } }'Beim Erstellen von Volumes werden viele optionale Parameter unterstützt, z. B.
size. Die Nutzlast gibt beispielsweise eine Größe von 2 GB an. Auf der Dokumentationsseite der Ressource sind alle verfügbaren Parameter aufgeführt, einschließlich der erforderlichen und optionalen Parameter. Außerdem enthält sie detaillierte Beispiele für Nutzlasten und Antworttexte.ONTAP-Job überwachen
Die meisten ONTAP-API-Aufrufe, z. B.
POST- oderPATCH-Vorgänge, mit denen Ressourcen erstellt oder aktualisiert werden, werden nicht synchron ausgeführt. Stattdessen wird eine ONTAP-Jobressource zurückgegeben, wie im Beispiel für die Volume-Erstellung gezeigt.Beispiel für eine Antwort auf eine Anfrage zu einem Job:
{ "body": { "job": { "_links": { "self": { "href": "curl --location 'https://netapp.googleapis.com/v1beta1/projects/myproject/locations/us-central1-a/storagePools/mypool/ontap/api/cluster/jobs/15be1c46-fd2c-11f0-b3c2-7f15697be61c' \ --header "Authorization: Bearer $TOKEN" \ --header "Content-Type: application/json"" } }, "uuid": "15be1c46-fd2c-11f0-b3c2-7f15697be61c" } } }Wenn Sie den Status des Jobs prüfen möchten, fragen Sie die Jobressource mit der zurückgegebenen
uuidab:curl --location 'https://netapp.googleapis.com/v1beta1/projects/myproject/locations/us-central1-a/storagePools/mypool/ontap/api/cluster/jobs/15be1c46-fd2c-11f0-b3c2-7f15697be61c' \ --header "Authorization: Bearer $TOKEN" \ --header "Content-Type: application/json"
Beispielantwort:
{ "rawResponse": { "uuid": "15be1c46-fd2c-11f0-b3c2-7f15697be61c", "description": "POST /api/storage/volumes/15be0ad9-fd2c-11f0-b3c2-7f15697be61c", "state": "success", "message": "success", "code": 0, "start_time": "2026-01-29T16:03:43+00:00", "end_time": "2026-01-29T16:03:44+00:00", "svm": { "name": "gcnv-7cf6ee41c1a94f0-svm-01", "uuid": "8a29c15d-fb31-11f0-ab03-03e1bb49206d" } } }Wenn
statesuccessist, wird das Volume erstellt.In diesem Beispiel-Workflow wird beschrieben, wie Sie ONTAP-Aktionen in der ONTAP REST API-Dokumentation nachschlagen. Außerdem wird gezeigt, wie Sie das erforderliche Nutzlastformat erstellen und es mit einer Google API an den Speicherpool senden. Schließlich wird gezeigt, wie ein ONTAP-Job überwacht wird, bis die Ressource erstellt ist. Mit diesem Ansatz können Sie die meisten ONTAP-Einstellungen für Ihren Speicherpool steuern.
Zulässige ONTAP-Aktionen
Wenn Sie über den API- oder CLI-Proxy auf einen Pool zugreifen, haben Sie eingeschränkte Berechtigungen und können nicht alle ONTAP-Befehle ausführen. So wird die Integrität des Systems geschützt. Bei einigen APIs filtert das System API-Anfrage- und Antwortnutzlasten. Da bei NetApp Volumes beispielsweise die logische Kapazität abgerechnet wird, werden Parameter zum Konfigurieren der physischen Kapazität vom System blockiert. Wenn Sie einen nicht zulässigen Parameter senden, gibt die API einen Fehler zurück.
ONTAP-Modus-Pool löschen
Wenn Sie einen Pool im ONTAP-Modus löschen möchten, müssen Sie zuerst alle Volumes im Pool löschen.