Configuration de la virtualisation sur un emplacement Satellite

Vous pouvez configurer votre Bare Metal Servers pour utiliser la virtualisation « Red Hat OpenShift » dans votre emplacement Satellite. Grâce à la virtualisation, vous pouvez déployer des machines virtuelles Windows ou d'autres types de machines virtuelles sur votre Bare Metal Servers au sein d'un espace géré Red Hat OpenShift.

Systèmes d'exploitation hôte pris en charge
Red Hat CoreOS (RHCOS)

Prérequis

  • Créez un emplacement compatible RHCOS. Pour vérifier si votre emplacement est compatible RHCOS, consultez Ma position est-elle activée pour Red Hat CoreOS?. Si votre emplacement n'est pas activé, créez-en un nouveau avec RHCOS.
  • Associez des hôtes à votre site et configurez le plan de contrôle de votre site.
  • Recherchez et enregistrez votre nom d'hôte bare metal.
  • Recherchez les informations réseau de votre serveur bare metal. Enregistrez les informations CIDR et de passerelle pour les interfaces publiques et privées de votre système.
  • Si vous souhaitez utiliser IBM Cloud Object Storage pour stocker votre fichier ignition, créez ou identifiez un compartiment.
  • Créez ou identifiez un cluster dans l'emplacement Satellite qui exécute un système d'exploitation pris en charge ; par exemple, ce tutoriel utilise un cluster Red Hat OpenShift qui exécute 4.11.
  • Si vous souhaitez utiliser OpenShift Data Foundation comme solution de stockage, ajoutez 2 disques de stockage à chacun de vos Bare Metal Servers lorsque vous les mettez à disposition.

Bare Metal Server exigences pour Satellite

Pour configurer la virtualisation, votre Bare Metal Server doit répondre aux exigences suivantes.

  • Doit prendre en charge la technologie de virtualisation.
    • Pour les unités centrales Intel, la prise en charge de la virtualisation est appelée Intel VT ou VT-x.
    • Pour les unités centrales AMD, la prise en charge de la virtualisation est appelée AMD Virtualization ou AMD-V.
  • Vous devez disposer d'un minimum de 8 coeurs et de 32 Go de mémoire RAM, ainsi que de tous les coeurs supplémentaires dont vous avez besoin pour votre surcharge vCPU. Pour plus d'informations, voir CPU surcharge dans la documentation Red Hat OpenShift.
  • Vous devez inclure suffisamment de mémoire pour vos besoins de charge de travail. Par exemple : 360 MiB + (1.002 * requested memory) + 146 MiB + 8 MiB * (number of vCPUs) + 16 MiB * (number of graphics devices). Pour plus d'informations, voir Mémoire système dans la documentation Red Hat OpenShift.
  • Aucun système d'exploitation n'est installé. Le système d'exploitation Red Hat CoreOS est installé ultérieurement dans ce processus.
  • Si vous souhaitez utiliser OpenShift Data Foundation comme solution de stockage, ajoutez 2 disques de stockage à chacun de vos Bare Metal Servers lorsque vous les mettez à disposition.

Si vos serveurs ne répondent pas à ces exigences, vous pouvez créer un Bare Metal Server. Pour obtenir la liste des options bare metal, voir Options disponibles pour un serveur bare metal.

Connexion de serveurs bare metal à votre emplacement

Suivez ces étapes générales pour connecter vos serveurs bare metal à votre emplacement. Ces étapes peuvent varier en fonction de votre matériel spécifique. Pour un tutoriel complet, voir Attaching IBM Cloud Bare Metal Servers for Classic hosts.

  1. Téléchargez une image Red Hat CoreOS ISO. Recherchez la version ISO correspondante qui correspond à la version Red Hat OpenShift que vous souhaitez utiliser. Par exemple, si vous souhaitez utiliser la version 4.11, téléchargez une version de RHCOS pour 4.11, telle que rhcos-4.11.9-x86_64-live.x86_64.iso.

  2. Connectez-vous à votre serveur bare metal.

  3. Dans les paramètres du BIOS, vérifiez que la virtualisation est activée.

  4. Configurez votre ordre d'amorçage pour démarrer le fichier ISO Red Hat CoreOS que vous avez téléchargé à l'étape 1.

  5. Initialisez votre système pour installer l'image ISO.

  6. Une fois que Red Hat CoreOS a été amorcé en mémoire, configurez les connexions réseau pour que vous puissiez fournir le fichier ignition d'emplacement et connecter le serveur à votre emplacement.

  7. Téléchargez le script d'initialisation correspondant à votre emplacement Satellite.

    ibmcloud sat host attach --location LOCATION_NAME --operating-system RHCOS
    
  8. Editez votre fichier ignition pour inclure le nom d'hôte bare metal et les informations réseau. Pour plus d'informations sur l'ajout de ces détails, voir Configuration de votre fichier ignition. Notez que vous devez éditer le fichier ignition pour chaque serveur bare metal que vous souhaitez associer à votre emplacement.

  9. Placez votre fichier ignition dans un emplacement que votre serveur bare metal peut atteindre. Par exemple, vous pouvez le télécharger dans un compartiment IBM Cloud Object Storage.

  10. Téléchargez le script ignition sur votre serveur bare metal.

    curl <ignition_file_location > ignition.ign
    
  11. Exécutez la commande install suivante pour démarrer le fichier ignition. Remplacez <diskName> par le chemin complet de l'emplacement du disque où vous souhaitez installer Red Hat CoreOS et remplacez <filename> par le chemin du fichier ignition.

    sudo coreos-installer install <diskName> --ignition-file <filename>
    

    Le processus d'installation peut prendre une heure ou deux.

  12. Une fois l'installation terminée, déconnectez votre fichier ISO RHCOS et réamorcez à partir de votre disque dur.

  13. Vérifiez votre emplacement Satellite pour vous assurer que votre serveur bare metal est connecté.

  14. Répétez ces étapes pour chaque hôte bare metal que vous souhaitez associer à votre site.

