Erstellen von virtuellen Maschinen mit VPC File Storage

Virtuelle Private Cloud 4.17 und später Nur Bare-Metal-Arbeitsknoten Nur RHCOS

Verwenden Sie File Storage for VPC, um persistenten Speicher für virtuelle Maschinen bereitzustellen, die auf OpenShift Virtualization laufen.

In diesem Thema wird beschrieben, wie Sie Ihre Umgebung überprüfen, eine virtuelle Maschine erstellen, die VPC File Storage verwendet, und überprüfen, ob die virtuelle Maschine erfolgreich startet.

Vorbereitende Schritte

Bevor Sie eine virtuelle Maschine mit VPC File Storage erstellen, führen Sie die folgenden Aufgaben aus:

  1. Erstellen Sie einen VPC-Cluster mit Bare Metal Worker Nodes, der Red Hat CoreOS (RHCOS) verwendet. Weitere Informationen finden Sie unter Erstellen von VPC-Clustern.
  2. Lesen Sie die Planungsanleitung unter Planung Ihrer OpenShift Virtualisierungsbereitstellung.
  3. Konfigurieren Sie VPC File Storage wie unter Einrichten von Speicher für OpenShift Virtualisierung beschrieben.
  4. Installieren Sie den OpenShift Virtualization Operator wie unter Installation des OpenShift Virtualization Operator beschrieben.
  5. Installieren Sie die Befehlszeilenschnittstelle von virtctl. Weitere Informationen finden Sie unter Erste Schritte mit den OpenShift Virtualization CLI-Tools.

Überprüfen Ihrer Umgebung

Überprüfen Sie, ob Ihr Cluster bereit ist, bevor Sie eine virtuelle Maschine erstellen.

  1. Vergewissern Sie sich, dass die OpenShift Virtualisierungskomponenten installiert sind.

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

    Suchen Sie den Wert PHASE Deployed in der Ausgabe HyperConverged. Überprüfen Sie in der Pod-Ausgabe, ob die Virtualisierungspods den Status Running oder Completed anzeigen und nicht in Pending, CrashLoopBackOff oder Error stecken.

  2. Vergewissern Sie sich, dass das VPC File CSI-Treiber-Add-on installiert ist.

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

    Suchen Sie in der Ausgabe nach dem Add-on vpc-file-csi-driver und überprüfen Sie, ob sein Status normal lautet oder ob der Status anzeigt, dass das Add-on bereit ist.

  3. Überprüfen Sie, ob eine VPC File Storage Klasse verfügbar ist.

    oc get storageclass | grep vpc-file
    

    Suchen Sie nach Speicherklassen wie ibmc-vpc-file-1000-iops oder ibmc-vpc-file-6000-iops. Notieren Sie sich den Namen der Speicherklasse, den Sie in den späteren Schritten verwenden möchten.

  4. Vergewissern Sie sich, dass das Speicherprofil für Ihre ausgewählte VPC File Storage Klasse mit ReadWriteMany Zugriffsmodus und Filesystem Volume-Modus konfiguriert ist.

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

    Suchen Sie in der Ausgabe nach claimPropertySets unter spec. Stellen Sie sicher, dass accessModes ReadWriteMany enthält und dass volumeMode auf Filesystem gesetzt ist.

    claimPropertySets:
    - accessModes:
      - ReadWriteMany
      volumeMode: Filesystem
    
  5. Überprüfen Sie, ob die ausgewählte Speicherklasse einen Anspruch auf ein persistentes Volume bereitstellen kann.

    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. Vergewissern Sie sich, dass der Anspruch auf einen dauerhaften Testdatenträger gebunden ist.

    oc get pvc vpc-file-test-pvc
    

    Suchen Sie in der Ausgabe nach der Spalte STATUS und überprüfen Sie, ob der Anspruch auf ein persistentes Volume Bound anzeigt. Wenn der Anspruch in Pending verbleibt, ist die Speicherklasse oder das Speicherprofil nicht korrekt konfiguriert.

  7. Überprüfen Sie die Details des Anspruchs auf ein persistentes Volumen, wenn der Anspruch nicht bindend ist.

    oc describe pvc vpc-file-test-pvc
    
  8. Löschen Sie den Anspruch auf das persistente Test-Volume.

    oc delete pvc vpc-file-test-pvc
    

Erstellen einer virtuellen Maschine über die Webkonsole

Verwenden Sie die OpenShift Web-Konsole, um eine virtuelle Maschine zu erstellen, die ihre Festplatte auf VPC File Storage speichert.

  1. Melden Sie sich bei der Webkonsole OpenShift für Ihren Cluster an.
  2. Klicken Sie im Navigationsmenü auf Virtualisierung > VirtualMachines.
  3. Klicken Sie auf Erstellen und wählen Sie eine Vorlage oder wählen Sie Aus YAML, wenn Sie die virtuelle Maschine manuell definieren möchten.
  4. Geben Sie einen Namen für die virtuelle Maschine ein.
  5. Wählen Sie das Projekt aus, in dem Sie die virtuelle Maschine erstellen möchten.
  6. Wählen Sie im Abschnitt Speicher eine VPC File Storage Klasse wie ibmc-vpc-file-1000-iops oder ibmc-vpc-file-6000-iops.
  7. Legen Sie die Festplattengröße entsprechend den Anforderungen Ihrer Arbeitslast fest.
  8. Überprüfen Sie die CPU- und Speichereinstellungen und aktualisieren Sie sie bei Bedarf.
  9. Klicken Sie auf Erstellen VirtualMachine.
  10. Überprüfen Sie auf der Detailseite der virtuellen Maschine die Registerkarten Festplatten, Netzwerkschnittstellen und Konfiguration, um sicherzustellen, dass die virtuelle Maschine mit den erwarteten Einstellungen erstellt wurde.

