Cloud Volumes Service
Die deutsche Sprachversion wurde als Serviceleistung für Sie durch maschinelle Übersetzung erstellt. Bei eventuellen Unstimmigkeiten hat die englische Sprachversion Vorrang.

Cloud Volumes APIs

Beitragende

Die Funktionen von Cloud Volumes, die über die Web-Oberfläche verfügbar sind, sind auch über RESTful APIs verfügbar. Die APIs ermöglichen es Ihnen, Cloud Volumes zu erstellen und zu managen und Bereitstellungsskripte und Tools zu entwickeln.

Suchen der API-URL, des API-Schlüssels und des Geheimschlüssels

Sie benötigen die Cloud Volumes API-URL, den API-Schlüssel und den geheimen Schlüssel, um einen API-Aufruf auszuführen.

Schritte
  1. Klicken Sie auf der Speicherseite oder im Dropdown-Menü unter Ihrem Benutzernamen auf API Access.

  2. Notieren Sie die URL, den API-Schlüssel und den geheimen Schlüssel der Cloud Volumes.

Auflistung der verfügbaren APIs

Auf der Seite Speicher werden die verfügbaren APIs angezeigt, die Sie verwenden können.

Schritte
  1. Klicken Sie auf der Speicherseite auf API-Dokumentation.

    Auf der Seite werden die verfügbaren APIs aufgeführt.

  2. Blättern Sie durch die Seite, um die verfügbaren APIs anzuzeigen.

    Die APIs sind nach Funktionen aufgeführt, beispielsweise:

    • volumes

    • mounttargets

    • storage

    • snapshots

  3. Um Details und Beispiele zur Verwendung eines API-Aufrufs zu erhalten, wählen Sie die Funktion aus, und klicken Sie auf eine der folgenden Aktionen:

    • GET: Liest

    • POST: Erstellt

    • PUT: Aktualisiert oder modifiziert

    • DELETE: Zerstört

Verwendung der Cloud Volumes APIs

In diesem Abschnitt wird die Verwendung der Cloud Volumes APIs erläutert. Die Beispiele verwenden Curl aus einer Linux-Bash-Shell. Sie müssen ersetzen <api_url>, <api_key>, und <secret_key> Mit den Werten, die Sie von aufgezeichnet haben Suchen der API-URL, des API-Schlüssels und des Geheimschlüssels.

Syntax

curl -s -H accept:application/json -H "Content-type: application/json" -H api-key:<api_key> -H secret-key:<secret_key> -X [GET,POST,PUT,DELETE] <api_url>/v2/<command>

Beispiele

Auflisten von Volumes

Im folgenden Beispiel werden Informationen über alle Volumes angezeigt:

Hinweis Paspeln des Befehls über jq Verbessert die Formatierung der json Ausgabe: Sie müssen eventuell installieren jq Auf Ihrem System.
curl -s -H accept:application/json -H "Content-type: application/json" -H api-key:<api_key> -H secret-key:<secret_key> -X GET <api_url>/v2/Volumes | jq

Auflistung der Details für ein bestimmtes Volumen

Jedes Volume hat eine ID, die aufgerufen wird volumeId, Zum Beispiel, 07c9ab6c-b655-a9fe-f904-b9b97ef9baaa. Mit der ID im API-Aufruf erhalten Sie Details zum jeweiligen Volume:

curl -s -H accept:application/json -H "Content-type: application/json" -H api-key:<api_key> -H secret-key:<secret_key> -X GET <api_url>/v2/Volumes/<volumeId> | jq

Erstellen eines Volumes

Im folgenden Beispiel wird eine verwendet POST Aufruf zum Erstellen eines Volume namens Test, In der Region us-west-1, Mit einem allocated capacity 100 GB groß und mit exportiert nfsv3:

curl -s -H accept:application/json -H "Content-type: application/json" -H api-key:<api_key> -H secret-key:<secret_key> -X POST <api_url>/v2/Volumes -d '
{
	"name": "Test",
	"creationToken": "grahams-test-volume3",
	"region": "us-west-1",
	"serviceLevel": "standard",
	"quotaInBytes": 100000000000,
	"exportPolicy": {"rules": [{"ruleIndex": 1,"allowedClients": "0.0.0.0/0","unixReadOnly": false,"unixReadWrite": true,"cifs": false,"nfsv3": true,"nfsv4": false}]},
	"protocolTypes": ["NFSv3"],
	"labels": ["test"]
}'

Aktualisieren eines Volumes

Im folgenden Beispiel wird eine verwendet PUT Aufruf zur Aktualisierung eines Volume namens Test, Ändern Sie den Service-Level in extreme, Und ändern Sie die zugewiesene Kapazität auf 600 GB:

curl -s -H accept:application/json -H "Content-type: application/json" -H api-key:<api_key> -H secret-key:<secret_key> -X PUT <api_url>/v2/Volumes/<volumeId> -d '
{
	"serviceLevel": "extreme",
	"quotaInBytes": 600000000000
}'

Löschen eines Volumes

Im folgenden Beispiel wird eine verwendet DELETE Anruf zum Löschen eines von angegebenen Volumes volumeId:

curl -s -H accept:application/json -H "Content-type: application/json" -H api-key:<api_key> -H secret-key:<secret_key> -X DELETE <api_url>/v2/Volumes/<volumeId>
Wichtig Mit Vorsicht verwenden. Dieser API-Aufruf löscht das Volume und alle seine Daten.

Erstellen eines Snapshots

Im folgenden Beispiel wird eine verwendet POST Aufruf zum Erstellen eines Snapshots namens snappy Für ein bestimmtes Volume:

curl -s -H accept:application/json -H "Content-type: application/json" -H api-key:<api_key> -H secret-key:<secret_key> -X POST <api_url>/v2/Volumes/<volumeId>/Snapshots -d '
{
	"name": "<snapshot-name>"
}'

