Cómo crear, implementar y lanzar máquinas virtuales en OpenStack


En esta guía aprenderemos cómo crear imágenes y lanzar una instancia de una imagen (máquina virtual) en OpenStack y cómo obtener control sobre una instancia a través de SSH.

  1. Install OpenStack in RHEL and CentOS 7
  2. Configure OpenStack Networking Service

Paso 1: Asignar IP flotante a OpenStack

1. Antes de implementar una imagen de OpenStack , primero debe asegurarse de que todas las piezas estén en su lugar y comenzaremos por asignar IP flotante.

La IP flotante permite el acceso externo desde redes externas o Internet a una máquina virtual Openstack. Para crear direcciones IP flotantes para su proyecto, inicie sesión con sus usuarios credenciales y vaya a Proyecto -> Calcular -> Acceso y Seguridad -> IP flotantes y haga clic en Asignar IP a The Project.

Elija un grupo externo y pulse el botón Asignar IP y la dirección IP debe aparecer en el panel. Es una buena idea asignar una IP flotante para cada instancia que ejecute.

Paso 2: Crea una imagen de OpenStack

2. Las imágenes de OpenStack son máquinas virtuales ya creadas por terceros. Puede crear sus propias imágenes personalizadas en su máquina instalando un sistema operativo Linux en una máquina virtual usando una herramienta de virtualización, como KVM, VirtualBox, VMware o Hyper-V.

Una vez que haya instalado el sistema operativo, simplemente convierta el archivo en crudo y cárguelo en su infraestructura de nube OpenStack.

Para implementar imágenes oficiales proporcionadas por las principales distribuciones de Linux, use los siguientes enlaces para descargar las últimas imágenes empaquetadas:

  1. CentOS 7http://cloud.centos.org/centos/7/images/
  2. CentOS 6http://cloud.centos.org/centos/6/images/
  3. Fedora 23https://download.fedoraproject.org/pub/fedora/linux/releases/23/Cloud/
  4. Ubuntuhttp://cloud-images.ubuntu.com/
  5. Debianhttp://cdimage.debian.org/cdimage/openstack/current/
  6. Windows Server 2012 R2https://cloudbase.it/windows-cloud-images/#download

Las imágenes oficiales también contienen el paquete cloud-init que es responsable del par de claves SSH y la inyección de datos del usuario.

En esta guía, desplegaremos una imagen de prueba, para fines de demostración, basada en una imagen de nube de Cirros ligera que se puede obtener visitando el siguiente enlace http://download.cirros-cloud.net/0.3.4/.

El archivo de imagen puede usarse directamente desde el enlace HTTP o descargarse localmente en su máquina y cargarse en la nube de OpenStack.

Para crear una imagen, vaya al OpenStack panel web y navegue hasta Proyecto -> Calcular -> Imágenes y presione Botón Crear imagen . En el indicador de imagen, use la siguiente configuración y presione Crear imagen cuando haya terminado.

Name: tecmint-test
Description: Cirros test image
Image Source: Image Location  #Use Image File if you’ve downloaded the file locally on your hard disk
Image Location: http://download.cirros-cloud.net/0.3.4/cirros-0.3.4-i386-disk.img 
Format: QCOWW2 – QEMU Emulator
Architecture: leave blank
Minimum Disk: leave blank
Minimum RAM: leave blank
Image Location: checked
Public: unchecked
Protected: unchecked

Paso 3: Iniciar una instancia de imagen en OpenStack

3. una vez que hayas creado una imagen, estarás listo. Ahora puede ejecutar la máquina virtual según la imagen creada anteriormente en su entorno de nube.

Vaya a Proyecto -> Instancias y presione el botón Iniciar Instancia y aparecerá una nueva ventana.

4. En la primera pantalla, agregue un nombre para su instancia, deje la Zona de disponibilidad a nova, use el conteo de una instancia y presione el botón Siguiente continuar.

Elija un Nombre de instancia descriptivo para su instancia porque este nombre se usará para formar el nombre de host de la máquina virtual

5. A continuación, seleccione Imagen como Origen de inicio , agregue la imagen de prueba Cirros creada anteriormente presionando el + y presione Siguiente para continuar.

6. Asigne los recursos de la máquina virtual agregando el sabor que mejor se adapte a sus necesidades y haga clic en Siguiente para continuar.

7. Finalmente, agregue una de las redes disponibles de OpenStack a su instancia utilizando el botón + y presione Iniciar instancia para iniciar la máquina virtual.

8. Una vez iniciada la instancia, presione la flecha derecha del botón de menú Crear instantánea y elija Asociar IP flotante .

Seleccione una de las IP flotantes creadas anteriormente y presione el botón Asociar para que la instancia sea accesible desde su LAN interna.

9. Para probar la conectividad de la red para su máquina virtual activa, emita un comando ping contra la dirección IP flotante de la instancia desde una computadora remota en su LAN.

10. En caso de que no haya problemas con su instancia y el comando ping sea exitoso, puede iniciar sesión de forma remota a través de SSH en su instancia.

Use la utilidad Ver registro para obtener las credenciales predeterminadas de Cirros como se ilustra en las capturas de pantalla a continuación.

11. De forma predeterminada, no se asignarán servidores de nombres DNS desde el servidor DHCP de la red interna para su máquina virtual. Este problema lleva a problemas de conectividad de dominio de contraparte de instancia.

Para resolver este problema, primero detenga la instancia y vaya a Proyecto -> Red -> Redes y edite la subred adecuada presionando la tecla > Detalles de la subred .

Agregue los servidores de nombres DNS necesarios, guarde la configuración, inicie y conéctese a la consola de la instancia para probar si la nueva configuración se ha aplicado haciendo ping a un nombre de dominio. Usa las siguientes capturas de pantalla como guía.

En caso de que tenga recursos físicos limitados en su infraestructura y algunas de sus instancias se nieguen a comenzar, edite la siguiente línea desde el archivo de configuración de nova y reinicie la máquina para aplicar los cambios.

# vi /etc/nova/nova.conf

Cambia la siguiente línea para que se vea así:

ram_allocation_ratio=3.0

¡Eso es todo! Si bien esta serie de guías apenas rozó la superficie de OpenStack , ahora tiene los conocimientos básicos para comenzar a crear nuevos inquilinos y utilizar imágenes reales de Linux OS para implementar máquinas virtuales en su propia infraestructura de nube OpenStack.