Configura VMware Cloud Director

VMware Cloud Director ayuda a crear centros de datos virtuales desde una infraestructura común o distribuida entre sitios y geografías, como los que proporciona Google Cloud VMware Engine. Con VMware Cloud Director, puedes administrar la infraestructura en servidores alojados en Google Cloud para alojar y entregar varios clientes desde una sola interfaz.

La integración de VMware para Cloud Director con Google Cloud VMware Engine usa una sola interfaz a fin de proporcionarte la siguiente funcionalidad:

  • Centros de datos virtuales Elastic: Crea centros de datos virtuales que permiten a los usuarios aprovisionar recursos de red, almacenamiento y procesamiento a través de un catálogo de plantillas de vApp y archivos multimedia.
  • Administración de nube híbrida: Administra y supervisa los recursos del centro de datos en entornos locales y de VMware Engine.
  • Multiusuario: Administra todas las instancias desde una interfaz unificada que proporciona instancias múltiples con aislamiento completo.
  • Asignación de infraestructura: Divide la infraestructura de VMware Engine en grupos de recursos más pequeños, que se pueden proporcionar a los usuarios y expandir según sea necesario.
  • Migración de cargas de trabajo entre centros de datos virtuales: crea copias de seguridad, despeja y replica las cargas de trabajo que varían desde el nivel de una VM hasta un centro de datos completo.

Después de implementar VMware Cloud Director en Google Cloud, puedes proporcionar tus recursos de nube privada de VMware Engine a VMware Cloud Director. Para ese proceso, sigue la guía de VMware sobre cómo administrar los centros de datos virtuales de la organización.

Antes de comenzar

La configuración de VMware Cloud Director para VMware Engine requiere que prepares una red de VPC, crees recursos de Google Cloud y configures VMware Engine. Este proceso implica los siguientes pasos:

  1. Crear red de VPC
  2. Agrega reglas de firewall de red de VPC
  3. Crea una instancia de Filestore
  4. Implementa una instancia administrada de PostgreSQL
  5. Prepara celdas de VMware Cloud Director
  6. Configura VMware Engine
  7. Crea dos nombres de dominio completamente calificados (FQDN)

Crear red de VPC

Prepara una red de VPC en Google Cloud para usarla más adelante cuando instales celdas de Cloudware de Cloud Director.

Para ello, crea una red de VPC que abarque varias zonas. Si ya usas una red de VPC con VMware Engine, puedes usarla en lugar de crear una nueva.

Agrega reglas de firewall de red de VPC

Crea las siguientes reglas de firewall de red de VPC para tu red de VPC:

  • allow-inter-vcd-cell-communication: establece esta regla para permitir que las celdas de VMware Cloud Director se comuniquen entre sí en todos los puertos:
    1. Configura Destinos como Todas las instancias de la red.
    2. Configura el Filtro fuente como Etiquetas de origen.
    3. Crea una nueva etiqueta de origen vcd para usarla con las celdas de VMware Cloud Director.
    4. En Protocolos y puertos, selecciona Permitir todo.
  • allow-443-8443: Configura esta regla para permitir el acceso entrante a los puertos TCP 443 y 8443:
    1. Configura Destinos como Todas las instancias de la red.
    2. Establece Filtro de fuente en Rangos de IP.
    3. En el campo Rangos de IP de origen, proporciona el rango 0.0.0.0/0 o agrega rangos para restringir el acceso a las celdas de VMware Cloud Director.
    4. Configura Protocolos y puertos como Protocolos y puertos especificados.
    5. Selecciona la casilla de verificación tcp y, luego, ingresa 443,8443 en el campo correspondiente.
  • allow-ssh: establece esta regla para permitir el acceso SSH a las celdas de VMware Cloud Director:
    1. Configura Destinos como Todas las instancias de la red.
    2. Establece Filtro de fuente en Rangos de IP.
    3. En el campo Rangos de IP de origen, proporciona el rango 0.0.0.0/0 o agrega rangos para restringir el acceso SSH a las celdas de VMware Cloud Director.
    4. Configura Protocolos y puertos como Protocolos y puertos especificados.
    5. Selecciona la casilla de verificación tcp y, luego, ingresa 22 en el campo correspondiente.

