Votre environnement de Stockage cloud natif et les machines virtuelles qui participent au cluster Kubernetes doivent répondre à plusieurs conditions requises.

Configuration requise d'Stockage cloud natif

  • Version compatible de vSphere.
  • Une version compatible de Kubernetes.
  • Cluster Kubernetes déployé sur les machines virtuelles. Pour plus d'informations sur le déploiement du plug-in vSphere CSI et l'exécution du cluster Kubernetes sur vSphere, reportez-vous à la documentation de Plug-in VMware vSphere Container Storage.

Conditions requises pour les machines virtuelles de cluster Kubernetes

  • Machines virtuelles avec la version matérielle 15 ou ultérieure. Installez VMware Tools sur chaque machine virtuelle de nœud.
  • Recommandations matérielles pour les machines virtuelles :
    • Définissez la CPU et la mémoire de manière appropriée en fonction des exigences de charge de travail.
    • Utilisez le contrôleur VMware paravirtual SCSI pour le disque principal sur la machine virtuelle du nœud.
  • Toutes les machines virtuelles doivent avoir accès à une banque de données partagée, telle que vSAN.
  • Définissez le paramètre disk.EnableUUID sur chaque machine virtuelle de nœud. Reportez-vous à la section Configurer le cluster Kubernetes dans les machines virtuelles vSphere.
  • Pour éviter des erreurs et un comportement imprévisible, ne prenez pas de snapshots des machines virtuelles de nœuds CNS.

Configuration requise pour le volume de fichiers CNS

  • Utilisez vSphere version 7.0 ou versions ultérieures avec une version Kubernetes compatible.
  • Utilisez une version compatible de CSI. Pour plus d'informations, reportez-vous à la documentation de VMware vSphere Container Storage Plug-in.
  • Activez et configurez le service de fichiers vSAN. Vous devez configurer les domaines de service de fichiers, les pools d'adresses IP, le réseau, etc. nécessaires. Pour plus d'informations, reportez-vous à la documentation Administration de VMware vSAN.
  • Suivez les directives spécifiques pour configurer l'accès réseau depuis un système d'exploitation invité du nœud Kubernetes vers un partage de fichiers vSAN. Reportez-vous à la section Configuration de l'accès réseau à un partage de fichiers vSAN.

Configuration de l'accès réseau à un partage de fichiers vSAN

Pour pouvoir provisionner des volumes persistants ReadWriteMany dans votre environnement Kubernetes vSphere générique, configurez les réseaux, les commutateurs et les routeurs nécessaires à partir des nœuds Kubernetes vers le réseau du service de fichiers vSAN.

Configuration du réseau

Lors de la configuration des réseaux, respectez les conditions requises suivantes :
  • Sur chaque nœud Kubernetes, vous pouvez utiliser une carte réseau virtuelle dédiée au trafic de partage de fichiers vSAN. Cette option est requise uniquement si vous souhaitez utiliser un chemin de trafic de données sécurisé pour vos volumes de fichiers.
  • Si vous utilisez une carte réseau virtuelle dédiée, assurez-vous que le trafic via la carte réseau virtuelle dédiée peut être acheminé vers un ou plusieurs réseaux de services de fichiers vSAN.
  • Assurez-vous que seul le système d'exploitation invité sur chaque nœud Kubernetes peut accéder directement au partage de fichiers vSAN via l'adresse IP de partage de fichiers. Les espaces du nœud ne peuvent pas effectuer un test ping ou accéder au partage de fichiers vSAN par son adresse IP.

    Le pilote du dispositif CNS CSI garantit que seuls les espaces configurés pour utiliser le volume de fichiers CNS peuvent accéder au partage de fichiers vSAN en créant un point de montage dans le système d'exploitation invité.

  • Évitez de créer un conflit d'adresses IP entre les machines virtuelles de nœuds et les partages de fichiers vSAN.

L'illustration suivante est un exemple de la configuration du réseau CNS avec le service de partage de fichiers vSAN.

L'illustration montre la configuration du réseau CNS avec le partage de fichiers vSAN.

