4.8. Stockage persistant à l'aide d'iSCSI


Vous pouvez provisionner votre cluster OpenShift Container Platform avec un stockage persistant en utilisant iSCSI. Une certaine familiarité avec Kubernetes et iSCSI est supposée.

Le cadre de volume persistant de Kubernetes permet aux administrateurs de provisionner un cluster avec un stockage persistant et donne aux utilisateurs un moyen de demander ces ressources sans avoir aucune connaissance de l'infrastructure sous-jacente.

Important

La haute disponibilité du stockage dans l'infrastructure est laissée au fournisseur de stockage sous-jacent.

Important

Lorsque vous utilisez iSCSI sur Amazon Web Services, vous devez mettre à jour la stratégie de sécurité par défaut afin d'inclure le trafic TCP entre les nœuds sur les ports iSCSI. Par défaut, il s'agit des ports 860 et 3260.

Important

Les utilisateurs doivent s'assurer que l'initiateur iSCSI est déjà configuré sur tous les nœuds d'OpenShift Container Platform en installant le package iscsi-initiator-utils et en configurant leur nom d'initiateur dans /etc/iscsi/initiatorname.iscsi. Le paquet iscsi-initiator-utils est déjà installé sur les déploiements qui utilisent Red Hat Enterprise Linux CoreOS (RHCOS).

Pour plus d'informations, voir Gestion des périphériques de stockage.

4.8.1. Provisionnement

Vérifiez que le stockage existe dans l'infrastructure sous-jacente avant de le monter en tant que volume dans OpenShift Container Platform. Tout ce qui est nécessaire pour l'iSCSI est le portail cible iSCSI, un nom qualifié iSCSI (IQN) valide, un numéro LUN valide, le type de système de fichiers et l'API PersistentVolume.

PersistentVolume définition de l'objet

apiVersion: v1
kind: PersistentVolume
metadata:
  name: iscsi-pv
spec:
  capacity:
    storage: 1Gi
  accessModes:
    - ReadWriteOnce
  iscsi:
     targetPortal: 10.16.154.81:3260
     iqn: iqn.2014-12.example.server:storage.target00
     lun: 0
     fsType: 'ext4'

4.8.2. Appliquer les quotas de disque

Utilisez les partitions LUN pour appliquer les quotas de disque et les contraintes de taille. Chaque LUN est un volume persistant. Kubernetes impose des noms uniques pour les volumes persistants.

L'application de quotas de cette manière permet à l'utilisateur final de demander un stockage persistant d'un montant spécifique (par exemple, 10Gi) et d'obtenir un volume correspondant d'une capacité égale ou supérieure.

4.8.3. sécurité des volumes iSCSI

Les utilisateurs demandent du stockage avec un objet PersistentVolumeClaim. Cette demande n'existe que dans l'espace de noms de l'utilisateur et ne peut être référencée que par un pod dans ce même espace de noms. Toute tentative d'accès à une demande de volume persistant à travers un espace de noms entraîne l'échec du module.

Chaque LUN iSCSI doit être accessible par tous les nœuds du cluster.

4.8.3.1. Configuration du protocole d'authentification Challenge Handshake (CHAP)

En option, OpenShift Container Platform peut utiliser CHAP pour s'authentifier auprès des cibles iSCSI :

apiVersion: v1
kind: PersistentVolume
metadata:
  name: iscsi-pv
spec:
  capacity:
    storage: 1Gi
  accessModes:
    - ReadWriteOnce
  iscsi:
    targetPortal: 10.0.0.1:3260
    iqn: iqn.2016-04.test.com:storage.target00
    lun: 0
    fsType: ext4
    chapAuthDiscovery: true 1
    chapAuthSession: true 2
    secretRef:
      name: chap-secret 3
1
Activer l'authentification CHAP de la découverte iSCSI.
2
Activer l'authentification CHAP de la session iSCSI.
3
Spécifier le nom de l'objet Secrets avec le nom d'utilisateur et le mot de passe. Cet objet Secret doit être disponible dans tous les espaces de noms qui peuvent utiliser le volume référencé.

4.8.4. iSCSI multipathing

Pour le stockage basé sur iSCSI, vous pouvez configurer plusieurs chemins en utilisant le même IQN pour plusieurs adresses IP de portail cible. Les chemins multiples garantissent l'accès au volume persistant en cas de défaillance d'un ou de plusieurs composants d'un chemin.

Pour spécifier des chemins multiples dans la spécification du pod, utilisez le champ portals. Par exemple :

apiVersion: v1
kind: PersistentVolume
metadata:
  name: iscsi-pv
spec:
  capacity:
    storage: 1Gi
  accessModes:
    - ReadWriteOnce
  iscsi:
    targetPortal: 10.0.0.1:3260
    portals: ['10.0.2.16:3260', '10.0.2.17:3260', '10.0.2.18:3260'] 1
    iqn: iqn.2016-04.test.com:storage.target00
    lun: 0
    fsType: ext4
    readOnly: false
1
Ajoutez des portails cibles supplémentaires en utilisant le champ portals.

4.8.5. initiateur personnalisé iSCSI IQN

Configurez le nom qualifié iSCSI (IQN) de l'initiateur personnalisé si les cibles iSCSI sont limitées à certains IQN, mais que les nœuds auxquels les PV iSCSI sont attachés ne sont pas garantis d'avoir ces IQN.

Pour spécifier un IQN d'initiateur personnalisé, utilisez le champ initiatorName.

apiVersion: v1
kind: PersistentVolume
metadata:
  name: iscsi-pv
spec:
  capacity:
    storage: 1Gi
  accessModes:
    - ReadWriteOnce
  iscsi:
    targetPortal: 10.0.0.1:3260
    portals: ['10.0.2.16:3260', '10.0.2.17:3260', '10.0.2.18:3260']
    iqn: iqn.2016-04.test.com:storage.target00
    lun: 0
    initiatorName: iqn.2016-04.test.com:custom.iqn 1
    fsType: ext4
    readOnly: false
1
Indiquez le nom de l'initiateur.
Red Hat logoGithubRedditYoutubeTwitter

Apprendre

Essayez, achetez et vendez

Communautés

À propos de la documentation Red Hat

Nous aidons les utilisateurs de Red Hat à innover et à atteindre leurs objectifs grâce à nos produits et services avec un contenu auquel ils peuvent faire confiance.

Rendre l’open source plus inclusif

Red Hat s'engage à remplacer le langage problématique dans notre code, notre documentation et nos propriétés Web. Pour plus de détails, consultez leBlog Red Hat.

À propos de Red Hat

Nous proposons des solutions renforcées qui facilitent le travail des entreprises sur plusieurs plates-formes et environnements, du centre de données central à la périphérie du réseau.

© 2024 Red Hat, Inc.