Para obtener un acceso más detallado a la red, puedes hacer referencia a los requisitos de seguridad de la red de VMware Cloud Director.

Crea una instancia de Filestore

Prepara una instancia de Filestore en Google Cloud para el almacén de transferencia de VMware Cloud Director. Para hacerlo, crea una instancia de Filestore y selecciona tu red de VPC como la red autorizada cuando creas la instancia.

Implementa una instancia administrada de PostgreSQL

VMware Cloud Director requiere una base de datos externa de PostgreSQL que puedes configurar con Cloud SQL. A fin de implementar una instancia administrada de PostgreSQL para VMware Cloud Director, haz lo siguiente:

  1. Comienza los pasos para crear una instancia de PostgreSQL.
  2. En Versión de la base de datos, selecciona PostgreSQL 10.
  3. En Conectividad, selecciona IP privada.
  4. Para los campos de tipo de máquina y almacenamiento, recomendamos una máquina con 4 CPU virtuales y de 15 a 16 GB de memoria. Según tu caso de uso y el uso de VMware Cloud Director, es posible que necesites una instancia de base de datos más grande.
  5. Autoriza la instancia de base de datos con tu red de VPC.
  6. Crea una base de datos para VMware Cloud Director.
  7. Crea usuarios de Google Cloud para acceder a la base de datos.
  8. Realiza la configuración de base de datos adicional necesaria para VMware Cloud Director.

Prepara celdas de VMware Cloud Director

Las celdas de VMware Cloud Director se ejecutan en instancias de Compute Engine. VMware recomienda que esté disponible en todo momento una celda de VMware Cloud Director. A fin de alinearse con esta recomendación, puedes implementar un mínimo de dos celdas de VMware Cloud Director para cada sitio.

Como práctica recomendada, implementa una cantidad de celdas de VMware Cloud Director igual a una y más la cantidad de nubes privadas que planeas conectar a VMware Cloud Director.

Crea una máquina virtual (VM) para cada celda de VMware Cloud Director:

  • Sigue los pasos de la Guía de inicio rápido sobre cómo usar una VM de Linux para crear tu VM. Para todos los comandos que se usan en este documento, se supone que tu VM usa Red Hat Enterprise Linux (RHEL).

  • Adjunta cada VM a tu red de VPC mediante la etiqueta de origen vcd que creaste en la sección Agrega reglas de firewall de red de VPC.

  • Cuando seleccionas un tipo de máquina, puedes seleccionar una máquina con 2 CPU virtuales y 8 GB de RAM. Si esperas cargas altas, usa 4 CPU virtuales y 16 GB de memoria.

Configura VMware Engine

También debes hacer lo siguiente para VMware Engine, si aún no lo hiciste:

  1. Configura el acceso privado a servicios para establecer una conexión de intercambio de tráfico entre redes de VPC entre el proyecto de Google Cloud en el que se implementan las celdas de VMware Cloud Director y VMware Engine.
  2. Crea una nube privada en VMware Engine.
  3. Conecta la red local a la nube privada de VMware Engine. Este paso es necesario para administrar los recursos locales mediante VMware Cloud Director implementado en Google Cloud.

Crea dos nombres de dominio completamente calificados (FQDN)

A fin de prepararse para crear certificados SSL, necesitas dos FQDN. Uno se usa para la interfaz de usuario y el otro para el proxy de la consola. Usa estos FQDN cuando crees los certificados y configures las direcciones públicas.

Instalación y configuración

El proceso de instalación y configuración de VMware Cloud Director requiere que hagas lo siguiente:

  1. Instala paquetes en cada VM
  2. Instala VMware Cloud Director en una VM
  3. Instala VMware Cloud Director en otras VM
  4. Crea grupos de instancias de Compute Engine
  5. Implementa balanceadores de cargas