Dans l'illustration, l'exemple de configuration de mise en réseau est conforme à ces directives.
  • La configuration utilise des réseaux distincts pour différents éléments dans l'environnement CNS.
    Réseau Description
    Réseau de gestion vSphere Généralement, dans un cluster Kubernetes générique, chaque nœud a accès à ce réseau.
    Réseau d'espace ou de nœud Kubernetes utilise ce réseau pour la communication entre les nœuds ou les espaces.
    Réseau de partage de fichiers dédié Le trafic de données du volume de fichiers CNS utilise ce réseau.
    Réseau de partage de fichiers vSAN Réseau sur lequel le partage de fichiers vSAN est activé et où des partages de fichiers sont disponibles.
  • Chaque nœud Kubernetes dispose d'une carte réseau virtuelle dédiée au trafic de fichiers. Cette carte réseau virtuelle est distincte de celle utilisée pour le nœud à des fins de communication entre les espaces et entre les nœuds. Cette configuration est utilisée uniquement à titre d'exemple, mais n'est pas obligatoire.
  • Seules les applications configurées pour utiliser le partage de fichiers CNS ont accès aux partages de fichiers vSAN via le point de montage dans le système d'exploitation invité du nœud. Par exemple, dans l'illustration, les actions suivantes sont réalisées :
    • Les espaces App-1 et App-2 sont configurés pour utiliser un volume de fichiers et ont accès au partage de fichiers via le point de montage créé par le pilote CSI.
    • Les espaces App-3 et App-4 ne sont pas configurés avec un volume de fichiers et ne peuvent pas accéder aux partages de fichiers.
  • Les partages de fichiers vSAN sont déployés en tant que conteneurs dans une machine virtuelle du dispositif de partage de fichiers vSAN sur l'hôte ESXi. Un système de déploiement Kubernetes, c'est-à-dire un logiciel ou un service pouvant configurer, déployer et gérer des clusters Kubernetes, configure les routeurs et les commutateurs nécessaires de sorte que le système d'exploitation invité dans le nœud Kubernetes puisse accéder aux partages de fichiers vSAN.

Limitations de sécurité

Bien que les cartes réseau virtuelles dédiées empêchent un espace non autorisé d'accéder directement aux partages de fichiers, il existe certaines limitations de sécurité :
  • La fonctionnalité du fichier CNS part du principe qu'un utilisateur disposant de l'ID de volume de fichiers CNS est un utilisateur autorisé du volume. Tout utilisateur disposant de l'ID de volume de fichiers CNS peut accéder aux données stockées dans le volume.
  • Le volume de fichiers CNS prend uniquement en charge l'authentification AUTH_SYS, qui est une authentification basée sur l'ID d'utilisateur. Pour protéger l'accès aux données du volume de fichiers CNS, vous devez utiliser les ID d'utilisateur appropriés pour les conteneurs accédant au volume de fichiers CNS.
  • Un volume persistant ReadWriteMany non lié faisant référence à un volume de fichiers CNS peut être lié par une réclamation de volume persistant créée par n'importe quel utilisateur Kubernetes sous n'importe quel espace de noms. Assurez-vous que seuls les utilisateurs autorisés ont accès à Kubernetes pour éviter les problèmes de sécurité.

Configuration du pilote CSI pour accéder aux clusters de services de fichiers vSAN

En fonction de la configuration, le pilote CSI peut provisionner des volumes de fichiers sur un ou plusieurs clusters vSAN sur lesquels le service de fichiers est activé.

Vous pouvez limiter l'accès à des clusters vSAN spécifiques sur lesquels le service de fichiers est activé. Lors du déploiement du cluster Kubernetes, configurez le pilote CSI avec l'accès à des clusters vSAN de services de fichiers spécifiques. Par conséquent, le pilote CSI peut provisionner les volumes de fichiers uniquement sur ces clusters vSAN.

Dans la configuration par défaut, le pilote CSI utilise tous les clusters vSAN de services de fichiers disponible dans vCenter Server pour le provisionnement du volume de fichiers. Le pilote CSI ne vérifie pas quel cluster vSAN de service de fichiers est accessible lors du provisionnement du volume de fichiers.