Distribuisci Trident
Trident per Docker offre un'integrazione diretta con l'ecosistema Docker per le piattaforme di storage NetApp. Supporta il provisioning e la gestione delle risorse di storage dalla piattaforma di storage agli host Docker, con un framework per l'aggiunta di ulteriori piattaforme in futuro.
Più istanze di Trident possono essere eseguite contemporaneamente sullo stesso host. Ciò consente connessioni simultanee a più sistemi di storage e tipi di storage, con la possibilità di personalizzare lo storage utilizzato per i volumi Docker.
Consultare il "prerequisiti per la distribuzione". Dopo aver verificato che i prerequisiti siano soddisfatti, si è pronti per distribuire Trident.
Metodo del plugin gestito da Docker (versione 1.13/17.03 e successive)
|
|
Prima di iniziare
Se hai utilizzato Trident prima di Docker 1.13/17.03 nel metodo daemon tradizionale, assicurati di arrestare il processo Trident e riavviare il daemon Docker prima di utilizzare il metodo del plugin gestito.
|
-
Arresta tutte le istanze in esecuzione:
pkill /usr/local/bin/netappdvp pkill /usr/local/bin/trident -
Riavvia Docker.
systemctl restart docker -
Assicurati di avere installato Docker Engine 17.03 (new 1.13) o versione successiva.
docker --versionSe la tua versione non è aggiornata "installa o aggiorna la tua installazione".
-
Crea un file di configurazione e specifica le opzioni come segue:
-
config: Il nome file predefinito èconfig.json, tuttavia è possibile utilizzare qualsiasi nome si scelga specificando l'opzioneconfigcon il nome del file. Il file di configurazione deve trovarsi nella directory/etc/netappdvpsul sistema host. -
log-level: Specificare il livello di registrazione (debug,info,warn,error,fatal). Il valore predefinito èinfo. -
debug: Specifica se la registrazione del debug è abilitata. Il valore predefinito è false. Se true, sovrascrive log-level.-
Crea una posizione per il file di configurazione:
sudo mkdir -p /etc/netappdvp -
Crea il file di configurazione:
cat << EOF > /etc/netappdvp/config.json{ "version": 1, "storageDriverName": "ontap-nas", "managementLIF": "10.0.0.1", "dataLIF": "10.0.0.2", "svm": "svm_nfs", "username": "vsadmin", "password": "password", "aggregate": "aggr1" } EOF
-
-
-
Avvia Trident utilizzando il sistema di plugin gestiti. Sostituisci
<version>con la versione del plugin (xxx.xx.x) che stai utilizzando.docker plugin install --grant-all-permissions --alias netapp netapp/trident-plugin:<version> config=myConfigFile.json -
Inizia a utilizzare Trident per consumare lo storage dal sistema configurato.
-
Crea un volume denominato "firstVolume":
docker volume create -d netapp --name firstVolume -
Crea un volume predefinito quando il container si avvia:
docker run --rm -it --volume-driver netapp --volume secondVolume:/my_vol alpine ash -
Rimuovi il volume "firstVolume":
docker volume rm firstVolume
-
Metodo tradizionale (versione 1.12 o precedente)
-
Assicurati di avere Docker versione 1.10 o successiva.
docker --versionSe la tua versione è obsoleta, aggiorna l'installazione.
curl -fsSL https://get.docker.com/ | sh -
Assicurati che NFS e/o iSCSI siano configurati per il tuo sistema.
-
Installa e configura il NetApp Docker Volume Plugin:
-
Scarica e decomprimi l'applicazione:
wget https://github.com/NetApp/trident/releases/download/10.0/trident-installer-25.10.0.tar.gz tar zxf trident-installer-25.10.0.tar.gz -
Spostati in una posizione nel percorso del bin:
sudo mv trident-installer/extras/bin/trident /usr/local/bin/ sudo chown root:root /usr/local/bin/trident sudo chmod 755 /usr/local/bin/trident -
Crea una posizione per il file di configurazione:
sudo mkdir -p /etc/netappdvp -
Crea il file di configurazione:
cat << EOF > /etc/netappdvp/ontap-nas.json{ "version": 1, "storageDriverName": "ontap-nas", "managementLIF": "10.0.0.1", "dataLIF": "10.0.0.2", "svm": "svm_nfs", "username": "vsadmin", "password": "password", "aggregate": "aggr1" } EOF
-
-
Dopo aver posizionato il binario e creato il file di configurazione, avvia il daemon Trident utilizzando il file di configurazione desiderato.
sudo trident --config=/etc/netappdvp/ontap-nas.jsonSe non specificato, il nome predefinito per il driver del volume è "netapp". Dopo aver avviato il demone, puoi creare e gestire i volumi utilizzando l'interfaccia Docker CLI.
-
Crea un volume:
docker volume create -d netapp --name trident_1 -
Provisionare un volume Docker quando si avvia un container:
docker run --rm -it --volume-driver netapp --volume trident_2:/my_vol alpine ash -
Rimuovi un volume Docker:
docker volume rm trident_1docker volume rm trident_2
Avvia Trident all'avvio del sistema
Un file di unità di esempio per i sistemi basati su systemd si trova a contrib/trident.service.example nel Git repo. Per usare il file con RHEL, procedere come segue:
-
Copia il file nella posizione corretta.
Dovresti usare nomi unici per i file delle unità se hai più di un'istanza in esecuzione.
cp contrib/trident.service.example /usr/lib/systemd/system/trident.service -
Modifica il file, cambia la descrizione (riga 2) in modo che corrisponda al nome del driver e il percorso del file di configurazione (riga 9) in modo che rifletta il tuo ambiente.
-
Ricarica systemd per applicare le modifiche:
systemctl daemon-reload -
Abilita il servizio.
Questo nome varia a seconda del nome dato al file nella
/usr/lib/systemd/systemdirectory.systemctl enable trident -
Avvia il servizio.
systemctl start trident -
Visualizza lo stato.
systemctl status trident
|
|
Ogni volta che si modifica il file dell'unità, eseguire il comando systemctl daemon-reload affinché sia a conoscenza delle modifiche.
|