Skip to main content
Une version plus récente de ce produit est disponible.
La version française est une traduction automatique. La version anglaise prévaut sur la française en cas de divergence.

Options de configuration du stockage

Contributeurs

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

version

Numéro de version du fichier de configuration

1

storageDriverName

Nom du pilote de stockage

ontap-nas, ontap-san, ontap-nas-economy,
ontap-nas-flexgroup, solidfire-san, azure-netapp-files, ou gcp-cvs

storagePrefix

Préfixe facultatif pour les noms de volumes. Par défaut : « netappdvp_ ».

staging_

limitVolumeSize

Restriction facultative sur les tailles de volume. Par défaut : « » (non appliqué)

10g

Astuce 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

size

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

managementLIF

Adresse IP de la LIF de management ONTAP. Vous pouvez spécifier un nom de domaine complet (FQDN).

10.0.0.1

dataLIF

Adresse IP de la LIF de protocole ; sera dérivée s'il n'est pas spécifié. Pour le ontap-nas Pilotes uniquement, vous pouvez spécifier un FQDN, auquel cas le FQDN sera utilisé pour les opérations de montage NFS. Pour le ontap-san Pilotes, par défaut est d'utiliser toutes les adresses IP des LIF de données du SVM et d'utiliser le chemin d'accès multivoie iSCSI. Spécification d'une adresse IP pour dataLIF pour le ontap-san les pilotes imposent au pilote de désactiver le multichemin et d'utiliser uniquement l'adresse spécifiée.

10.0.0.2

svm

Storage Virtual machine à utiliser (requis, si la LIF de gestion est une LIF de cluster)

svm_nfs

username

Nom d'utilisateur pour la connexion au périphérique de stockage

vsadmin

password

Mot de passe pour se connecter au périphérique de stockage

secret

aggregate

Agrégat pour le provisionnement (facultatif ; si défini, doit être attribué au SVM) Pour le ontap-nas-flexgroup pilote, cette option est ignorée. Tous les agrégats affectés à un SVM sont utilisés pour provisionner un volume FlexGroup.

aggr1

limitAggregateUsage

Facultatif, le provisionnement échoue si l'utilisation est supérieure à ce pourcentage

75 %

nfsMountOptions

Contrôle granulaire des options de montage NFS ; par défaut : «-o nfssvers=3 ». Disponible uniquement pour le ontap-nas et ontap-nas-economy pilotes. "Pour plus d'informations sur la configuration de l'hôte NFS, consultez ici".

-o nfsvers=4

igroupName

Le groupe initiateur utilisé par le plug-in ; par défaut, il est « netappdvp ». Disponible uniquement pour le `ontap-san `driver.

myigroup

limitVolumeSize

Taille maximale du volume requesable et taille du volume parent qtree. Pour le ontap-nas-economy Driver, cette option limite en outre la taille des volumes FlexVol qu'elle crée.

300 g

qtreesPerFlexvol

Le nombre maximal de qtrees par FlexVol doit être compris dans la plage [50, 300], la valeur par défaut est 200. Pour le ontap-nas-economy Pilote, cette option permet de personnaliser le nombre maximal de qtrees par FlexVol.

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

spaceReserve

Mode de réservation d'espace ; « none » (provisionnement fin) ou « volume » (Thick)

Aucune

snapshotPolicy

La règle de snapshot à utiliser est « none » par défaut

Aucune

snapshotReserve

Pourcentage de réserve Snapshot ; la valeur par défaut est « » pour accepter la valeur par défaut d'ONTAP

10

splitOnClone

Séparer un clone de son parent lors de sa création, par défaut « false »

faux

encryption

Active NetApp Volume Encryption (NVE) sur le nouveau volume ; valeur par défaut sur false. Pour utiliser cette option, NVE doit être sous licence et activé sur le cluster.

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

unixPermissions

Option NAS pour les volumes NFS provisionnés, valeur par défaut 777

776

snapshotDir

Option NAS pour accéder à l' .snapshot répertoire, valeur par défaut “false”

vrai

exportPolicy

Option NAS pour l'export policy NFS à utiliser, valeur par défaut

valeur par défaut

securityStyle

Option NAS pour l'accès au volume NFS provisionné, valeur par défaut « unix »

mixte

fileSystemType

Option SAN pour sélectionner le type de système de fichiers, par défaut ext4.

xfs

tieringPolicy

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.

Remarque 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

Endpoint

SVIP

Port et adresse IP iSCSI

10.0.0.7:3260

TenantName

Locataire SolidFireF à utiliser (créé s'il n'est pas trouvé)

« docker »

InitiatorIFace

Spécifiez l'interface lors de la restriction du trafic iSCSI à une interface non-par défaut

« par défaut »

Types

Spécifications de QoS

Voir l'exemple ci-dessous