Affectation d'un hôte Bare Metal Server à votre cluster Red Hat OpenShift

Une fois que votre Bare Metal Server est connecté à votre emplacement, vous pouvez l'affecter à un pool de noeuds worker de cluster Red Hat OpenShift.

  1. Recherchez les hôtes à ajouter à votre pool de noeuds worker de cluster Red Hat OpenShift.

    ibmcloud sat hosts --location LOCATION_ID
    
  2. Affectez le Bare Metal Server au pool de noeuds worker de cluster Red Hat OpenShift.

    ibmcloud sat host assign --location LOCATION_ID --cluster CLUSTER_ID --host HOST_ID --worker-pool default --zone ZONE
    

Répétez ces étapes pour attribuer davantage d' Bare Metal Servers s à votre cluster.

Maintenant que votre Bare Metal Server est affecté à un pool de noeuds worker, vous pouvez configurer la virtualisation Red Hat OpenShift.

Configuration du stockage pour votre cluster

Dans cet exemple de scénario, vous déployez OpenShift Data Foundation sur 3 noeuds dans le cluster en reconnaissant automatiquement les disques de stockage disponibles sur votre Bare Metal Servers.

Après avoir connecté au moins 3 Bare Metal Servers à votre emplacement et les avoir affectés en tant que noeuds worker dans votre cluster, vous pouvez déployer OpenShift Data Foundation à l'aide du modèle de stockage odf-local Satellite.

  1. Dans la console des emplacementsSatellite, cliquez sur votre emplacement, puis sur Stockage > Créer une configuration de stockage.
  2. Donnez un nom à votre configuration.
  3. Sélectionnez OpenShift Data Foundation for local devices et sélectionnez la version 4.10.
  4. Pour cet exemple, laissez le reste des paramètres par défaut et cliquez sur Suivant.
  5. Attendez le déploiement d'ODF. Vérifiez ensuite que les pods sont prêts en répertoriant les pods dans l'espace de nom openshift-storage.
    oc get pods -n openshift-storage
    
    Exemple de sortie
    NAME                                                              READY   STATUS      RESTARTS   AGE
    ocs-metrics-exporter-5b85d48d66-lwzfn                             1/1     Running     0          2d1h
    ocs-operator-86498bf74c-qcgvh                                     1/1     Running     0          2d1h
    odf-console-68bcd54c7c-5fvkq                                      1/1     Running     0          2d1h
    rook-ceph-mgr-a-758845d77c-xjqkg                                  2/2     Running     0          2d1h
    rook-ceph-mon-a-85d65d9f66-crrhb                                  2/2     Running     0          2d1h
    rook-ceph-mon-b-74fd78856d-s2pdf                                  2/2     Running     0          2d1h
    rook-ceph-mon-c-76f9b8b5f9-gqcm4                                  2/2     Running     0          2d1h
    rook-ceph-operator-5d659cb494-ctkx6                               1/1     Running     0          2d1h
    rook-ceph-osd-0-846cf86f79-z97mc                                  2/2     Running     0          2d1h
    rook-ceph-osd-1-7f79ccf77d-8g4cn                                  2/2     Running     0          2d1h
    rook-ceph-osd-2-549cc486b4-7wf5k                                  2/2     Running     0          2d1h
    rook-ceph-osd-prepare-ocs-deviceset-0-data-0z6pn9-6fwqr           0/1     Completed   0          10d
    rook-ceph-osd-prepare-ocs-deviceset-1-data-0kkxrw-cppk9           0/1     Completed   0          10d
    rook-ceph-osd-prepare-ocs-deviceset-2-data-0pxktc-xm2rc           0/1     Completed   0          10d
    rook-ceph-rgw-ocs-storagecluster-cephobjectstore-a-54c58859nc8j   2/2     Running     0          2d1h
    ...
    ...
    