Nachdem die virtuelle Maschine erstellt wurde, erstellt die Konsole die zugehörigen Ressourcen für den Anspruch auf ein persistentes Volume und das Datenvolumen.

Erstellen einer virtuellen Maschine über die Befehlszeile

Verwenden Sie die CLI, wenn Sie eine virtuelle Maschine aus einem wiederverwendbaren Manifest erstellen möchten.

  1. Erstellen Sie einen Namespace für die Workloads Ihrer virtuellen Maschinen, wenn Sie noch keinen haben.

    oc create namespace vm-project
    
  2. Erstellen Sie ein Manifest für eine virtuelle Maschine, das auf eine VPC File Storage Klasse verweist.

    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. Überprüfen Sie, ob die Ressourcen der virtuellen Maschine und des Datenvolumens erstellt wurden.

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

    Vergewissern Sie sich in der Ausgabe, dass die virtuelle Maschine rhel9-vm aufgelistet ist, dass das Data-Volume rhel9-vm-rootdisk existiert und dass der Anspruch auf das persistente Volume rhel9-vm-rootdisk erstellt wurde. Wenn der persistente Volume-Anspruch noch nicht Bound ist, warten Sie, bis die Bereitstellung abgeschlossen ist, bevor Sie fortfahren.

  4. Überprüfen Sie die Data-Volume-Details, wenn das Data-Volume nicht bereit ist.

    oc describe dv rhel9-vm-rootdisk -n vm-project
    oc describe pvc rhel9-vm-rootdisk -n vm-project
    
  5. Starten Sie die virtuelle Maschine.

    virtctl start rhel9-vm -n vm-project
    
  6. Überprüfen Sie, ob die Instanz der virtuellen Maschine ausgeführt wird.

    oc get vmi -n vm-project
    

    Suchen Sie in der Ausgabe nach dem Namen der Instanz der virtuellen Maschine und überprüfen Sie, ob ihre Phase Running lautet. Wenn keine Instanz der virtuellen Maschine aufgelistet ist, überprüfen Sie den Status der virtuellen Maschine.

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

Validierung der virtuellen Maschine

Nachdem Sie die virtuelle Maschine erstellt haben, überprüfen Sie, ob die Speicher- und Rechenressourcen wie erwartet funktionieren.

  1. Vergewissern Sie sich, dass der Anspruch auf den dauerhaften Datenträger gebunden ist.

    oc get pvc -n vm-project
    

    Suchen Sie in der Ausgabe nach dem persistenten Volume-Anspruch rhel9-vm-rootdisk und überprüfen Sie, ob in der Spalte STATUS Bound steht.

  2. Bestätigen Sie, dass der Import oder die Bereitstellung des Datenvolumens erfolgreich abgeschlossen wurde.

    oc get dv -n vm-project
    

    Überprüfen Sie in der Ausgabe, ob das Datenvolumen eine erfolgreiche Phase wie Succeeded oder Ready anzeigt, je nach Ihrer Umgebung. Wenn das Data-Volume nicht bereit ist, überprüfen Sie die Ereignisse für den Anspruch auf das Data-Volume und das persistente Volume.

    oc describe dv rhel9-vm-rootdisk -n vm-project
    oc describe pvc rhel9-vm-rootdisk -n vm-project
    
  3. Stellen Sie sicher, dass die Instanz der virtuellen Maschine ausgeführt wird.

    oc get vmi -n vm-project
    
  4. Überprüfen Sie die Details der Instanz der virtuellen Maschine, um die Knotenplatzierung, die Schnittstellen und die angeschlossenen Volumes zu bestätigen.

    oc describe vmi rhel9-vm -n vm-project
    
  5. Wenn Sie Cloud-init-Anmeldeinformationen konfiguriert haben, stellen Sie eine Verbindung zur Konsole der virtuellen Maschine her.

    virtctl console rhel9-vm -n vm-project
    
  6. Überprüfen Sie die Details der virtuellen Maschine, wenn die Instanz nicht startet.

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

Verstehen von Grenzen und Überlegungen

Beachten Sie die folgenden Überlegungen, wenn Sie VPC File Storage für virtuelle Maschinen verwenden:

Leistung des VPC- File Storage s
VPC File Storage ist eine netzwerkgebundene Speicheroption. Sie eignet sich im Allgemeinen am besten für Entwicklung, Tests und Workloads mit geringerem E/A-Aufkommen.
Schnappschüsse und Klonen
Die Unterstützung von Snapshots und Klonen unterscheidet sich von OpenShift Data Foundation. Überprüfen Sie Ihre Speicheranforderungen, bevor Sie eine VPC File Storage für Produktions-Workloads standardisieren.
Livemigration
Die Live-Migration wird unterstützt, wenn das Speicherprofil korrekt konfiguriert ist und die Arbeitslast die Anforderungen von OpenShift Virtualization erfüllt.
Konfiguration des Speicherprofils
Sie müssen das Speicherprofil für den VPC File CSI Provisioner konfigurieren, damit CDI die Speicherklasse korrekt verwenden kann.

Fehlerbehebung

Wenn die virtuelle Maschine nicht startet oder die Festplatte nicht korrekt bereitgestellt wird, lesen Sie die folgenden Themen:

Nächste Schritte

Nachdem Sie eine virtuelle Maschine mit VPC File Storage erstellt haben:

  1. Verwalten von virtuellen Maschinen in Virtualisierungsdienst-Clustern
  2. Konfigurieren Sie virtuelle Netzwerkschnittstellen
  3. Lesen Sie die Dokumentation Red Hat OpenShift Virtualisierung