Instala paquetes en cada VM

Cada una de tus VM de Compute Engine corresponde a una celda de VMware Cloud Director. Prepara tus celdas de VMware Cloud Director mediante la instalación de paquetes de requisitos previos en cada VM:

  1. Descarga el objeto binario de VMware Cloud Director que deseas implementar.
  2. Sube el binario de VMware Cloud Director a un depósito de Cloud Storage para que se pueda descargar en tus VM de Compute Engine.
  3. Crea un certificado SSL y prepara el almacén de claves de VMware Cloud Director para la instalación.
    • Si ya tienes un archivo de almacén de claves de Java, colócalo en tu bucket de Cloud Storage para que pueda descargarse en tus VM de Compute Engine.
    • Si necesitas crear un almacén de claves, consulta la guía de VMware sobre la creación de certificados SSL. Puedes crear el almacén de claves después de realizar la instalación binaria en la primera celda de VMware Cloud Director.
  4. Instala los paquetes de requisitos previos en cada VM de Compute Engine:

    yum install bind-utils libcurl-devel libxml2-devel make openssl-devel git \
        alsa-lib libICE libSM libX11 libXau libXdmcp libXext libXi libXt libXtst \
        pciutils redhat-lsb wget -y
    
  5. Agrega los servidores de nombres al archivo /etc/resolv.conf en todas las VM para que puedan resolver los FQDN de host de ESXI.

  6. Instala el paquete de utilidades de NFS para activar el almacén de transferencias en todas las VM:

    yum install nfs-utils -y
    
    systemctl enable rpcbind nfs-server nfs-lock nfs-idmap
    
    systemctl start rpcbind nfs-server nfs-lock nfs-idmap
    

Instala VMware Cloud Director en una VM

