Virtualización KVM y OpenVZ y computación en la nube con Proxmox VE
Proxmox VE (v e virtuales nvironment) es una distribución basada en Debian Etch (x86_64); proporciona una plataforma de virtualización OpenSource para ejecutar máquinas virtuales (OpenVZ y KVM) y viene con un potente panel de control basado en web (incluye una consola gráfica basada en web que puede usar para conectarse a las máquinas virtuales). Con Proxmox VE, incluso puede crear un clúster de hosts de virtualización y crear/controlar máquinas virtuales en hosts remotos desde el panel de control. Proxmox VE también admite la migración en vivo de máquinas virtuales de un host a otro. Esta guía muestra cómo puede usar Proxmox VE para controlar máquinas virtuales KVM y OpenVZ y cómo crear una pequeña nube informática con él.
¡No emito ninguna garantía de que esto funcione para usted!
1 Nota Preliminar
Proxmox VE es una distribución x86_64, por lo que no puede instalarlo en un sistema i386. Además, si desea utilizar KVM, su CPU debe ser compatible con la virtualización de hardware (Intel VT o AMD-V); esto no es necesario si solo desea utilizar OpenVZ.
En este tutorial crearé un pequeño clúster de dos máquinas, el maestro Proxmox (server1.example.com con la IP 192.168.0.100) y un esclavo (server2.example.com, IP:192.168.0.101) para que pueda demostrar la función de migración en vivo y también la creación y administración de máquinas virtuales en hosts remotos a través de Proxmox VE. Por supuesto, está perfectamente bien ejecutar Proxmox VE en un solo host.
2 Instalación de Proxmox VE en server1.example.com (maestro)
Descargue la última imagen ISO de Proxmox VE de http://pve.proxmox.com/wiki/Downloads, grábela en un CD y arranque su sistema desde allí. Presione ENTER en el indicador de inicio:
Acepte el acuerdo de licencia de Proxmox (GPL):
Seleccione el disco duro en el que desea instalar Proxmox. ¡Tenga en cuenta que se perderán todas las particiones y datos existentes!
Seleccione su país, zona horaria y diseño de teclado:
Escriba una contraseña (esta es la contraseña raíz que le permite iniciar sesión en el shell y también en la interfaz web de Proxmox) y su dirección de correo electrónico:
Ahora llegamos a la configuración de la red. Escriba el nombre de host (servidor1.ejemplo.com en este ejemplo), la dirección IP (por ejemplo, 192.168.0.100), la máscara de red (por ejemplo, 255.255.255.0), la puerta de enlace (por ejemplo, 192.168.0.1) y un servidor de nombres (por ejemplo, 145.253.2.75):
Posteriormente, se instala Proxmox. El instalador particionará automáticamente su disco duro usando LVM; es por eso que no hay diálogo de partición en el instalador. Proxmox usa LVM porque eso permite crear copias de seguridad instantáneas de máquinas virtuales.
Reinicie el sistema después:
Después de que el servidor 1 se haya reiniciado, puede abrir un navegador e ir a http://192.168.0.100/; esto lo redirigirá a https ://192.168.0.100/.
Si usa Firefox 3 y usa HTTPS, Firefox se quejará del certificado autofirmado, por lo tanto, debe decirle a Firefox que acepte el certificado; para hacer esto, haga clic en el enlace O puede agregar una excepción...:
Haga clic en Agregar excepción...:
Se abre la ventana Agregar excepción de seguridad. En esa ventana, haga clic primero en el botón Obtener certificado y luego en el botón Confirmar excepción de seguridad:
Luego, verá el formulario de inicio de sesión de Proxmox. Escribe root y la contraseña que creaste durante la instalación:
Así luce el panel de control de Proxmox:
Virtualización KVM y OpenVZ y computación en la nube con Proxmox VE - Página 2
3 Crear un cluster agregando un esclavo (server2.example.com) (Opcional)
(Puede omitir este capítulo si desea ejecutar Proxmox en un solo host).
Puede crear un clúster o una nube informática agregando uno o varios servidores esclavos al maestro de Proxmox (servidor1.ejemplo.com). Dicha nube le permite crear y administrar máquinas virtuales en hosts remotos desde el panel de control de Proxmox, e incluso puede realizar la migración en vivo de máquinas virtuales de un host a otro.
Ahora le mostraré cómo agregar un segundo host, server2.example.com, y crear un clúster.
Instale Proxmox en server2.example.com, tal como lo hizo en server1. Cuando llegue a la sección de redes, complete server2.example.com y asegúrese de usar una IP diferente (por ejemplo, 192.168.0.101):
Una vez que la instalación haya finalizado y el sistema se haya reiniciado con éxito, inicie sesión en la línea de comando (por ejemplo, usando PuTTY) tanto en el servidor 1 como en el servidor 2.
En el servidor1, ejecute el siguiente comando:
servidor1:
pveca -c
server1:~# pveca -c
Generando un par de claves rsa pública/privada.
Su identificación se ha guardado en /root/.ssh/id_rsa.
Su clave pública se ha guardado en /root /.ssh/id_rsa.pub.
La huella digital de la clave es:
ce:bf:a2:cd:69:23:e4:78:fc:05:db:fc:55:ef:52 :1d [email protected]
maestro de clúster creado con éxito
servidor1:~#
Luego verifique el estado del clúster:
servidor1:
pveca -l
servidor1:~# pveca -l
CID----IPADDRESS----ROLE-STATE--------UPTIME---LOAD----MEM---ROOT---DATA
1 : 192.168.0.100 M A 00:14 0.00 5% 1% 0%
servidor1:~#
En el servidor2, haga lo siguiente:
servidor2:
pveca -a -h 192.168.0.100
server2:~# pveca -a -h 192.168.0.100
Generando par de claves rsa pública/privada.
Su identificación se ha guardado en /root/.ssh/id_rsa.
Su clave pública ha se ha guardado en /root/.ssh/id_rsa.pub.
La clave es:
ea:ad:21:fc:5d:9b:af:ab:fb:0d:72:72:c7:94:23:ca [email protected]
No se puede establecer la autenticidad del host '192.168.0.100 (192.168.0.100)'.
La huella dactilar de la clave RSA es 7c:17:8c:35:9c:be:60:6b:56:97:2a:0b:72:60:57:09.
¿Está seguro de que desea continuar con la conexión (sí/no)? <-- sí
Advertencia:Se agregó permanentemente '192.168.0.100' (RSA) a la lista de hosts conocidos.
contraseña de [email protected]:<-- contraseña raíz de servidor1.ejemplo.com
nodo de clúster creado con éxito
servidor2:~#
Eso es todo, acaba de crear un clúster. Puede comprobarlo ejecutando:
servidor2:
pveca -l
Esto debería mostrar ambos servidores en la salida:
servidor2:~# pveca -l
CID----IPADDRESS----ROLE-STATE--------UPTIME---LOAD----MEM---ROOT---DATA
1:192.168.0.100 m s 00:15 0.00 5%1%0%
2:192.168.0.101 N S 00:04 0.08 15%1%0%
Server2:~#
Ahora regrese al panel de control de Proxmox en http://192.168.0.100/ (¡no necesita el panel de control en server2.example.com!) y vaya a Cluster, y debería enumerar ambos servidores:
4 Adición de plantillas de dispositivos
Antes de que podamos crear contenedores OpenVZ, debemos agregar al menos una plantilla de sistema operativo a nuestro sistema (para invitados KVM, puede agregar archivos ISO, aunque esto no es necesario; los invitados KVM también se pueden instalar directamente desde un CD o DVD del sistema operativo) .
Vaya a Plantillas de dispositivos. Verá dos pestañas, Local y Descargar:
En la pestaña Descargar, verá una lista de plantillas proporcionadas por el proyecto Proxmox que puede descargar directamente al sistema...
... - al menos teóricamente - el problema es que los enlaces son demasiado viejos y ya no funcionan:
Es por eso que tenemos que usar la pestaña Local. Puede ir a http://download.proxmox.com/appliances/ y luego a las carpetas admin, mail, system o www...
... y descargue las plantillas deseadas en su disco duro local:
En la pestaña Local, puede cargar las plantillas en el maestro de Proxmox:
También puede cargar imágenes ISO que se pueden usar para la creación de invitados KVM. Para eliminar una plantilla o archivo ISO, haga clic en la flecha roja frente a él y seleccione Eliminar:
Virtualización KVM y OpenVZ y computación en la nube con Proxmox VE - Página 3
5 Creación de contenedores OpenVZ
Para crear un contenedor OpenVZ, vaya a Máquinas virtuales> Crear...
... y rellene el formulario. Seleccione Contenedor (OpenVZ) y luego la plantilla que desea usar. Especifique un nombre de host (p. ej., vm1.example.com), la cantidad de memoria e intercambio, una contraseña raíz, seleccione Red virtual (venet) y especifique una dirección IP para el contenedor (p. ej., 192.168.0.102), complete un VMID, seleccione un nodo de clúster (si no ha creado un clúster (consulte el capítulo 3), puede seleccionar solo el maestro, no cualquier sistema remoto), especifique si el contenedor debe iniciarse automáticamente cuando se inicia el host y complete uno o dos Servidores DNS (por ejemplo, 145.253.2.75 y 213.191.92.86). Luego haga clic en crear:
Luego se crea el contenedor...
... y debería aparecer en la pestaña Lista después. El contenedor está parado; para iniciarlo, haga clic en el contenedor:
Esto abrirá una página donde puede controlar ese contenedor. Para iniciarlo, haga clic en el botón Inicio:
A continuación, debería ver el enlace Abrir consola VNC; si hace clic en él...
... se abre una consola basada en navegador desde donde puede controlar la máquina virtual (esto es especialmente útil para máquinas de escritorio; si la máquina virtual es un servidor, también puede conectarse a ella mediante SSH (por ejemplo, con PuTTY)).
6 Creación de máquinas virtuales en sistemas remotos en el clúster
Si ha creado un clúster (consulte el capítulo 3), también puede crear máquinas virtuales en sistemas remotos que pertenezcan al clúster:simplemente seleccione un nodo remoto en Nodo de clúster cuando cree una máquina virtual (la captura de pantalla muestra esto para OpenVZ, sin embargo, esto funciona para invitados KVM siempre que el nodo admita la virtualización de hardware):
La pestaña Lista debería mostrar que la máquina virtual se está ejecutando en un nodo diferente:
7 Creación de invitados KVM
Si la CPU admite la virtualización de hardware (Intel VT o AMD-V), tiene la posibilidad de crear invitados KVM además de contenedores OpenVZ. Simplemente seleccione Totalmente virtualizado (KVM) en el menú desplegable Tipo y, a continuación, seleccione el dispositivo de cdrom o una de las imágenes ISO que ha cargado (si corresponde) en el menú desplegable Medios de instalación. No es necesario establecer ninguna configuración de red, ya que tendrá que hacerse directamente en el invitado KVM. Asegúrese de seleccionar el tipo de invitado correcto (Linux 2.6, Windows XP, etc.):
El invitado KVM debe aparecer en la pestaña Lista después; como siempre con nuevos invitados, se para. Haga clic en él...
... para acceder a su página de gestión; haga clic en el botón Inicio (si ha seleccionado instalar el invitado desde el CD-ROM, inserte el CD o DVD del sistema operativo en la unidad de CD del sistema de destino antes de hacer clic en Inicio):
Luego haga clic en el enlace de la consola Open VNC...
... para conectarse desde la consola gráfica del huésped; ahora debería poder completar la instalación del sistema operativo como si fuera un sistema físico:
KVM &OpenVZ Virtualización y Cloud Computing con Proxmox VE - Página 4
En esta página
- 7.1 Instalación de Windows XP
7.1 Instalación de Windows XP
KVM también le permite instalar invitados de Windows. Seleccione el dispositivo cdrom en el menú desplegable Medios de instalación y Windows XP en el menú desplegable Tipo de invitado:
Inserte el CD de Windows XP en la unidad de CD del sistema de destino, inicie el invitado y conéctese a su consola gráfica. Ahora puede seguir el asistente de instalación de Windows para instalar un invitado de Windows XP:
8 Migración en vivo
Si configuró un clúster Proxmox (consulte el capítulo 3), puede migrar invitados en ejecución de un nodo a otro. Simplemente vaya a Máquinas virtuales> Migrar, seleccione el invitado, el nodo de origen y el de destino, marque Migración en línea y haga clic en migrar:
El invitado se migra mientras se está ejecutando:
Luego, la página Lista muestra que ahora se está ejecutando en otro nodo:
9 copias de seguridad
Con Proxmox VE, puede crear trabajos cron para respaldar sus máquinas virtuales. Antes de que podamos crear copias de seguridad, necesitamos crear un directorio de copia de seguridad, p. /respaldo. Vaya a la línea de comando del servidor1 y ejecute:
servidor1:
mkdir /backup
En el panel de control de Proxmox, vaya a Copia de seguridad y haga clic en la flecha roja frente a Trabajos de copia de seguridad; luego seleccione Crear nuevo trabajo:
Seleccione el nodo del clúster y luego las máquinas virtuales de ese nodo de las que desea realizar una copia de seguridad. Especifique /backup como el directorio de destino y seleccione los días y la hora en que desea que se creen las copias de seguridad. En Modo, puede seleccionar instantánea (instantáneas LVM, tiempo de inactividad cero), suspender (las máquinas virtuales se suspenderán durante un breve período de tiempo cuando se cree la copia de seguridad) y detener (la máquina virtual se detendrá por completo). Recomiendo usar la instantánea aquí, especialmente si no puede permitirse ningún tiempo de inactividad:
Luego, puede ver el trabajo cron de copia de seguridad en la página Copia de seguridad:
10 enlaces
- Proxmox VE:http://pve.proxmox.com/wiki/Main_Page
- OpenVZ:http://wiki.openvz.org/
- KVM:http://kvm.qumranet.com/kvmwiki