Opzioni di configurazione dello storage
Consulta le opzioni di configurazione disponibili per le configurazioni di Astra Trident.
Opzioni di configurazione globale
Queste opzioni di configurazione si applicano a tutte le configurazioni Astra Trident, indipendentemente dalla piattaforma di storage utilizzata.
Opzione | Descrizione | Esempio |
---|---|---|
|
Numero di versione del file di configurazione |
1 |
|
Nome del driver di storage |
|
|
Prefisso opzionale per i nomi dei volumi. Impostazione predefinita: "Netappdvp_". |
staging_ |
|
Restrizione opzionale sulle dimensioni dei volumi. Predefinito: "" (non applicato) |
10 g. |
Non utilizzare storagePrefix (Incluso il valore predefinito) per i backend degli elementi. Per impostazione predefinita, il solidfire-san il driver ignora questa impostazione e non utilizza un prefisso. Si consiglia di utilizzare un tenantId specifico per la mappatura dei volumi Docker o i dati degli attributi che vengono popolati con la versione Docker, le informazioni sul driver e il nome raw di Docker nei casi in cui sia stato utilizzato il comando dei nomi.
|
Sono disponibili opzioni predefinite per evitare di doverle specificare su ogni volume creato. Il size
l'opzione è disponibile per tutti i tipi di controller. Consultare la sezione relativa alla configurazione di ONTAP per un esempio su come impostare le dimensioni predefinite del volume.
Opzione | Descrizione | Esempio |
---|---|---|
|
Dimensione predefinita opzionale per i nuovi volumi. Predefinito: "1G" |
10 G. |
Configurazione di ONTAP
Oltre ai valori di configurazione globali sopra indicati, quando si utilizza ONTAP, sono disponibili le seguenti opzioni di primo livello.
Opzione | Descrizione | Esempio |
---|---|---|
|
Indirizzo IP della LIF di gestione ONTAP. È possibile specificare un nome di dominio completo (FQDN). |
10.0.0.1 |
|
L'indirizzo IP del protocollo LIF; verrà derivato se non specificato. Per |
10.0.0.2 |
|
Macchina virtuale per lo storage da utilizzare (obbligatorio, se la LIF di gestione è una LIF del cluster) |
svm_nfs |
|
Nome utente per la connessione al dispositivo di storage |
vsadmin |
|
Password per la connessione al dispositivo di storage |
segreto |
|
Aggregato per il provisioning (facoltativo; se impostato, deve essere assegnato alla SVM). Per |
aggr1 |
|
Facoltativo, non eseguire il provisioning se l'utilizzo è superiore a questa percentuale |
75% |
|
Controllo dettagliato delle opzioni di montaggio NFS; il valore predefinito è "-o nfsvers=3". Disponibile solo per |
-o nfsvers=4 |
|
L'igroup utilizzato dal plugin; il default è "netappdvp". Disponibile solo per il fiume `ontap-san`d. |
miigroup |
|
Dimensione massima del volume richiedente e dimensione massima del volume padre qtree. Per |
300 g. |
|
Il numero massimo di qtree per FlexVol deve essere compreso nell'intervallo [50, 300], il valore predefinito è 200. Per |
300 |
Sono disponibili opzioni predefinite per evitare di doverle specificare su ogni volume creato:
Opzione | Descrizione | Esempio |
---|---|---|
|
Modalità di riserva dello spazio; "nessuno" (thin provisioning) o "volume" (thick) |
nessuno |
|
Policy di Snapshot da utilizzare, il valore predefinito è "nessuno" |
nessuno |
|
Snapshot Reserve percent (percentuale riserva snapshot), il valore predefinito è "" per accettare il valore predefinito di ONTAP |
10 |
|
Dividere un clone dal suo padre al momento della creazione, per impostazione predefinita su "false" |
falso |
|
"Enable NetApp Volume Encryption (attiva crittografia volumi NetApp), il valore predefinito è "false" |
vero |
|
Opzione NAS per volumi NFS con provisioning, valore predefinito "777" |
777 |
|
Opzione NAS per l'accesso a |
vero |
|
Opzione NAS per l'utilizzo della policy di esportazione NFS, per impostazione predefinita "default" |
predefinito |
|
Opzione NAS per l'accesso al volume NFS fornito, per impostazione predefinita "unix" |
misto |
|
OPZIONE SAN per selezionare il tipo di file system, il valore predefinito è "ext4" |
xfs |
|
Policy di tiering da utilizzare, il valore predefinito è "nessuno"; "solo snapshot" per la configurazione SVM-DR precedente a ONTAP 9.5 |
nessuno |
Opzioni di scalabilità
Il ontap-nas
e. ontap-san
I driver creano un ONTAP FlexVol per ogni volume Docker. ONTAP supporta fino a 1000 FlexVol per nodo cluster con un massimo di 12,000 FlexVol. Se i requisiti del volume Docker rientrano in tale limite, il ontap-nas
Il driver è la soluzione NAS preferita a causa delle funzionalità aggiuntive offerte da FlexVol, come le snapshot Docker-volume-granulare e la clonazione.
Se hai bisogno di più volumi Docker di quelli che possono essere contenuti nei limiti FlexVol, scegli ontap-nas-economy
o il ontap-san-economy
driver.
Il ontap-nas-economy
Driver crea volumi Docker come Qtree ONTAP all'interno di un pool di FlexVol gestiti automaticamente. I qtree offrono una scalabilità di gran lunga superiore, fino a 100,000 per nodo cluster e 2,400,000 per cluster, a scapito di alcune funzionalità. Il ontap-nas-economy
Il driver non supporta snapshot o cloning granulari dei volumi Docker.
Il ontap-nas-economy Il driver non è attualmente supportato in Docker Swame, perché Swarm non orchestrava la creazione di volumi su più nodi.
|
Il ontap-san-economy
Driver crea volumi Docker come LUN ONTAP all'interno di un pool condiviso di FlexVol gestiti automaticamente. In questo modo, ogni FlexVol non è limitato a un solo LUN e offre una migliore scalabilità per i carichi di lavoro SAN. A seconda dello storage array, ONTAP supporta fino a 16384 LUN per cluster. Poiché i volumi sono LUN sottostanti, questo driver supporta snapshot e cloning Docker-volume-granulare.
Scegliere ontap-nas-flexgroup
il driver per aumentare il parallelismo a un singolo volume che può crescere nell'intervallo dei petabyte con miliardi di file. Alcuni casi di utilizzo ideali per FlexGroups includono ai/ML/DL, big data e analytics, build software, streaming, repository di file e così via. Trident utilizza tutti gli aggregati assegnati a una SVM durante il provisioning di un volume FlexGroup. Il supporto di FlexGroup in Trident ha anche le seguenti considerazioni:
-
Richiede ONTAP versione 9.2 o successiva.
-
Al momento della stesura del presente documento, FlexGroups supporta solo NFS v3.
-
Si consiglia di attivare gli identificatori NFSv3 a 64 bit per SVM.
-
La dimensione minima consigliata per il FlexGroup è di 100 GB.
-
La clonazione non è supportata per i volumi FlexGroup.
Per informazioni su FlexGroups e workload appropriati per FlexGroups, vedere "Guida all'implementazione e alle Best practice per i volumi NetApp FlexGroup".
Per ottenere funzionalità avanzate e scalabilità enorme nello stesso ambiente, è possibile eseguire più istanze del Docker Volume Plugin, con una sola applicazione ontap-nas
e un altro utilizzo ontap-nas-economy
.
File di configurazione ONTAP di esempio
Esempio NFS per ontap-nas
driver
{ "version": 1, "storageDriverName": "ontap-nas", "managementLIF": "10.0.0.1", "dataLIF": "10.0.0.2", "svm": "svm_nfs", "username": "vsadmin", "password": "secret", "aggregate": "aggr1", "defaults": { "size": "10G", "spaceReserve": "none", "exportPolicy": "default" } }
Esempio NFS per ontap-nas-flexgroup
driver
{ "version": 1, "storageDriverName": "ontap-nas-flexgroup", "managementLIF": "10.0.0.1", "dataLIF": "10.0.0.2", "svm": "svm_nfs", "username": "vsadmin", "password": "secret", "defaults": { "size": "100G", "spaceReserve": "none", "exportPolicy": "default" } }
Esempio NFS per ontap-nas-economy
driver
{ "version": 1, "storageDriverName": "ontap-nas-economy", "managementLIF": "10.0.0.1", "dataLIF": "10.0.0.2", "svm": "svm_nfs", "username": "vsadmin", "password": "secret", "aggregate": "aggr1" }
Esempio iSCSI per ontap-san
driver
{ "version": 1, "storageDriverName": "ontap-san", "managementLIF": "10.0.0.1", "dataLIF": "10.0.0.3", "svm": "svm_iscsi", "username": "vsadmin", "password": "secret", "aggregate": "aggr1", "igroupName": "myigroup" }
Esempio NFS per ontap-san-economy
driver
{ "version": 1, "storageDriverName": "ontap-san-economy", "managementLIF": "10.0.0.1", "dataLIF": "10.0.0.3", "svm": "svm_iscsi_eco", "username": "vsadmin", "password": "secret", "aggregate": "aggr1", "igroupName": "myigroup" }
Configurazione del software Element
Oltre ai valori di configurazione globali, quando si utilizza il software Element (NetApp HCI/SolidFire), queste opzioni sono disponibili.
Opzione | Descrizione | Esempio |
---|---|---|
|
||
|
Porta e indirizzo IP iSCSI |
10.0.0.7:3260 |
|
Tenant SolidFireF da utilizzare (creato se non trovato) |
"docker" |
|
Specificare l'interfaccia quando si limita il traffico iSCSI all'interfaccia non predefinita |
"predefinito" |
|
Specifiche QoS |
Vedere l'esempio riportato di seguito |
|
Prefisso per installazioni Trident aggiornate. Se è stata utilizzata una versione di Trident precedente alla 1.3.2 ed è stato eseguito un aggiornamento con i volumi esistenti, è necessario impostare questo valore per accedere ai volumi precedenti che sono stati mappati tramite il metodo del nome del volume. |
"netappdvp-" |
Il solidfire-san
Il driver non supporta Docker Swarm.
Esempio di file di configurazione del software Element
{ "version": 1, "storageDriverName": "solidfire-san", "Endpoint": "https://admin:admin@192.168.160.3/json-rpc/8.0", "SVIP": "10.0.0.7:3260", "TenantName": "docker", "InitiatorIFace": "default", "Types": [ { "Type": "Bronze", "Qos": { "minIOPS": 1000, "maxIOPS": 2000, "burstIOPS": 4000 } }, { "Type": "Silver", "Qos": { "minIOPS": 4000, "maxIOPS": 6000, "burstIOPS": 8000 } }, { "Type": "Gold", "Qos": { "minIOPS": 6000, "maxIOPS": 8000, "burstIOPS": 10000 } } ] }
Cloud Volumes Service (CVS) su configurazione GCP
Trident ora include il supporto per volumi più piccoli con il tipo di servizio CVS predefinito attivato "GCP". Per i backend creati con storageClass=software
, I volumi avranno ora una dimensione di provisioning minima di 300 GiB. NetApp consiglia ai clienti di consumare volumi inferiori a 1 TiB per carichi di lavoro non in produzione. CVS attualmente fornisce questa funzione in disponibilità controllata e non fornisce supporto tecnico.
Iscriviti per accedere a volumi inferiori a 1 TiB "qui". |
Quando si implementano backend utilizzando il tipo di servizio CVS predefinito storageClass=software , È necessario ottenere l'accesso alla funzionalità volumi sub-1TiB sul GCP per i numeri di progetto e gli ID progetto in questione. Ciò è necessario per Trident per eseguire il provisioning di volumi inferiori a 1 TiB. In caso contrario, le creazioni dei volumi non avranno esito positivo per i PVC con meno di 600 GiB. Ottenere l'accesso a volumi inferiori a 1 TiB utilizzando "questo modulo".
|
Il provisioning dei volumi creati da Trident per il livello di servizio CVS predefinito viene eseguito come segue:
-
I PVC di dimensioni inferiori a 300 GiB creano un volume CVS da 300 GiB.
-
I PVC compresi tra 300 GiB e 600 GiB determineranno la creazione di un volume CVS della dimensione richiesta da parte di Trident.
-
I PVC compresi tra 600 GiB e 1 TIB determineranno la creazione di un volume CVS 1TiB da parte di Trident.
-
I PVC che sono superiori a 1 TIB determineranno la creazione di un volume CVS della dimensione richiesta da parte di Trident.
Oltre ai valori di configurazione globali, quando si utilizza CVS su GCP, queste opzioni sono disponibili.
Opzione | Descrizione | Esempio |
---|---|---|
|
Regione dell'account CVS (obbligatoria). È la regione GCP in cui il backend eseguirà il provisioning dei volumi. |
"us-west2" |
|
Numero di progetto GCP (obbligatorio). Si trova nella schermata iniziale del portale Web GCP. |
"123456789012" |
|
Numero di progetto host VPC condiviso GCP (richiesto se si utilizza un VPC condiviso) |
"098765432109" |
|
Chiave API per l'account di servizio GCP con ruolo di amministratore CVS (obbligatorio). È il contenuto in formato JSON del file di chiave privata di un account di servizio GCP (copia integrale nel file di configurazione del backend). L'account del servizio deve avere il ruolo netappcloud.admin. |
(contenuto del file delle chiavi private) |
|
Chiave segreta dell'account CVS (obbligatoria). Si trova nel portale web CVS in Impostazioni account > accesso API. |
"predefinito" |
|
URL proxy se il server proxy ha richiesto di connettersi all'account CVS. Il server proxy può essere un proxy HTTP o un proxy HTTPS. Nel caso di un proxy HTTPS, la convalida del certificato viene ignorata per consentire l'utilizzo di certificati autofirmati nel server proxy. I server proxy con autenticazione abilitata non sono supportati. |
"http://proxy-server-hostname/” |
|
Opzioni di montaggio NFS; il valore predefinito è "-o nfsvers=3" |
"nfsvers=3,proto=tcp,timeo=600" |
|
Livello di performance (standard, premium, Extreme), impostazione predefinita "standard" |
"premium" |
|
"Rete GCP utilizzata per i volumi CVS, impostazione predefinita "predefinita" |
"predefinito" |
Se si utilizza una rete VPC condivisa, è necessario specificare entrambi projectNumber e. hostProjectNumber . In tal caso, projectNumber è il progetto di servizio e. hostProjectNumber è il progetto host.
|
NetApp Cloud Volumes Service per GCP non supporta volumi CVS-Performance di dimensioni inferiori a 100 GiB o volumi CVS di dimensioni inferiori a 300 GiB. Per semplificare l'implementazione delle applicazioni, Trident crea automaticamente volumi di dimensioni minime se viene richiesto un volume troppo piccolo. |
Quando si utilizza CVS su GCP, sono disponibili queste impostazioni predefinite delle opzioni del volume.
Opzione | Descrizione | Esempio |
---|---|---|
|
Elenco di accesso NFS (indirizzi e/o subnet CIDR), valore predefinito "0.0.0.0/0" |
"10.0.1.0/24,10.0.2.100" |
|
Controlla la visibilità di |
"falso" |
|
Snapshot Reserve percent (percentuale riserva snapshot), il valore predefinito è "" per accettare il valore predefinito CVS pari a 0 |
"10" |
|
Dimensione del volume, valore predefinito "100GiB" |
"10T" |
Esempio di CVS sul file di configurazione GCP
{ "version": 1, "storageDriverName": "gcp-cvs", "projectNumber": "012345678901", "apiRegion": "us-west2", "apiKey": { "type": "service_account", "project_id": "my-gcp-project", "private_key_id": "1234567890123456789012345678901234567890", "private_key": " -----BEGIN PRIVATE KEY----- <key_value> -----END PRIVATE KEY-----\n", "client_email": "cloudvolumes-admin-sa@my-gcp-project.iam.gserviceaccount.com", "client_id": "123456789012345678901", "auth_uri": "https://accounts.google.com/o/oauth2/auth", "token_uri": "https://oauth2.googleapis.com/token", "auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs", "client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/cloudvolumes-admin-sa%40my-gcp-project.iam.gserviceaccount.com" }, "proxyURL": "http://proxy-server-hostname/" }
Configurazione di Azure NetApp Files
Per configurare e utilizzare un "Azure NetApp Files" back-end, è necessario quanto segue:
-
subscriptionID
Da un abbonamento Azure con Azure NetApp Files attivato -
tenantID
,clientID
, e.clientSecret
da un "Registrazione dell'app" In Azure Active Directory con autorizzazioni sufficienti per il servizio Azure NetApp Files -
Ubicazione di Azure che ne contiene almeno una "subnet delegata"
Se si utilizza Azure NetApp Files per la prima volta o in una nuova posizione, è necessaria una configurazione iniziale di "guida rapida" ti guideranno. |
Astra Trident 21.04.0 e versioni precedenti non supportano i pool di capacità QoS manuali. |
Opzione | Descrizione | Predefinito |
---|---|---|
|
Sempre 1 |
|
|
"azure-netapp-files" |
|
|
Nome personalizzato per il backend dello storage |
Nome del driver + "_" + caratteri casuali |
|
L'ID dell'abbonamento dell'abbonamento Azure |
|
|
L'ID tenant di una registrazione app |
|
|
L'ID client di una registrazione dell'applicazione |
|
|
Il segreto del client da una registrazione dell'applicazione |
|
|
Uno tra "Standard", "Premium" o "Ultra" |
"" (casuale) |
|
Nome della posizione Azure in cui verranno creati nuovi volumi |
"" (casuale) |
|
Nome di una rete virtuale con una subnet delegata |
"" (casuale) |
|
Nome di una subnet delegata a. |
"" (casuale) |
|
Controllo dettagliato delle opzioni di montaggio NFS |
"-o nfsvers=3" |
|
Fallire il provisioning se la dimensione del volume richiesta è superiore a questo valore |
"" (non applicato per impostazione predefinita) |
Il servizio Azure NetApp Files non supporta volumi di dimensioni inferiori a 100 GB. Per semplificare l'implementazione delle applicazioni, Trident crea automaticamente volumi da 100 GB se viene richiesto un volume più piccolo. |
Per impostazione predefinita, è possibile controllare il provisioning di ciascun volume utilizzando queste opzioni in una sezione speciale della configurazione.
Opzione | Descrizione | Predefinito |
---|---|---|
|
Regola o regole di esportazione per i nuovi volumi. Deve essere un elenco separato da virgole di qualsiasi combinazione di indirizzi IPv4 o subnet IPv4 nella notazione CIDR. |
"0.0.0.0/0" |
|
Controlla la visibilità di |
"falso" |
|
La dimensione predefinita dei nuovi volumi |
"100 G" |
Configurazioni Azure NetApp Files di esempio
Esempio 1: Configurazione backend minima per Azure-netapp-Files
Questa è la configurazione backend minima assoluta. Con questa configurazione, Trident scoprirà tutti gli account NetApp, i pool di capacità e le subnet delegate ad ANF in ogni sede in tutto il mondo e inserirà nuovi volumi in uno di essi in maniera casuale.
Questa configurazione è utile quando si inizia a utilizzare ANF e si provano le cose, tuttavia, in pratica, è necessario fornire un ambito aggiuntivo per i volumi che si effettua il provisioning per assicurarsi che abbiano le caratteristiche desiderate e finiscano in una rete vicina al calcolo che lo utilizza. Per ulteriori dettagli, vedere gli esempi successivi.
{ "version": 1, "storageDriverName": "azure-netapp-files", "subscriptionID": "9f87c765-4774-fake-ae98-a721add45451", "tenantID": "68e4f836-edc1-fake-bff9-b2d865ee56cf", "clientID": "dd043f63-bf8e-fake-8076-8de91e5713aa", "clientSecret": "SECRET" }
Esempio 2: Singola posizione e livello di servizio specifico per Azure-netapp-Files
Questa configurazione di back-end colloca i volumi nella posizione "eastus" di Azure in un pool di capacità "Premium". Trident rileva automaticamente tutte le sottoreti delegate ad ANF in quella posizione e inserisce un nuovo volume su una di esse in modo casuale.
{ "version": 1, "storageDriverName": "azure-netapp-files", "subscriptionID": "9f87c765-4774-fake-ae98-a721add45451", "tenantID": "68e4f836-edc1-fake-bff9-b2d865ee56cf", "clientID": "dd043f63-bf8e-fake-8076-8de91e5713aa", "clientSecret": "SECRET", "location": "eastus", "serviceLevel": "Premium" }
Esempio 3: Configurazione avanzata per Azure-netapp-Files
Questa configurazione di back-end riduce ulteriormente l'ambito del posizionamento del volume in una singola subnet e modifica alcune impostazioni predefinite di provisioning del volume.
{ "version": 1, "storageDriverName": "azure-netapp-files", "subscriptionID": "9f87c765-4774-fake-ae98-a721add45451", "tenantID": "68e4f836-edc1-fake-bff9-b2d865ee56cf", "clientID": "dd043f63-bf8e-fake-8076-8de91e5713aa", "clientSecret": "SECRET", "location": "eastus", "serviceLevel": "Premium", "virtualNetwork": "my-virtual-network", "subnet": "my-subnet", "nfsMountOptions": "nfsvers=3,proto=tcp,timeo=600", "limitVolumeSize": "500Gi", "defaults": { "exportRule": "10.0.0.0/24,10.0.1.0/24,10.0.2.100", "size": "200Gi" } }
Esempio 4: Pool di storage virtuali con file Azure-netapp
Questa configurazione di back-end definisce più configurazioni "pool di storage" in un singolo file. Ciò è utile quando si dispone di più pool di capacità che supportano diversi livelli di servizio e si desidera creare classi di storage in Kubernetes che ne rappresentano.
Questo sta semplicemente graffiando la superficie della potenza dei pool di storage virtuali e delle relative etichette.
{ "version": 1, "storageDriverName": "azure-netapp-files", "subscriptionID": "9f87c765-4774-fake-ae98-a721add45451", "tenantID": "68e4f836-edc1-fake-bff9-b2d865ee56cf", "clientID": "dd043f63-bf8e-fake-8076-8de91e5713aa", "clientSecret": "SECRET", "nfsMountOptions": "nfsvers=3,proto=tcp,timeo=600", "labels": { "cloud": "azure" }, "location": "eastus", "storage": [ { "labels": { "performance": "gold" }, "serviceLevel": "Ultra" }, { "labels": { "performance": "silver" }, "serviceLevel": "Premium" }, { "labels": { "performance": "bronze" }, "serviceLevel": "Standard", } ] }