Después de instalar los paquetes anteriores en todas tus VM, instala y configura VMware Cloud Director en una VM:

  1. Usa ssh para conectarte a una de tus VM de Compute Engine.
  2. Descarga el objeto binario de Cloud Director de VMware en la VM:

    gsutil cp gs://STORAGE_BUCKET/ \
       vmware-vcloud-director-distribution-10.1.0-15967253.bin /tmp/
    

    Reemplaza STORAGE_BUCKET por la ruta de acceso a tu bucket de Cloud Storage.

  3. Haz un objeto binario ejecutable:

    chmod +x vmware-vcloud-director-distribution-10.1.0-15967253.bin
    
  4. Instala el objeto binario en la VM:

    /tmp/vmware-vcloud-director-distribution-10.1.0-15967253.bin
    
  5. Descarga el archivo del almacén de claves de Java en la VM:

    gsutil cp gs://STORAGE_BUCKET/certificates.ks /tmp/certificates.ks
    

    Reemplaza STORAGE_BUCKET por la ruta de acceso a tu bucket de Cloud Storage.

  6. Activa el almacén de transferencia en la VM:

    echo "FILESTORE_INSTANCE_IP:/volume_name \
       /opt/vmware/vcloud-director/data/transfer nfs defaults,_netdev 0 0" >> \
       /etc/fstab
    
    mount /opt/vmware/vcloud-director/data/transfer
    
    chown -R vcloud:vcloud /opt/vmware/vcloud-director/data/transfer
    

    Reemplaza FILESTORE_INSTANCE_IP por la IP de la instancia de Filestore.

  7. Realiza la configuración inicial de las celdas de VMware Cloud Director con una configuración sin supervisión:

    /opt/vmware/vcloud-director/bin/configure -ip INSTANCE_IP \
       --primary-port-http 80 --primary-port-https 443 -cons INSTANCE_IP \
       --console-proxy-port-https 8443 -dbhost DB_ENDPOINT -dbport 5432 \
       -dbtype postgres -dbname DB_NAME -dbuser DB_MASTER_USER \
       -dbpassword DB_MASTER_USER_PASSWORD --keystore /tmp/KEYSTORE_FILE \
       -w KEYSTORE_PASSWORD --enable-ceip true -unattended
    

    Reemplaza lo siguiente:

    • INSTANCE_IP: Dirección IPv4, con número de puerto opcional
    • DB_ENDPOINT: dirección IP o nombre de dominio completamente calificado del host de la base de datos vCloud Director
    • DB_NAME: El nombre del servicio de la base de datos.
    • DB_MASTER_USER: El nombre de usuario del usuario de la base de datos
    • DB_MASTER_USER_PASSWORD: Es la contraseña del usuario de la base de datos, que puede ser nula
    • KEYSTORE_FILE: Almacén de claves Java que contiene tus certificados SSL y claves privadas
    • KEYSTORE_PASSWORD: Contraseña de almacén de claves de certificado SSL
  8. Ajusta el tamaño del montón de Java para ayudar con el rendimiento:

    1. Establece el valor de XMS de Java en al menos 2 GB:

      sed -i "s/Xms1024M/Xms2048M/g" \
          /opt/vmware/vcloud-director/bin/vmware-vcd-cell-common
      
    2. Establece el valor máximo en el valor de memoria de VM menos 2 GB:

      sed -i "s/Xmx4096M/Xmx6144M/g" \
          /opt/vmware/vcloud-director/bin/vmware-vcd-cell-common
      
  9. Habilita y, luego, inicia el servicio de VMware Cloud Director:

    chkconfig vmware-vcd on
    
    service vmware-vcd start
    
  10. Verifica si el servicio se inició correctamente:

    tail -f /opt/vmware/vcloud-director/logs/cell.log
    
  11. Copia los archivos responses.properties y del almacén de claves de Java en el almacén de transferencias para usarlos en la instalación de tus otras celdas de VMware Cloud Director:

    cp /opt/vmware/vcloud-director/etc/responses.properties \
        /opt/vmware/vcloud-director/data/transfer/responses.properties
    
    chmod 644 /opt/vmware/vcloud-director/data/transfer/responses.properties
    
    cp /tmp/certificates.ks \
        /opt/vmware/vcloud-director/data/transfer/certificates.ks
    
    chmod 644 /opt/vmware/vcloud-director/data/transfer/certificates.ks
    
  12. Usa el comando cell-management-tool system-setup para configurar la instalación de VMware Cloud Director:

    /opt/vmware/vcloud-director/bin/cell-management-tool system-setup \
       --email EMAIL --full-name FULL_NAME \
       --installation-id INSTALLATION_ID --password PASSWORD \
       --system-name SYSTEM_NAME --serial-number SERIAL_NUMBER \
       --user USER --unattended
    

    Reemplaza lo siguiente:

    • EMAIL: La dirección de correo electrónico del administrador del sistema que estás creando
    • FULL_NAME: El nombre completo del administrador del sistema que crearás
    • INSTALLATION_ID: Un número entero en el rango del 1 al 63
    • PASSWORD: La contraseña del administrador del sistema que creas
    • SYSTEM_NAME: el nombre que se usará para la carpeta del servidor de vCenter para VMware Cloud Director
    • SERIAL_NUMBER: El número de serie (clave de licencia) de esta instalación
    • USER: El nombre de usuario del administrador del sistema que estás creando

Instala VMware Cloud Director en otras VM

