IBM Cloud Docs
Configuración de la virtualización en una ubicación de Satellite

Configuración de la virtualización en una ubicación de Satellite

Puede configurar Bare Metal Servers para utilizar la virtualización Red Hat OpenShift en la ubicación Satellite. Mediante la virtualización, puede suministrar Windows u otras máquinas virtuales en el espacio Bare Metal Servers en un Red Hat OpenShift gestionado.

Sistemas operativos de host soportados
Red Hat CoreOS (RHCOS)

Requisitos previos

  • Cree una ubicación habilitada para RHCOS. Para verificar si su ubicación está habilitada para RHCOS, consulte ¿Mi ubicación está habilitada para Red Hat CoreOS?. Si la ubicación no está habilitada, cree una nueva con RHCOS.
  • Adjunte hosts a su ubicación y configure su plano de control de ubicación.
  • Busque y anote el nombre de host nativo.
  • Busque la información de red del servidor nativo. Anote la información de CIDR y pasarela para las interfaces públicas y privadas del sistema.
  • Si desea utilizar IBM Cloud Object Storage para almacenar el archivo de encendido, cree o identifique un grupo.
  • Cree o identifique un clúster dentro de la ubicación Satellite que ejecuta un sistema operativo soportado; por ejemplo, esta guía de aprendizaje utiliza un clúster Red Hat OpenShift que ejecuta 4.11.
  • Si desea utilizar OpenShift Data Foundation como solución de almacenamiento, añada 2 discos de almacenamiento a cada uno de los Bare Metal Servers cuando los suministre.

Requisitos de Bare Metal Server para Satellite

Para configurar la virtualización, Bare Metal Server debe cumplir los requisitos siguientes.

  • Debe dar soporte a la tecnología de virtualización.
    • Para las CPU de Intel, el soporte para la virtualización se conoce como Intel VT o VT-x.
    • Para las CPU de AMD, el soporte para la virtualización se conoce como AMD Virtualization o AMD-V.
  • Debe tener un mínimo de 8 núcleos y 32 GB de RAM, además de los núcleos adicionales que necesite para la sobrecarga de vCPU. Para obtener más información, consulte sobrecarga de CPU en la documentación de Red Hat OpenShift.
  • Debe incluir suficiente memoria para sus necesidades de carga de trabajo. Por ejemplo: 360 MiB + (1.002 * requested memory) + 146 MiB + 8 MiB * (number of vCPUs) + 16 MiB * (number of graphics devices). Para obtener más información, consulte Sobrecarga de memoria en la documentación de Red Hat OpenShift.
  • No hay ningún sistema operativo instalado. El sistema operativo Red Hat CoreOS se instala más adelante en este proceso.
  • Si desea utilizar OpenShift Data Foundation como solución de almacenamiento, añada 2 discos de almacenamiento a cada uno de los Bare Metal Servers cuando los suministre.

Si los servidores no cumplen estos requisitos, puede crear un Bare Metal Server. Para obtener una lista de opciones nativas, consulte Opciones disponibles para un servidor nativo.

Conexión de servidores nativos a su ubicación

Siga estos pasos generales para conectar los servidores nativos a su ubicación. Estos pasos pueden variar, en función del hardware específico. Para obtener una guía de aprendizaje completa, consulte Conexión de hosts IBM Cloud Bare Metal Servers for Classic.

  1. Descargue una Red Hat CoreOS. Busque la versión ISO correspondiente que coincida con la versión de Red Hat OpenShift que desea utilizar. Por ejemplo, si desea utilizar la versión 4.11, descargue una versión de RHCOS para 4.11, como por ejemplo rhcos-4.11.9-x86_64-live.x86_64.iso.

  2. Inicie sesión en el servidor nativo.

  3. En los valores de BIOS, asegúrese de que la virtualización está habilitada.

  4. Configure el orden de arranque para arrancar el archivo ISO de Red Hat CoreOS que ha descargado en el paso 1.

  5. Arranque el sistema para instalar la ISO.

  6. Después de que Red Hat CoreOS se haya arrancado en la memoria, configure las conexiones de red para que pueda proporcionar el archivo de encendido de la ubicación y adjuntar el servidor a la ubicación.

  7. Descargue el script de encendido para su ubicación Satellite.

    ibmcloud sat host attach --location <location_name> --operating-system RHCOS
    
  8. Edite el archivo de encendido para incluir el nombre de host nativo y la información de red. Para obtener más información sobre cómo añadir estos detalles, consulte Configuración del archivo de encendido. Tenga en cuenta que debe editar el archivo de encendido para cada servidor nativo que desee adjuntar a su ubicación.

  9. Coloque el archivo de encendido en una ubicación a la que pueda acceder el servidor nativo. Por ejemplo, puede cargarlo en un grupo IBM Cloud Object Storage.

  10. Descargue el script de encendido en el servidor nativo.

