Lavorare con i volumi
Puoi creare, clonare e rimuovere facilmente volumi utilizzando comandi standard docker volume con il nome del driver Astra Trident specificato quando necessario.
Creare un volume
-
Creare un volume con un driver utilizzando il nome predefinito:
docker volume create -d netapp --name firstVolume
-
Creare un volume con un'istanza specifica di Astra Trident:
docker volume create -d ntap_bronze --name bronzeVolume
Se non si specifica alcuna "opzioni", vengono utilizzate le impostazioni predefinite per il driver. -
Eseguire l'override delle dimensioni predefinite del volume. Per creare un volume 20GiB con un driver, vedere l'esempio seguente:
docker volume create -d netapp --name my_vol --opt size=20G
Le dimensioni dei volumi sono espresse come stringhe contenenti un valore intero con unità opzionali (ad esempio 10G, 20GB, 3TiB). Se non vengono specificate unità, il valore predefinito è G. le unità di misura possono essere espresse come potenze di 2 (B, KiB, MiB, GiB, TiB) o potenze di 10 (B, KB, MB, GB, TB). Le unità shortand utilizzano potenze di 2 (G = GiB, T = TIB, …).
Rimuovere un volume
-
Rimuovere il volume come qualsiasi altro volume Docker:
docker volume rm firstVolume
Quando si utilizza il solidfire-sandriver, l'esempio precedente elimina e rimuove il volume.
Per aggiornare Astra Trident per Docker, attenersi alla procedura riportata di seguito.
Clonare un volume
Quando si utilizza ontap-nas , , ontap-san, solidfire-san e gcp-cvs storage drivers, Astra Trident può clonare i volumi. Quando si utilizzano i ontap-nas-flexgroup driver o ontap-nas-economy, la clonazione non è supportata. La creazione di un nuovo volume da un volume esistente determinerà la creazione di un nuovo snapshot.
-
Esaminare il volume per enumerare gli snapshot:
docker volume inspect <volume_name>
-
Creare un nuovo volume da un volume esistente. In questo modo verrà creata una nuova istantanea:
docker volume create -d <driver_name> --name <new_name> -o from=<source_docker_volume>
-
Creare un nuovo volume da uno snapshot esistente su un volume. In questo modo non viene creata una nuova istantanea:
docker volume create -d <driver_name> --name <new_name> -o from=<source_docker_volume> -o fromSnapshot=<source_snap_name>
Esempio
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
Accesso ai volumi creati esternamente
È possibile accedere a dispositivi a blocchi creati esternamente (o ai loro cloni) utilizzando contenitori Trident solo se non hanno partizioni e se il loro filesystem è supportato da Astra Trident (ad esempio: Un file ext4 formattato /dev/sdc1 non sarà accessibile tramite Astra Trident).