Para instalar y configurar VMware Cloud Director en las celdas restantes, repite los pasos siguientes en cada celda:

  1. Usa ssh para conectarte a la VM de Compute Engine.
  2. Descarga el objeto binario en la VM:

    gsutil cp gs://STORAGE_BUCKET/ \
       vmware-vcloud-director-distribution-10.1.0-15967253.bin /tmp/
    

    Reemplaza STORAGE_BUCKET por la ruta de acceso a tu bucket de Cloud Storage.

  3. Haz que el objeto binario sea ejecutable:

    chmod +x vmware-vcloud-director-distribution-10.1.0-15967253.bin
    
  4. Instala el objeto binario en la VM:

    /tmp/vmware-vcloud-director-distribution-10.1.0-15967253.bin
    
  5. Descarga el archivo del almacén de claves de Java en la VM:

    gsutil cp gs://vcd-builds/certificates.ks /tmp/certificates.ks
    
  6. Activa el almacén de transferencia en esta VM:

    echo "FILESTORE_INSTANCE_IP:/volume_name \
       /opt/vmware/vcloud-director/data/transfer nfs defaults,_netdev 0 0" >> \
       /etc/fstab
    
    mount /opt/vmware/vcloud-director/data/transfer
    
    chown -R vcloud:vcloud /opt/vmware/vcloud-director/data/transfer
    

    Reemplaza FILESTORE_INSTANCE_IP por la IP de la instancia de Filestore.

  7. Realiza la configuración inicial de las celdas de VMware Cloud Director con una configuración sin supervisión:

    /opt/vmware/vcloud-director/bin/configure \
       -r /opt/vmware/vcloud-director/data/transfer/responses.properties \
       -ip INSTANCE_IP --primary-port-http 80 --primary-port-https 443 \
       -cons INSTANCE_IP --console-proxy-port-https 8443 \
       --keystore /opt/vmware/vcloud-director/data/transfer/KEYSTORE_FILE \
       -w KEYSTORE_PASSWORD --enable-ceip true -unattended
    

    Reemplaza lo siguiente:

    • INSTANCE_IP: Dirección IPv4, con número de puerto opcional
    • KEYSTORE_FILE: El archivo de almacén de claves Java que contiene tus certificados SSL y claves privadas
    • KEYSTORE_PASSWORD: Contraseña de almacén de claves de certificado SSL
  8. Ajusta el tamaño del montón de Java para ayudar con el rendimiento:

    1. Establece el valor de XMS de Java en al menos 2 GB:

      sed -i "s/Xms1024M/Xms2048M/g" \
          /opt/vmware/vcloud-director/bin/vmware-vcd-cell-common
      
    2. Establece el valor máximo en el valor de memoria de VM menos 2 GB:

      sed -i "s/Xmx4096M/Xmx6144M/g" \
          /opt/vmware/vcloud-director/bin/vmware-vcd-cell-common
      
  9. Habilita y, luego, inicia el servicio de VMware Cloud Director:

    chkconfig vmware-vcd on
    
    service vmware-vcd start
    
  10. Verifica si el servicio se inició correctamente:

    tail -f /opt/vmware/vcloud-director/logs/cell.log
    

Crea grupos de instancias de Compute Engine

Los grupos de instancias de Compute Engine reenvían el tráfico de los balanceadores de cargas orientados a Internet a las celdas de VMware Cloud Director. Para configurar grupos de instancias, sigue estos pasos:

  1. Crea un grupo de instancias no administrado para cada zona en la que tengas implementadas las celdas de VMware Cloud Director.
  2. Para cada grupo de instancias, agrega la siguiente asignación de puertos:
    • Para las llamadas a la API o la interfaz, haz lo siguiente:
      • Nombre del puerto: https
      • Números de puerto: 443
    • Para el acceso mediante el proxy de la consola, haz lo siguiente:
      • Nombre del puerto: tcp
      • Números de puerto: 8443

A continuación, se muestra un ejemplo de una configuración de grupo de instancias:

La configuración del grupo de instancias usa el protocolo HTTPS en el puerto 443 y el protocolo TCP del puerto 8443.

Implementa balanceadores de cargas

