Créer des machines virtuelles avec VPC File Storage

Cloud privé virtuel 4.17 et plus tard Uniquement des nœuds de travail « bare metal » RHCOS uniquement

Utilisez File Storage for VPC pour provisionner le stockage persistant pour les machines virtuelles qui s'exécutent sur OpenShift Virtualization.

Cette rubrique décrit comment vérifier votre environnement, créer une machine virtuelle qui utilise VPC File Storage, et valider le démarrage de la machine virtuelle.

Avant de commencer

Avant de créer une machine virtuelle avec VPC File Storage, effectuez les tâches suivantes :

  1. Créez un cluster VPC avec des nœuds de travail en métal nu qui utilise Red Hat CoreOS (RHCOS). Pour plus d'informations, voir Création de clusters VPC.
  2. Examinez les conseils de planification dans la section Planification du déploiement de la virtualisation OpenShift.
  3. Configurez le VPC File Storage comme décrit dans la section Configuration du stockage pour la virtualisation OpenShift.
  4. Installez l'opérateur de virtualisation OpenShift comme décrit dans la section Installation de l'opérateur de virtualisation OpenShift.
  5. Installez l'interface de ligne de commande virtctl. Pour plus d'informations, reportez-vous à la section Prise en main des outils CLI de OpenShift Virtualization.

Vérification de l'environnement

Vérifiez que votre cluster est prêt avant de créer une machine virtuelle.

  1. Confirmez que les composants de virtualisation OpenShift sont déployés.

    oc get hyperconverged -n openshift-cnv
    oc get pods -n openshift-cnv
    

    Recherchez la valeur PHASE Deployed dans la sortie HyperConverged. Dans la sortie du pod, vérifiez que les pods de virtualisation affichent l'état Running ou Completed et qu'ils ne sont pas bloqués à Pending, CrashLoopBackOff ou Error.

  2. Confirmez que le pilote complémentaire VPC File CSI est installé.

    ibmcloud ks cluster addon ls -c CLUSTER_NAME | grep vpc-file-csi-driver
    

    Recherchez le module complémentaire vpc-file-csi-driver dans la sortie et vérifiez que son état de santé est normal ou que le statut indique que le module complémentaire est prêt.

  3. Vérifiez qu'une classe VPC File Storage est disponible.

    oc get storageclass | grep vpc-file
    

    Recherchez des classes de stockage telles que ibmc-vpc-file-1000-iops ou ibmc-vpc-file-6000-iops. Notez le nom de la classe de stockage que vous souhaitez utiliser dans les étapes suivantes.

  4. Vérifiez que le profil de stockage pour la classe VPC File Storage sélectionnée est configuré avec le mode d'accès ReadWriteMany et le mode de volume Filesystem.

    oc get storageprofile <storage-class-name> -o yaml
    

    Dans le résultat, recherchez claimPropertySets sous spec. Vérifiez que accessModes comprend ReadWriteMany et que volumeMode est défini sur Filesystem.

    claimPropertySets:
    - accessModes:
      - ReadWriteMany
      volumeMode: Filesystem
    
  5. Vérifiez que la classe de stockage sélectionnée peut fournir une revendication de volume persistant.

    cat <<EOF | oc apply -f -
    apiVersion: v1
    kind: PersistentVolumeClaim
    metadata:
      name: vpc-file-test-pvc
    spec:
      accessModes:
      - ReadWriteMany
      resources:
        requests:
          storage: 10Gi
      storageClassName: <storage-class-name>
    EOF
    
  6. Confirmez que la demande de volume persistant de test est liée.

    oc get pvc vpc-file-test-pvc
    

    Dans la sortie, recherchez la colonne STATUS et vérifiez que la demande de volume persistant indique Bound. Si la demande reste sur Pending, la classe ou le profil de stockage n'est pas configuré correctement.

  7. Examiner les détails de la demande de volume persistant si la demande n'est pas liée.

    oc describe pvc vpc-file-test-pvc
    
  8. Supprimez la revendication de volume persistant de test.

    oc delete pvc vpc-file-test-pvc
    

Créer une machine virtuelle à partir de la console web

Utilisez la console web OpenShift pour créer une machine virtuelle qui stocke son disque sur le VPC File Storage.

  1. Connectez-vous à la console web OpenShift pour votre cluster.
  2. Dans le menu de navigation, cliquez sur Virtualisation > VirtualMachines.
  3. Cliquez sur Créer et sélectionnez un modèle ou sélectionnez À partir de YAML si vous souhaitez définir la machine virtuelle manuellement.
  4. Saisissez un nom pour la machine virtuelle.
  5. Sélectionnez le projet dans lequel vous souhaitez créer la machine virtuelle.
  6. Dans la section stockage, sélectionnez une classe VPC File Storage telle que ibmc-vpc-file-1000-iops ou ibmc-vpc-file-6000-iops.
  7. Définissez la taille du disque en fonction des exigences de votre charge de travail.
  8. Vérifiez les paramètres du processeur et de la mémoire, puis mettez-les à jour si nécessaire.
  9. Cliquez sur Créer VirtualMachine.
  10. Dans la page des détails de la machine virtuelle, examinez les onglets Disques, Interfaces réseau et Configuration pour confirmer que la machine virtuelle a été créée avec les paramètres attendus.

Après la création de la machine virtuelle, la console crée les ressources associées de réclamation de volume persistant et de volume de données.

Création d'une machine virtuelle à partir de l'interface de ligne de commande

