Options de configuration du stockage
Découvrez les options de configuration disponibles pour vos configurations Astra Trident.
Options de configuration globale
Ces options de configuration s'appliquent à toutes les configurations Astra Trident, quelle que soit la plateforme de stockage utilisée.
Option | Description | Exemple |
---|---|---|
|
Numéro de version du fichier de configuration |
1 |
|
Nom du pilote de stockage |
|
|
Préfixe facultatif pour les noms de volumes. Par défaut : « netappdvp_ ». |
staging_ |
|
Restriction facultative sur les tailles de volume. Par défaut : « » (non appliqué) |
10g |
|
Ne pas utiliser storagePrefix (Y compris la valeur par défaut) pour les systèmes back-end Element. Par défaut, le solidfire-san le pilote ignore ce paramètre et n'utilise pas de préfixe. Nous vous recommandons d'utiliser un ID de tentID spécifique pour le mappage de volume Docker ou les données d'attributs renseignées par la version de Docker, les informations relatives au pilote et le nom brut de Docker dans les cas où il est possible d'utiliser une mundening de nom.
|
Les options par défaut sont disponibles pour éviter d'avoir à les spécifier sur chaque volume que vous créez. Le size
option disponible pour tous les types de contrôleurs. Pour un exemple de définition de la taille de volume par défaut, reportez-vous à la section ONTAP configuration.
Option | Description | Exemple |
---|---|---|
|
Taille par défaut facultative pour les nouveaux volumes. Par défaut : “1G” |
10G |
Configuration ONTAP
Outre les valeurs de configuration globale ci-dessus, lorsque vous utilisez ONTAP, les options de premier niveau suivantes sont disponibles.
Option | Description | Exemple |
---|---|---|
|
Adresse IP de la LIF de management ONTAP. Vous pouvez spécifier un nom de domaine complet (FQDN). |
10.0.0.1 |
|
Adresse IP de la LIF de protocole ; sera dérivée s'il n'est pas spécifié. Pour le |
10.0.0.2 |
|
Storage Virtual machine à utiliser (requis, si la LIF de gestion est une LIF de cluster) |
svm_nfs |
|
Nom d'utilisateur pour la connexion au périphérique de stockage |
vsadmin |
|
Mot de passe pour se connecter au périphérique de stockage |
secret |
|
Agrégat pour le provisionnement (facultatif ; si défini, doit être attribué au SVM) Pour le |
aggr1 |
|
Facultatif, le provisionnement échoue si l'utilisation est supérieure à ce pourcentage |
75 % |
|
Contrôle granulaire des options de montage NFS ; par défaut : «-o nfssvers=3 ». Disponible uniquement pour le |
-o nfsvers=4 |
|
Le groupe initiateur utilisé par le plug-in ; par défaut, il est « netappdvp ». Disponible uniquement pour le `ontap-san `driver. |
myigroup |
|
Taille maximale du volume requesable et taille du volume parent qtree. Pour le |
300 g |
|
Le nombre maximal de qtrees par FlexVol doit être compris dans la plage [50, 300], la valeur par défaut est 200. Pour le |
300 |
Les options par défaut sont disponibles pour éviter d'avoir à les spécifier sur chaque volume que vous créez :
Option | Description | Exemple |
---|---|---|
|
Mode de réservation d'espace ; « none » (provisionnement fin) ou « volume » (Thick) |
Aucune |
|
La règle de snapshot à utiliser est « none » par défaut |
Aucune |
|
Pourcentage de réserve Snapshot ; la valeur par défaut est « » pour accepter la valeur par défaut d'ONTAP |
10 |
|
Séparer un clone de son parent lors de sa création, par défaut « false » |
faux |
|
Active NetApp Volume Encryption (NVE) sur le nouveau volume ; valeur par défaut sur Si NAE est activé sur le back-end, tous les volumes provisionnés dans Astra Trident seront activés par NAE. Pour plus d'informations, se reporter à : "Fonctionnement d'Astra Trident avec NVE et NAE". |
vrai |
|
Option NAS pour les volumes NFS provisionnés, valeur par défaut 777 |
776 |
|
Option NAS pour accéder à l' |
vrai |
|
Option NAS pour l'export policy NFS à utiliser, valeur par défaut |
valeur par défaut |
|
Option NAS pour l'accès au volume NFS provisionné, valeur par défaut « unix » |
mixte |
|
Option SAN pour sélectionner le type de système de fichiers, par défaut ext4. |
xfs |
|
La règle de Tiering à utiliser est « none » et « Snapshot uniquement » pour la configuration SVM-DR antérieure à ONTAP 9.5 |
Aucune |
Options d'évolutivité
Le ontap-nas
et ontap-san
Les pilotes créent un ONTAP FlexVol pour chaque volume Docker. ONTAP prend en charge jusqu'à 1000 volumes FlexVol par nœud de cluster avec un cluster maximum de 12,000 volumes FlexVol. Si votre volume Docker répond à cette restriction, le ontap-nas
Le pilote est la solution NAS préférée du fait des fonctionnalités supplémentaires offertes par les volumes FlexVol, telles que les snapshots et le clonage granulaires avec volume Docker.
Si vous avez besoin de plus de volumes Docker que ne peut pas être pris en charge par les limites FlexVol, choisissez la ontap-nas-economy
ou le ontap-san-economy
conducteur.
Le ontap-nas-economy
Le pilote crée des volumes Docker en tant que qtrees ONTAP dans un pool de volumes FlexVol gérés automatiquement. Les qtrees offrent une évolutivité largement supérieure, jusqu'à 100,000 par nœud de cluster et 2,400,000 par cluster, au détriment de certaines fonctionnalités. Le ontap-nas-economy
Le pilote ne prend pas en charge le clonage ou les snapshots granulaires volume Docker.
|
Le ontap-nas-economy Le pilote n'est pas pris en charge par Docker Swarm, car Swarm n'effectue pas la création de volumes entre plusieurs nœuds.
|
Le ontap-san-economy
Le pilote crée des volumes Docker en tant que LUN ONTAP dans un pool partagé de volumes FlexVol gérés automatiquement. De cette façon, chaque FlexVol n'est pas limité à un seul LUN et offre une meilleure évolutivité pour les charges de travail SAN. Selon les baies de stockage, ONTAP prend en charge jusqu'à 16384 LUN par cluster. Comme les volumes sont sous-LUN, ce pilote prend en charge les snapshots et le clonage granulaires par volume Docker.
Choisissez le ontap-nas-flexgroup
pilote pour augmenter le parallélisme vers un seul volume qui peut atteindre plusieurs pétaoctets avec des milliards de fichiers. Les utilisations idéales de FlexGroups sont l'IA, LE ML, le Big Data et l'analytique, les logiciels, le streaming, les référentiels de fichiers, etc. Trident utilise tous les agrégats attribués à un SVM lors du provisionnement d'un volume FlexGroup. La prise en charge d'FlexGroup dans Trident comporte également plusieurs considérations :
-
Requiert ONTAP version 9.2 ou supérieure
-
À ce jour, FlexGroups prend uniquement en charge NFS v3.
-
Recommandé pour activer les identifiants NFSv3 64 bits pour la SVM.
-
La taille minimale recommandée de FlexGroup est de 100 Go.
-
Le clonage n'est pas pris en charge pour FlexGroup volumes.
Pour plus d'informations sur FlexGroups et les workloads appropriés à FlexGroups, consultez le "NetApp FlexGroup Volume Guide des meilleures pratiques et de mise en œuvre".
Pour bénéficier de fonctionnalités avancées et d'une évolutivité massive dans le même environnement, vous pouvez exécuter plusieurs instances du plug-in de volume Docker, en utilisant une seule instance ontap-nas
et une autre utilisation ontap-nas-economy
.
Exemples de fichiers de configuration ONTAP
Exemple NFS pour ontap-nas
pilote
{ "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" } }
Exemple NFS pour ontap-nas-flexgroup
pilote
{ "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" } }
Exemple NFS pour ontap-nas-economy
pilote
{ "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" }
Exemple iSCSI pour ontap-san
pilote
{ "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" }
Exemple NFS pour ontap-san-economy
pilote
{ "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" }
Configuration logicielle Element
Outre les valeurs de configuration globale, lorsque le logiciel Element (NetApp HCI/SolidFire) est utilisé, ces options sont disponibles.
Option | Description | Exemple |
---|---|---|
|
https://<login>:<password>@<mvip>/json-rpc/<element-version> |
https://admin:admin@192.168.160.3/json-rpc/8.0 |
|
Port et adresse IP iSCSI |
10.0.0.7:3260 |
|
Locataire SolidFireF à utiliser (créé s'il n'est pas trouvé) |
« docker » |
|
Spécifiez l'interface lors de la restriction du trafic iSCSI à une interface non-par défaut |
« par défaut » |
|
Spécifications de QoS |
Voir l'exemple ci-dessous |
|
Préfixe des installations Trident mises à niveau. Si vous avez utilisé une version de Trident antérieure à 1.3.2 et que vous effectuez une mise à niveau avec des volumes existants, vous devez définir cette valeur pour accéder à vos anciens volumes mappés via la méthode nom-volume. |
« netappdvp- » |
Le solidfire-san
Le pilote ne prend pas en charge Docker Swarm.
Exemple de fichier de configuration du logiciel 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) sur la configuration GCP
Astra Trident prend en charge les volumes avec le type de service CVS par défaut sur "GCP". Astra Trident ne prend pas en charge les volumes CVS de moins de 100 Gio, peu importe le minimum autorisé par le type de service CVS. Par conséquent, Trident crée automatiquement un volume de 100 Gio si le volume demandé est inférieur à la taille minimale.
En plus des valeurs de configuration globale, ces options sont disponibles lors de l'utilisation de CVS sur GCP.
Option | Description | Exemple |
---|---|---|
|
Région de compte CVS (obligatoire). Est la région GCP dans laquelle ce système back-end provisionne les volumes. |
“us-west2” |
|
Numéro de projet GCP (obligatoire). Se trouve dans l'écran d'accueil du portail Web GCP. |
“123456789012” |
|
Numéro de projet hôte VPC partagé par GCP (requis en cas d'utilisation d'un VPC partagé) |
“098765432109” |
|
Clé API pour le compte de service GCP avec rôle d'administrateur CVS (requis). Est le contenu au format JSON du fichier de clé privée d'un compte de service GCP (copié Verbatim dans le fichier de configuration backend). Le compte de service doit avoir le rôle netappcloudvolumes.admin. |
(contenu du fichier de clé privée) |
|
Clé secrète de compte CVS (obligatoire). Se trouve dans le portail Web CVS dans Paramètres de compte > accès API. |
« par défaut » |
|
URL proxy si le serveur proxy doit se connecter au compte CVS. Le serveur proxy peut être un proxy HTTP ou HTTPS. Dans le cas d'un proxy HTTPS, la validation du certificat est ignorée pour permettre l'utilisation de certificats auto-signés dans le serveur proxy. Les serveurs proxy avec authentification activée ne sont pas pris en charge. |
“http://proxy-server-hostname/” |
|
Options de montage NFS ; valeur par défaut « -o nfssvers=3 » |
“nfsvers=3,proto=tcp,tileo=600” |
|
Niveau de performance (standard, Premium, Extreme), valeur par défaut « standard » |
« haut de gamme » |
|
Réseau GCP utilisé pour les volumes CVS, valeur par défaut « par défaut » |
« par défaut » |
|
Si vous utilisez un réseau VPC partagé, vous devez les spécifier deux projectNumber et hostProjectNumber . Dans ce cas, projectNumber est le projet de service et hostProjectNumber est le projet hôte.
|
Lorsque vous utilisez CVS sur GCP, ces paramètres d'option de volume par défaut sont disponibles.
Option | Description | Exemple |
---|---|---|
|
Liste d'accès NFS (adresses et/ou sous-réseaux CIDR), valeur par défaut “0.0.0.0/0” |
“10.0.1.0/24,10.0.2.100” |
|
Contrôle la visibilité du |
« faux » |
|
Pourcentage de réserve de snapshot, la valeur par défaut est « » pour accepter la valeur par défaut du CVS 0 |
“10” |
|
Taille du volume, valeur par défaut « 100 Gio » |
“10T” |
Exemple de CVS sur le fichier de configuration 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-----\nznHczZsrrtHisIsAbOguSaPIKeyAZNchRAGzlzZE4jK3bl/qp8B4Kws8zX5ojY9m\nznHczZsrrtHisIsAbOguSaPIKeyAZNchRAGzlzZE4jK3bl/qp8B4Kws8zX5ojY9m\nznHczZsrrtHisIsAbOguSaPIKeyAZNchRAGzlzZE4jK3bl/qp8B4Kws8zX5ojY9m\nznHczZsrrtHisIsAbOguSaPIKeyAZNchRAGzlzZE4jK3bl/qp8B4Kws8zX5ojY9m\nznHczZsrrtHisIsAbOguSaPIKeyAZNchRAGzlzZE4jK3bl/qp8B4Kws8zX5ojY9m\nznHczZsrrtHisIsAbOguSaPIKeyAZNchRAGzlzZE4jK3bl/qp8B4Kws8zX5ojY9m\nznHczZsrrtHisIsAbOguSaPIKeyAZNchRAGzlzZE4jK3bl/qp8B4Kws8zX5ojY9m\nznHczZsrrtHisIsAbOguSaPIKeyAZNchRAGzlzZE4jK3bl/qp8B4Kws8zX5ojY9m\nznHczZsrrtHisIsAbOguSaPIKeyAZNchRAGzlzZE4jK3bl/qp8B4Kws8zX5ojY9m\nznHczZsrrtHisIsAbOguSaPIKeyAZNchRAGzlzZE4jK3bl/qp8B4Kws8zX5ojY9m\nznHczZsrrtHisIsAbOguSaPIKeyAZNchRAGzlzZE4jK3bl/qp8B4Kws8zX5ojY9m\nznHczZsrrtHisIsAbOguSaPIKeyAZNchRAGzlzZE4jK3bl/qp8B4Kws8zX5ojY9m\nznHczZsrrtHisIsAbOguSaPIKeyAZNchRAGzlzZE4jK3bl/qp8B4Kws8zX5ojY9m\nznHczZsrrtHisIsAbOguSaPIKeyAZNchRAGzlzZE4jK3bl/qp8B4Kws8zX5ojY9m\nznHczZsrrtHisIsAbOguSaPIKeyAZNchRAGzlzZE4jK3bl/qp8B4Kws8zX5ojY9m\nznHczZsrrtHisIsAbOguSaPIKeyAZNchRAGzlzZE4jK3bl/qp8B4Kws8zX5ojY9m\nznHczZsrrtHisIsAbOguSaPIKeyAZNchRAGzlzZE4jK3bl/qp8B4Kws8zX5ojY9m\nznHczZsrrtHisIsAbOguSaPIKeyAZNchRAGzlzZE4jK3bl/qp8B4Kws8zX5ojY9m\nznHczZsrrtHisIsAbOguSaPIKeyAZNchRAGzlzZE4jK3bl/qp8B4Kws8zX5ojY9m\nznHczZsrrtHisIsAbOguSaPIKeyAZNchRAGzlzZE4jK3bl/qp8B4Kws8zX5ojY9m\nznHczZsrrtHisIsAbOguSaPIKeyAZNchRAGzlzZE4jK3bl/qp8B4Kws8zX5ojY9m\nznHczZsrrtHisIsAbOguSaPIKeyAZNchRAGzlzZE4jK3bl/qp8B4Kws8zX5ojY9m\nznHczZsrrtHisIsAbOguSaPIKeyAZNchRAGzlzZE4jK3bl/qp8B4Kws8zX5ojY9m\nznHczZsrrtHisIsAbOguSaPIKeyAZNchRAGzlzZE4jK3bl/qp8B4Kws8zX5ojY9m\nznHczZsrrtHisIsAbOguSaPIKeyAZNchRAGzlzZE4jK3bl/qp8B4Kws8zX5ojY9m\nXsYg6gyxy4zq7OlwWgLwGa==\n-----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/" }
Configuration Azure NetApp Files
Pour configurer et utiliser un "Azure NetApp Files" en back-end, vous aurez besoin des éléments suivants :
-
subscriptionID
Depuis un abonnement Azure avec Azure NetApp Files activé -
tenantID
,clientID
, etclientSecret
à partir d'un "Enregistrement d'applications" Dans Azure Active Directory avec les autorisations suffisantes pour le service Azure NetApp Files -
Emplacement Azure contenant au moins un emplacement "sous-réseau délégué"
|
Si vous utilisez Azure NetApp Files pour la première fois ou à un nouvel emplacement, une configuration initiale est requise "guide de démarrage rapide" vous allez vous guider. |
|
Avec Astra Trident 21.04.0 et les versions antérieures, il ne prend pas en charge les pools de capacité manuels de QoS. |
Option | Description | Valeur par défaut |
---|---|---|
|
Toujours 1 |
|
|
« azure-netapp-files » |
|
|
Nom personnalisé pour le système back-end de stockage |
Nom du pilote + "_" + caractères aléatoires |
|
L'ID d'abonnement de votre abonnement Azure |
|
|
ID locataire d'un enregistrement d'application |
|
|
L'ID client d'un enregistrement d'application |
|
|
Secret client d'un enregistrement d'application |
|
|
L'un des modèles "Standard", "Premium" ou "Ultra" |
« » (aléatoire) |
|
Nom de l'emplacement Azure les nouveaux volumes seront créés dans |
« » (aléatoire) |
|
Nom d'un réseau virtuel avec un sous-réseau délégué |
« » (aléatoire) |
|
Nom d'un sous-réseau délégué à |
« » (aléatoire) |
|
Contrôle précis des options de montage NFS |
“-o nfsvers=3” |
|
Echec du provisionnement si la taille du volume demandé est supérieure à cette valeur |
« » (non appliqué par défaut) |
|
Le service Azure NetApp Files ne prend pas en charge les volumes d'une taille inférieure à 100 Go. Pour faciliter le déploiement des applications, Trident crée automatiquement des volumes de 100 Go si un volume plus petit est requis. |
Vous pouvez contrôler la façon dont chaque volume est provisionné par défaut à l'aide de ces options dans une section spéciale de la configuration.
Option | Description | Valeur par défaut |
---|---|---|
|
Règle(s) d'exportation pour les nouveaux volumes. Doit être une liste séparée par des virgules d'une combinaison d'adresses IPv4 ou de sous-réseaux IPv4 en notation CIDR. |
“0.0.0.0/0” |
|
Contrôle la visibilité du |
« faux » |
|
Taille par défaut des nouveaux volumes |
“100G” |
Exemples de configurations Azure NetApp Files
Exemple 1 : configuration back-end minimale pour Azure-netapp-Files
Il s'agit de la configuration back-end minimale absolue. Avec cette configuration, Trident découvrira tous les comptes NetApp, les pools de capacité et les sous-réseaux délégués à ANF dans le monde entier, et placez de nouveaux volumes de façon aléatoire sur l'un d'entre eux.
Cette configuration est utile lorsque vous commencez simplement avec ANF et que vous essayez de faire des choses, mais dans la pratique, vous voudrez fournir une étendue supplémentaire pour les volumes que vous approvisionnez pour vous assurer qu'ils ont les caractéristiques que vous voulez et finir sur un réseau proche du calcul qui l'utilise. Voir les exemples suivants pour plus de détails.
{ "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" }
Exemple 2 : emplacement unique et niveau de service spécifique pour Azure-netapp-Files
Cette configuration back-end place les volumes à l'emplacement « eastus » d'Azure dans un pool de capacité « Premium ». Trident détecte automatiquement tous les sous-réseaux délégués à ANF dans cet emplacement et place un nouveau volume de façon aléatoire.
{ "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" }
Exemple 3 : configuration avancée pour Azure-netapp-Files
Cette configuration back-end réduit davantage l'étendue du placement des volumes sur un seul sous-réseau et modifie également certains paramètres par défaut du provisionnement des volumes.
{ "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" } }
Exemple 4 : pools de stockage virtuel avec Azure-netapp-Files
Cette configuration back-end définit plusieurs "pools de stockage" dans un seul fichier. Cette fonction est utile lorsque plusieurs pools de capacité prennent en charge différents niveaux de service, et que vous souhaitez créer des classes de stockage dans Kubernetes qui les représentent.
Ceci vient de rayer la surface de la puissance des pools de stockage virtuel et de leurs étiquettes.
{ "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", } ] }