Debes implementar dos balanceadores de cargas en Google Cloud para permitir el acceso desde Internet a la interfaz de Cloud Director o al proxy de consola. Este proceso implica los siguientes pasos:

  1. Configura una verificación de estado para que la usen sus balanceadores de cargas
  2. Crea un balanceador de cargas de capa 7 para el acceso a la interfaz o a la API
  3. Crea un balanceador de cargas de capa 4 para el acceso al proxy de la consola
  4. Configura direcciones públicas para VMware Cloud Director

Configura una verificación de estado para tus balanceadores de cargas

A fin de configurar una verificación de estado para los balanceadores de cargas, haz lo siguiente:

  1. Sigue el proceso que se encuentra en Crea verificaciones de estado para comenzar a crear una.
  2. Configura el Protocolo en HTTPS.
  3. En el campo Puerto, ingresa 443.
  4. En el campo Solicitar ruta de acceso, ingresa /api/server_status.

A continuación, se muestra un ejemplo de una configuración de verificación de estado:

La configuración de la verificación de estado usa el protocolo HTTPS en el puerto 443.

Crea un balanceador de cargas de capa 7 para el acceso a la interfaz o a la API

Si deseas crear un balanceador de cargas de L7 para el acceso a la interfaz o a la API, haz lo siguiente:

  1. Sigue los pasos del artículo sobre la configuración del balanceo de cargas de HTTP(S) interno para comenzar a configurar el balanceo de cargas de HTTPS interno.
  2. Configura el Protocolo en HTTPS.
  3. En el campo Puerto con nombre, ingresa https. Este valor coincide con el valor configurado en tus grupos de instancias.
  4. En la sección Backends, agrega todos los grupos de instancias que creaste en Crea grupos de instancias de Compute Engine. Usa el puerto 443 para cada entrada a fin de que coincida con el puerto creado para HTTPS.
  5. Establece la Verificación de estado en la que configuraste en Configura una verificación de estado para tus balanceadores de cargas.
  6. En Reglas de host y ruta de acceso, usa los valores predeterminados.
  7. Configura el frontend para el balanceador de cargas:
    1. Configura el Protocolo en HTTPS.
    2. Reserva una dirección IP pública.
    3. Agrega un certificado para el balanceador de cargas.

Crea un balanceador de cargas de capa 4 para el acceso al proxy de la consola

Si deseas crear un balanceador de cargas de capa 4 para el acceso al proxy de la consola, haz lo siguiente:

  1. Sigue los pasos del artículo sobre cómo configurar el balanceo de cargas del proxy TCP para comenzar a configurar el balanceador de cargas.
  2. Configura Varias regiones o una sola región como Varias regiones.
  3. Configura el Tipo de backend como grupos de instancias.
  4. Configura el campo Protocolo como TCP.
  5. En el campo Puerto con nombre, ingresa tcp. Este valor coincide con el valor configurado en tus grupos de instancias.
  6. En la sección Backends, agrega todos los grupos de instancias que creaste en Crea grupos de instancias de Compute Engine. Usa el puerto 8443 para cada entrada a fin de que coincida con el puerto creado para TCP.
  7. Configura el frontend para el balanceador de cargas:
    1. Configura el campo Protocolo como TCP.
    2. Configura el Puerto como 443.
    3. Reserva una dirección IP pública.

Configura direcciones públicas para VMware Cloud Director

Después de crear los balanceadores de cargas, configura las direcciones públicas para VMware Cloud Director:

  1. Accede a VMware Cloud Director con la siguiente URL:

    https://L7_FQDN/provider

    Reemplaza L7_FQDN por el FQDN que corresponda al certificado que agregaste para el balanceador de cargas L7.

  2. Usa las credenciales de administrador creadas cuando configuraste tu primera celda de VMware Cloud Director en una VM.

  3. Sigue los pasos que proporciona VMware para configurar direcciones públicas.

¿Qué sigue?

Después de implementar VMware Cloud Director en Google Cloud, puedes proporcionar tus recursos de nube privada de VMware Engine a VMware Cloud Director. Para ese proceso, sigue la guía de VMware sobre cómo administrar los centros de datos virtuales de la organización.