Utilisez l'interface CLI si vous souhaitez créer une machine virtuelle à partir d'un manifeste réutilisable.

  1. Créez un espace de noms pour les charges de travail de votre machine virtuelle si vous n'en avez pas déjà un.

    oc create namespace vm-project
    
  2. Créez un manifeste de machine virtuelle qui fait référence à une classe VPC File Storage.

    cat <<EOF | oc apply -f -
    apiVersion: kubevirt.io/v1
    kind: VirtualMachine
    metadata:
      name: rhel9-vm
      namespace: vm-project
    spec:
      running: false
      template:
        metadata:
          labels:
            kubevirt.io/domain: rhel9-vm
        spec:
          domain:
            cpu:
              cores: 2
            devices:
              disks:
              - disk:
                  bus: virtio
                name: rootdisk
              - disk:
                  bus: virtio
                name: cloudinitdisk
            resources:
              requests:
                memory: 4Gi
          volumes:
          - dataVolume:
              name: rhel9-vm-rootdisk
            name: rootdisk
          - cloudInitNoCloud:
              userData: |
                #cloud-config
                user: cloud-user
                password: changeme
                chpasswd: { expire: false }
            name: cloudinitdisk
      dataVolumeTemplates:
      - metadata:
          name: rhel9-vm-rootdisk
        spec:
          pvc:
            accessModes:
            - ReadWriteMany
            resources:
              requests:
                storage: 40Gi
            storageClassName: <storage-class-name>
            volumeMode: Filesystem
          source:
            blank: {}
    EOF
    
  3. Vérifiez que les ressources de la machine virtuelle et du volume de données ont été créées.

    oc get vm -n vm-project
    oc get dv -n vm-project
    oc get pvc -n vm-project
    

    Dans le résultat, vérifiez que la machine virtuelle rhel9-vm est répertoriée, que le volume de données rhel9-vm-rootdisk existe et que la revendication de volume persistant rhel9-vm-rootdisk est créée. Si la revendication de volume persistant n'est pas encore Bound, attendez que le provisionnement soit terminé avant de continuer.

  4. Examiner les détails du volume de données si le volume de données n'est pas prêt.

    oc describe dv rhel9-vm-rootdisk -n vm-project
    oc describe pvc rhel9-vm-rootdisk -n vm-project
    
  5. Démarrez la machine virtuelle.

    virtctl start rhel9-vm -n vm-project
    
  6. Vérifiez que l'instance de la machine virtuelle fonctionne.

    oc get vmi -n vm-project
    

    Dans le résultat, recherchez le nom de l'instance de la machine virtuelle et vérifiez que sa phase est Running. Si aucune instance de machine virtuelle n'est répertoriée, vérifiez l'état de la machine virtuelle.

    oc get vm rhel9-vm -n vm-project -o yaml
    

Valider la machine virtuelle

Après avoir créé la machine virtuelle, vérifiez que les ressources de stockage et de calcul fonctionnent comme prévu.

  1. Confirmez que la revendication de volume persistant est liée.

    oc get pvc -n vm-project
    

    Dans la sortie, recherchez la revendication de volume persistant rhel9-vm-rootdisk et vérifiez que la colonne STATUS indique Bound.

  2. Confirmez que l'importation ou le transfert du volume de données s'est déroulé correctement.

    oc get dv -n vm-project
    

    Dans le résultat, vérifiez que le volume de données indique une phase réussie telle que Succeeded ou Ready, en fonction de votre environnement. Si le volume de données n'est pas prêt, examinez les événements de réclamation du volume de données et du volume persistant.

    oc describe dv rhel9-vm-rootdisk -n vm-project
    oc describe pvc rhel9-vm-rootdisk -n vm-project
    
  3. Confirmez que l'instance de la machine virtuelle est en cours d'exécution.

    oc get vmi -n vm-project
    
  4. Examinez les détails de l'instance de la machine virtuelle pour confirmer l'emplacement du nœud, les interfaces et les volumes attachés.

    oc describe vmi rhel9-vm -n vm-project
    
  5. Si vous avez configuré des informations d'identification pour le cloud-init, connectez-vous à la console de la machine virtuelle.

    virtctl console rhel9-vm -n vm-project
    
  6. Examinez les détails de la machine virtuelle si l'instance ne démarre pas.

    oc describe vm rhel9-vm -n vm-project
    oc describe vmi rhel9-vm -n vm-project
    

Comprendre les limites et les considérations

Examinez les considérations suivantes lorsque vous utilisez VPC File Storage pour les machines virtuelles :

Performances de l' File Storage VPC
VPC File Storage est une option de stockage en réseau. Il est généralement mieux adapté au développement, aux tests et aux charges de travail à faible taux d'entrées-sorties.
Instantanés et clonage
La prise en charge des instantanés et du clonage diffère de celle de OpenShift Data Foundation. Examinez vos besoins en matière de stockage avant d'opter pour le VPC File Storage pour les charges de travail de production.
Migration active
La migration en direct est prise en charge lorsque le profil de stockage est configuré correctement et que la charge de travail répond aux exigences de la virtualisation OpenShift.
Configuration du profil de stockage
Vous devez configurer le profil de stockage pour le provisionneur VPC File CSI afin que CDI puisse utiliser la classe de stockage correctement.

Traitement des incidents

Si la machine virtuelle ne démarre pas ou si le disque n'est pas correctement approvisionné, consultez les rubriques suivantes :

Etapes suivantes

Après avoir créé une machine virtuelle avec VPC File Storage:

  1. Gérer les machines virtuelles dans les clusters du service de virtualisation
  2. Configurer les interfaces réseau virtuelles
  3. Consultez la documentation de Red Hat OpenShift Virtualization