LegacyNamePrefix

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

Trident inclut désormais la prise en charge des volumes plus petits avec le type de service CVS par défaut "GCP". Pour les systèmes back-end créés avec storageClass=software, Les volumes auront une taille de provisionnement minimale de 300 Gio. NetApp recommande aux clients d'utiliser des volumes de moins d'une Tio pour les charges de travail non liées à la production. CVS offre actuellement cette fonctionnalité sous disponibilité contrôlée et ne fournit pas de support technique.

Remarque Abonnez-vous pour accéder aux volumes de sous-Tio "ici".
Avertissement Lors du déploiement des systèmes back-end avec le type de service CVS par défaut storageClass=software, Vous devez obtenir l'accès à la fonctionnalité de volumes de sous-Tio dans GCP pour le(s) numéro(s) de projet et ID de projet en question. Il est nécessaire que Trident provisionne les volumes de sous-Tio. Si ce n'est pas le cas, les créations de volume échoueront pour les ESV de <600 Gio. Obtenir l'accès aux volumes de sous-Tio à l'aide de "ce formulaire".

Les volumes créés par Trident pour le niveau de service CVS par défaut seront provisionnés comme suit :

  • Si la quantité de volume persistant est inférieure à 300 Gio, Trident crée un volume CVS de 300 Gio.

  • Les demandes de volume persistant entre 300 Gio et 600 Gio entraînent la création d'un volume CVS de la taille demandée par Trident.

  • Si les demandes de volume persistant sont comprises entre 600 Gio et 1 Tio, Trident crée un volume CVS.

  • Si les demandes de volume persistant supérieures à 1 Tio génèrent un volume CVS de la taille demandée.

En plus des valeurs de configuration globale, ces options sont disponibles lors de l'utilisation de CVS sur GCP.

Option Description Exemple

apiRegion

Région de compte CVS (obligatoire). Est la région GCP dans laquelle ce système back-end provisionne les volumes.

“us-west2”

projectNumber

Numéro de projet GCP (obligatoire). Se trouve dans l'écran d'accueil du portail Web GCP.

“123456789012”

hostProjectNumber

Numéro de projet hôte VPC partagé par GCP (requis en cas d'utilisation d'un VPC partagé)

“098765432109”

apiKey

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)

secretKey

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 »

proxyURL

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/”

nfsMountOptions

Options de montage NFS ; valeur par défaut « -o nfssvers=3 »

“nfsvers=3,proto=tcp,tileo=600”

serviceLevel

Niveau de performance (standard, Premium, Extreme), valeur par défaut « standard »

« haut de gamme »

network

Réseau GCP utilisé pour les volumes CVS, valeur par défaut « par défaut »

« par défaut »

Remarque 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.
Remarque NetApp Cloud Volumes Service pour GCP ne prend pas en charge les volumes CVS-Performance de moins de 100 Gio ou les volumes CVS de moins de 300 Gio. Pour faciliter le déploiement des applications, Trident crée automatiquement des volumes de taille minimale si un volume trop petit est demandé.

Lorsque vous utilisez CVS sur GCP, ces paramètres d'option de volume par défaut sont disponibles.

Option Description Exemple

exportRule

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”

snapshotDir

Contrôle la visibilité du .snapshot répertoire

« faux »

snapshotReserve

Pourcentage de réserve de snapshot, la valeur par défaut est « » pour accepter la valeur par défaut du CVS 0

“10”

size

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": "<id_value>",
        "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/"
}

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, et clientSecret à 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é"

Astuce 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.
Remarque 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

version

Toujours 1

storageDriverName

« azure-netapp-files »

backendName

Nom personnalisé pour le système back-end de stockage

Nom du pilote + "_" + caractères aléatoires

subscriptionID

L'ID d'abonnement de votre abonnement Azure

tenantID

ID locataire d'un enregistrement d'application

clientID

L'ID client d'un enregistrement d'application

clientSecret

Secret client d'un enregistrement d'application

serviceLevel

L'un des modèles "Standard", "Premium" ou "Ultra"

« » (aléatoire)

location

Nom de l'emplacement Azure les nouveaux volumes seront créés dans

« » (aléatoire)

virtualNetwork

Nom d'un réseau virtuel avec un sous-réseau délégué

« » (aléatoire)

subnet

Nom d'un sous-réseau délégué à Microsoft.Netapp/volumes

« » (aléatoire)

nfsMountOptions

Contrôle précis des options de montage NFS

“-o nfsvers=3”

limitVolumeSize

Echec du provisionnement si la taille du volume demandé est supérieure à cette valeur

« » (non appliqué par défaut)

Remarque 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

exportRule

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”

snapshotDir

Contrôle la visibilité du .snapshot répertoire

« faux »

size

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",
        }
    ]
}