Erstellen einer Snapshot-Richtlinie

Im folgenden Beispiel wird eine verwendet PUT Aufruf zur Erstellung von Snapshot-Richtlinien für ein bestimmtes Volume:

curl -s -H accept:application/json -H "Content-type: application/json" -H api-key:<api_key> -H secret-key:<secret_key> -X PUT <api_url>/v2/Volumes/<volumeId> -d '
{
	"snapshotPolicy": {
        "dailySchedule": {},
        "enabled": true,
        "hourlySchedule": {
            "minute": 33,
            "snapshotsToKeep": 24
        },
        "monthlySchedule": {},
        "weeklySchedule": {}
    }
}'

Auflistung von Snapshots für ein bestimmtes Volume

Im folgenden Beispiel wird eine verwendet GET Rufen Sie an, um die Snapshots für ein bestimmtes Volume aufzulisten:

curl -s -H accept:application/json -H "Content-type: application/json" -H api-key:<api_key> -H secret-key:<secret_key> -X GET <api_url>/v2/Volumes/<volumeId>/Snapshots

Zurücksetzen eines Snapshots

Im folgenden Beispiel wird eine verwendet POST Aufruf, um ein Volume von einem von angegebenen Snapshot zurückzusetzen snapshotId Und volumeId:

curl -s -H accept:application/json -H "Content-type: application/json" -H api-key:<api_key> -H secret-key:<secret_key> -X POST <api_url>/v2/Volumes/<volumeId>/Revert -d '
{
	"snapshotId": "<snapshotId>"
}'
Wichtig Mit Vorsicht verwenden. Dieser API-Aufruf bewirkt, dass alle Daten, die nach dem Datum dieses Snapshots geschrieben wurden, verloren gehen.

Erstellen eines neuen Volumes anhand eines Snapshots

Im folgenden Beispiel wird eine verwendet POST Aufruf zur Erstellung eines neuen Volumes, basierend auf einem Snapshot eines vorhandenen Volumes, das von festgelegt wurde snapshotId:

curl -s -H accept:application/json -H "Content-type: application/json" -H api-key:<api_key> -H secret-key:<secret_key> -X POST <api_url>/v2/Volumes -d '
{
	"snapshotId": "<snapshotId>",
	"name": "Copy",
	"creationToken": "perfectly-copied-volume",
	"region": "us-west-1",
	"serviceLevel": "extreme",
	"protocolTypes": ["NFSv3"]
}'

Löschen eines Snapshots

Im folgenden Beispiel wird eine verwendet DELETE Aufruf zum Löschen eines von angegebenen Snapshots snapshotId:

curl -s -H accept:application/json -H "Content-type: application/json" -H api-key:<api_key> -H secret-key:<secret_key> -X DELETE <api_url>/v2/Volumes/<volumeId>/Snapshots/<snapshotId>
Wichtig Mit Vorsicht verwenden. Dieser API-Aufruf löscht den Snapshot und alle seine Daten.

Beitritt zu einem Verzeichnisdienst

Im folgenden Beispiel wird eine verwendet POST Aufruf zum Beitritt zu einem Verzeichnisdienst und stellt die DNS-IP-Adresse, die Domäne, den NetBIOS-Namen für den SMB-Server, den Benutzernamen und das Kennwort für einen Verzeichnisdienstadministrator und die Organisationseinheit (optional und standardmäßig CN=Computer) bereit.

curl -s -H accept:application/json -H "Content-type: application/json" -H api-key:<api_key> -H secret-key:<secret_key> -X POST <api_url>/v2/Storage/ActiveDirectory -d '
{
	"DNS": "<ip-address>",
	"domain": "<domain>",
	"netBIOS": "<netbios-name>",
	"organizationalUnit": "OU=Cloud Servers,DC=nas-cloud,DC=local",
	"password": "secret",
	"region": "us-west-1",
	"username": "Administrator"
}'

Integration des Verzeichnisdienstes anzeigen

Im folgenden Beispiel wird eine verwendet GET Rufen Sie an, um die Konfiguration für die Integration des Verzeichnisdienstes anzuzeigen.

curl -s -H accept:application/json -H "Content-type: application/json" -H api-key:<api_key> -H secret-key:<secret_key> -X GET <api_url>/v2/Storage/ActiveDirectory

Aufheben der Verbindung zu einem Verzeichnisdienst

Im folgenden Beispiel wird eine verwendet DELETE Rufen Sie an, um sich einer Integration des Verzeichnisdienstes anzuschließen. Dies erfordert die UUID für den aktuellen Join, der mit dem gefunden werden kann GET O. g. Anruf.

Hinweis Sie können nicht die Verbindung zu einem Verzeichnisdienst aufheben, der verwendet wird; Status „wird verwendet“.
curl -s -H accept:application/json -H "Content-type: application/json" -H api-key:<api_key> -H secret-key:<secret_key> -X DELETE <api_url>/v2/Storage/ActiveDirectory/<UUID>

Abrufen von Performance-Statistiken

Im folgenden Beispiel wird eine verwendet GET Aufruf, die Statistiken zu Lese- und Schreib-IOPS, Durchsatz und Latenz für ein von angegebenes Volume über einen bestimmten Zeitraum aufzulisten volumeId.

curl -s -H accept:application/json -H "Content-type: application/json" -H api-key:<api_key> -H secret-key:<secret_key> -X GET '<api_url>/v2/Volumes/<volumeId>/PerformanceMetrics?startDate=2021-02-05T09:00&endDate=2021-02-05T09:05&type=READ_IOPS,WRITE_IOPS,TOTAL_THROUGHPUT,AVERAGE_OTHER_LATENCY'