Configurer un système NetApp HCI ou SolidFire backend
Découvrez comment créer et utiliser un back-end Element avec votre installation Astra Trident.
Détails du pilote d'élément
ASTRA Trident fournit le solidfire-san
pilote de stockage pour communiquer avec le cluster. Les modes d'accès pris en charge sont : ReadWriteOnce (RWO), ReadOnlyMey (ROX), ReadWriteMaly (RWX), ReadWriteOncePod (RWOP).
Le solidfire-san
pilote de stockage prend en charge les modes file et block volume. Pour le Filesystem
volumeMode, Astra Trident crée un volume et un système de fichiers. Le type de système de fichiers est spécifié par la classe de stockage.
Conducteur | Protocole | Mode Volume | Modes d'accès pris en charge | Systèmes de fichiers pris en charge |
---|---|---|---|---|
|
ISCSI |
Bloc |
RWO, ROX, RWX, RWOP |
Aucun système de fichiers. Périphérique de bloc brut. |
|
ISCSI |
Système de fichiers |
RWO, RWOP |
|
Avant de commencer
Vous aurez besoin des éléments suivants avant de créer un back-end d'élément.
-
Système de stockage pris en charge exécutant le logiciel Element.
-
Identifiants de locataire ou administrateur de cluster NetApp HCI/SolidFire pouvant gérer les volumes
-
Tous vos nœuds workers Kubernetes doivent avoir installé les outils iSCSI appropriés. Reportez-vous à la "informations de préparation du nœud de travail".
Options de configuration du back-end
Voir le tableau suivant pour les options de configuration du back-end :
Paramètre | Description | Valeur par défaut |
---|---|---|
|
Toujours 1 |
|
|
Nom du pilote de stockage |
Toujours « solidfire-san ». |
|
Nom personnalisé ou système back-end de stockage |
“SolidFire_” + adresse IP de stockage (iSCSI) |
|
MVIP pour le cluster SolidFire avec les identifiants de locataire |
|
|
Port et adresse IP de stockage (iSCSI) |
|
|
Ensemble d'étiquettes arbitraires au format JSON à appliquer aux volumes. |
« » |
|
Nom du locataire à utiliser (créé si introuvable) |
|
|
Limitez le trafic iSCSI à une interface hôte spécifique |
« par défaut » |
|
Utilisez CHAP pour authentifier iSCSI. ASTRA Trident utilise le protocole CHAP. |
vrai |
|
Liste des ID de groupes d'accès à utiliser |
Recherche l'ID d'un groupe d'accès nommé « trident » |
|
Spécifications de QoS |
|
|
Echec du provisionnement si la taille du volume demandé est supérieure à cette valeur |
« » (non appliqué par défaut) |
|
Indicateurs de débogage à utiliser lors du dépannage. Exemple, {“api”:false, “méthode”:true} |
nul |
Ne pas utiliser debugTraceFlags sauf si vous effectuez un dépannage et que vous avez besoin d'un vidage de journal détaillé.
|
Exemple 1 : configuration back-end pour un solidfire-san
pilote avec trois types de volume
Cet exemple montre un fichier back-end utilisant l'authentification CHAP et la modélisation de trois types de volumes avec des garanties de QoS spécifiques. Il est probable que vous définissiez ensuite les classes de stockage pour les consommer à l'aide du IOPS
paramètre de classe de stockage.
--- version: 1 storageDriverName: solidfire-san Endpoint: https://<user>:<password>@<mvip>/json-rpc/8.0 SVIP: "<svip>:3260" TenantName: "<tenant>" labels: k8scluster: dev1 backend: dev1-element-cluster UseCHAP: true 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
Exemple 2 : configuration du back-end et des classes de stockage pour le solidfire-san
pilote avec pools virtuels
Cet exemple représente le fichier de définition du back-end configuré avec des pools virtuels ainsi que des classes de stockage qui les renvoient.
Astra Trident copie les étiquettes présentes sur un pool de stockage vers le LUN de stockage back-end lors du provisionnement. Pour plus de commodité, les administrateurs du stockage peuvent définir des étiquettes par pool virtuel et les volumes de groupe par étiquette.
Dans l'exemple de fichier de définition back-end illustré ci-dessous, des valeurs par défaut spécifiques sont définies pour tous les pools de stockage, qui définissent le type
sur Silver. Les pools virtuels sont définis dans la storage
section. Dans cet exemple, certains pools de stockage définissent leur propre type et certains d'entre eux remplacent les valeurs par défaut définies ci-dessus.
--- version: 1 storageDriverName: solidfire-san Endpoint: https://<user>:<password>@<mvip>/json-rpc/8.0 SVIP: "<svip>:3260" TenantName: "<tenant>" UseCHAP: true 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 type: Silver labels: store: solidfire k8scluster: dev-1-cluster region: us-east-1 storage: - labels: performance: gold cost: '4' zone: us-east-1a type: Gold - labels: performance: silver cost: '3' zone: us-east-1b type: Silver - labels: performance: bronze cost: '2' zone: us-east-1c type: Bronze - labels: performance: silver cost: '1' zone: us-east-1d
Les définitions de classe de stockage suivantes font référence aux pools virtuels ci-dessus. En utilisant ce parameters.selector
champ, chaque classe de stockage indique quel(s) pool(s) virtuel(s) peut(NT) être utilisé(s) pour héberger un volume. Les aspects définis dans le pool virtuel sélectionné seront définis pour le volume.
La première classe de stockage (solidfire-gold-four
) est mappée sur le premier pool virtuel. Il s'agit de la seule piscine offrant des performances or avec un Volume Type QoS
de Gold. La dernière classe de stockage (solidfire-silver
) fait référence à n'importe quel pool de stockage offrant des performances Silver. Astra Trident va décider du pool virtuel sélectionné et s'assurer que les besoins en stockage sont satisfaits.
apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: solidfire-gold-four provisioner: csi.trident.netapp.io parameters: selector: "performance=gold; cost=4" fsType: "ext4" --- apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: solidfire-silver-three provisioner: csi.trident.netapp.io parameters: selector: "performance=silver; cost=3" fsType: "ext4" --- apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: solidfire-bronze-two provisioner: csi.trident.netapp.io parameters: selector: "performance=bronze; cost=2" fsType: "ext4" --- apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: solidfire-silver-one provisioner: csi.trident.netapp.io parameters: selector: "performance=silver; cost=1" fsType: "ext4" --- apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: solidfire-silver provisioner: csi.trident.netapp.io parameters: selector: "performance=silver" fsType: "ext4"