Arbeiten mit Volumes
Volumes können ganz einfach mit den Standardbefehlen erstellt, geklont und entfernt werden. Der bei Bedarf angegebene Trident-Treibername wird dabei verwendet docker volume
.
Erstellen eines Volumes
-
Erstellen Sie ein Volume mit einem Treiber unter Verwendung des Standardnamens:
docker volume create -d netapp --name firstVolume
-
Volume mit einer bestimmten Trident-Instanz erstellen:
docker volume create -d ntap_bronze --name bronzeVolume
Wenn Sie keine angeben"Optionen", werden die Standardeinstellungen für den Treiber verwendet. -
Überschreiben Sie die Standard-Volume-Größe. Beachten Sie das folgende Beispiel, um ein 20 gib-Volume mit einem Treiber zu erstellen:
docker volume create -d netapp --name my_vol --opt size=20G
Die Volume-Größen werden als Strings angegeben, die einen ganzzahligen Wert mit optionalen Einheiten enthalten (Beispiel: 10G, 20GB, 3tib). Wenn keine Einheiten angegeben werden, ist der Standardwert G. Größeneinheiten können entweder als Kräfte von 2 (B, KiB, MiB, gib, tib) oder mit einer Leistung von 10 (B, KB, MB, GB, TB) angegeben werden. Auf Kurzschluss und Einheiten werden 2 Kräfte (G = gib, T = tib, …) verwendet.
Entfernen Sie ein Volume
-
Entfernen Sie das Volume wie jedes andere Docker Volume:
docker volume rm firstVolume
Bei der Verwendung des solidfire-san
Treibers löscht und löscht das obige Beispiel das Volume.
Führen Sie die folgenden Schritte aus, um Trident für Docker zu aktualisieren.
Klonen Sie ein Volume
Bei Verwendung der ontap-nas
, , ontap-san
solidfire-san
und gcp-cvs storage drivers
, Trident können Volumes klonen. Wenn Sie die oder ontap-nas-economy
-Treiber verwenden ontap-nas-flexgroup
, wird das Klonen nicht unterstützt. Wenn Sie ein neues Volume von einem vorhandenen Volume erstellen, wird ein neuer Snapshot erstellt.
-
Überprüfen Sie das Volume, um die Snapshots aufzuzählen:
docker volume inspect <volume_name>
-
Erstellen Sie ein neues Volume von einem vorhandenen Volume aus. Dadurch wird ein neuer Snapshot erstellt:
docker volume create -d <driver_name> --name <new_name> -o from=<source_docker_volume>
-
Erstellen Sie ein neues Volume anhand eines vorhandenen Snapshots auf einem Volume. Dadurch wird kein neuer Snapshot erstellt:
docker volume create -d <driver_name> --name <new_name> -o from=<source_docker_volume> -o fromSnapshot=<source_snap_name>
Beispiel
docker volume inspect firstVolume [ { "Driver": "ontap-nas", "Labels": null, "Mountpoint": "/var/lib/docker-volumes/ontap-nas/netappdvp_firstVolume", "Name": "firstVolume", "Options": {}, "Scope": "global", "Status": { "Snapshots": [ { "Created": "2017-02-10T19:05:00Z", "Name": "hourly.2017-02-10_1505" } ] } } ] docker volume create -d ontap-nas --name clonedVolume -o from=firstVolume clonedVolume docker volume rm clonedVolume docker volume create -d ontap-nas --name volFromSnap -o from=firstVolume -o fromSnapshot=hourly.2017-02-10_1505 volFromSnap docker volume rm volFromSnap
Zugriff auf extern erstellte Volumes
Sie können über Trident * nur* auf extern erstellte Blockgeräte (oder deren Clones) zugreifen, wenn sie keine Partitionen haben und wenn ihr Dateisystem von Trident unterstützt wird (z.B.: Ein ext4
-formatiertes /dev/sdc1
wird nicht über Trident zugänglich sein).