Installation de l'opérateur de virtualisation

Suivez les étapes d' installation de la virtualisation Red Hat OpenShift à l'aide de l'interface de ligne de commande.

Configuration de l'interface CLI virtctl

Suivez les étapes de téléchargement et d'installation de l'outil d'interface de ligne de commande virtctl.

Création d'un volume de données pour votre machine virtuelle

Après avoir déployé OpenShift Data Foundation, vous pouvez utiliser la classe de stockage sat-ocs-ceprbd-gold pour créer un volume de données afin d'utiliser le stockage pour votre machine virtuelle.

  1. Copiez l'exemple de volume de données suivant et sauvegardez-le dans un fichier appelé datavol.yaml.
    apiVersion: cdi.kubevirt.io/v1beta1
    kind: DataVolume
    metadata:
      name: fedora-1
      namespace: default
    spec:
      source:
        registry:
          pullMethod: node
          url: docker://quay.io/containerdisks/fedora@sha256:29b80ef738f9b09c19efc245aac3921deab9acd542c886cf5295c94ab847dfb5
      pvc:
        accessModes:
          - ReadWriteMany
        resources:
          requests:
            storage: 10Gi
        volumeMode: Block
        storageClassName: sat-ocs-cephrbd-gold
    
  2. Créez le volume de données.
    oc apply -f datavol.yaml
    
  3. Vérifiez que le volume de données et la réservation de volume persistant correspondante ont été créés.
    oc get dv,pvc -n default
    
    Exemple de sortie.
    NAME                                  PHASE       PROGRESS   RESTARTS   AGE
    datavolume.cdi.kubevirt.io/fedora-1   Succeeded   100.0%                16h
    NAME                             STATUS   VOLUME                                     CAPACITY   ACCESS MODES   STORAGECLASS           AGE
    persistentvolumeclaim/fedora-1   Bound    pvc-fd8b1a5b-cc32-42bd-95d0-4ccf2e40bca7   10Gi       RWX            sat-ocs-cephrbd-gold   16h
    

Création d'une machine virtuelle

  1. Copiez la configuration VirtualMachine suivante et sauvegardez-la dans un fichier appelé vm.yaml. Notez que vous pouvez également créer des machines virtuelles via la console Web OpenShift.

    apiVersion: kubevirt.io/v1
    kind: VirtualMachine
    metadata:
      labels:
        app: fedora-1
      name: fedora-1
      namespace: default
    spec:
      running: false
      template:
        metadata:
          labels:
            kubevirt.io/domain: fedora-1
        spec:
          domain:
            cpu:
              cores: 1
              sockets: 2
              threads: 1
            devices:
              disks:
              - disk:
                  bus: virtio
                name: rootdisk
              - disk:
                  bus: virtio
                name: cloudinitdisk
              interfaces:
              - masquerade: {}
                name: default
              rng: {}
            features:
              smm:
                enabled: true
            firmware:
              bootloader:
                efi: {}
            resources:
              requests:
                memory: 8Gi
          evictionStrategy: LiveMigrate
          networks:
          - name: default
            pod: {}
          volumes:
          - dataVolume:
              name: fedora-1
            name: rootdisk
          - cloudInitNoCloud:
              userData: |-
                #cloud-config
                user: cloud-user
                password: 'fedora-1-password'
                chpasswd: { expire: False }
            name: cloudinitdisk
    
  2. Créez la machine virtuelle dans votre cluster.

    oc apply -f vm.yaml
    
  3. Démarrez la machine virtuelle.

    virtctl start fedora-1 -n default
    
  4. Vérifiez que la machine virtuelle est en cours d'exécution.

    oc get vm -n default
    

    Exemple de sortie.

    NAME                                  AGE   STATUS    READY
    virtualmachine.kubevirt.io/fedora-1   16h   Running   True
    
  5. Depuis la console Web d' OpenShift, connectez-vous à votre VM à l'aide du nom d'utilisateur et du mot de passe que vous avez définis dans la configuration d' VirtualMachine. Par exemple, user: cloud-user et password: 'fedora-1-password'.

Félicitations ! Vous venez de déployer une machine virtuelle Fedora sur votre cluster Satellite.

Vous trouverez plus d'informations sur la prochaine étape dans le laboratoire de virtualisationOpenShift.

Ressources additionnelles