curl <ignition_file_location > ignition.ign
  1. Ejecute el siguiente mandato install para iniciar el archivo de encendido. Sustituya <diskName> por la vía de acceso completa de la ubicación de disco donde desea instalar Red Hat CoreOS y sustituya <filename> por la vía de acceso del archivo de encendido.
sudo coreos-installer install <diskName> --ignition-file <filename>

El proceso de instalación puede tardar una o dos horas en completarse.

  1. Una vez finalizada la instalación, desconecte el archivo ISO de RHCOS y rearranque desde el disco duro.
  2. Compruebe la ubicación de Satellite para confirmar que el servidor nativo está conectado.
  3. Repita estos pasos para cada host bare metal que desee adjuntar a su ubicación.

Asignación de un host Bare Metal Server al clúster Red Hat OpenShift

Después de adjuntar Bare Metal Server a su ubicación, puede asignarlo a una agrupación de nodos trabajadores de clúster Red Hat OpenShift.

  1. Busque los hosts que desea añadir a la agrupación de nodos trabajadores del clúster Red Hat OpenShift.

    ibmcloud sat hosts --location <locationID>
    
  2. Asigne Bare Metal Server a la agrupación de nodos trabajadores del clúster Red Hat OpenShift.

    ibmcloud sat host assign --location <locationID> --cluster <clusterID> --host <hostID> --worker-pool default --zone <zone>
    

Repita estos pasos para asignar más Bare Metal Servers al clúster.

Ahora que Bare Metal Server está asignado a una agrupación de nodos trabajadores, puede configurar la virtualización de Red Hat OpenShift.

Configuración del almacenamiento para el clúster

En este escenario de ejemplo, despliega OpenShift Data Foundation en 3 nodos del clúster descubriendo automáticamente los discos de almacenamiento disponibles en Bare Metal Servers.

Después de adjuntar al menos 3 Bare Metal Servers a la ubicación y asignarlos como nodos trabajadores en el clúster, puede desplegar OpenShift Data Foundation utilizando la plantilla de almacenamiento odf-local Satellite.

  1. En la consola de ubicaciones deSatellite, pulse su ubicación y, a continuación, pulse Almacenamiento > Crear configuración de almacenamiento.
  2. Dale un nombre a tu configuración.
  3. Seleccione OpenShift Data Foundation for local devices y seleccione la versión 4.10.
  4. Para este ejemplo, deje el resto de los valores predeterminados y pulse Siguiente.
  5. Espere a que se despliegue ODF. A continuación, verifique que los pods están listos listando los pods en el espacio de nombres de openshift-storage.
    oc get pods -n openshift-storage
    
    Salida de ejemplo
    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
    ...
    ...
    

Instalación del operador de virtualización

Siga los pasos para Instalar Red Hat OpenShift Virtualization utilizando la CLI.

Configuración de la CLI virtctl

Siga los pasos para descargar e instalar la herramienta CLI de virtctl.

Creación de un volumen de datos para la máquina virtual

Después de desplegar OpenShift Data Foundation, puede utilizar la clase de almacenamiento sat-ocs-ceprbd-gold para crear un volumen de datos para utilizar el almacenamiento para la máquina virtual.

  1. Copie el siguiente volumen de datos de ejemplo y guárdelo en un archivo denominado 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. Cree el volumen de datos.
    oc apply -f datavol.yaml
    
  3. Verifique que se han creado el volumen de datos y la PVC correspondiente.
    oc get dv,pvc -n default
    
    Salida de ejemplo.
    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
    

Creación de una máquina virtual

  1. Copie la siguiente configuración de VirtualMachine y guárdela en un archivo denominado vm.yaml. Tenga en cuenta que también puede crear máquinas virtuales a través de la consola web de 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. Cree la máquina virtual en el clúster.

    oc apply -f vm.yaml
    
  3. Inicie la máquina virtual.

    virtctl start fedora-1 -n default
    
  4. Verifique que la máquina virtual se está ejecutando.

    oc get vm -n default
    

    Salida de ejemplo.

    NAME                                  AGE   STATUS    READY
    virtualmachine.kubevirt.io/fedora-1   16h   Running   True
    
  5. En la consola web de OpenShift, inicie sesión en la máquina virtual utilizando el nombre de usuario y la contraseña que ha especificado en la configuración de VirtualMachine. Por ejemplo, user: cloud-user y password: 'fedora-1-password'.

Enhorabuena. Acaba de desplegar una máquina virtual Fedora en su clúster Satellite.

Puede encontrar más información sobre qué hacer a continuación en OpenShift Virtualization Hands-on Lab.

Recursos adicionales