Proxmox v3.1 – parte 3

Siguiendo con Proxmox, vimos en la segunda parte un pantallazo de las ventajas y desventajas.

La utilización de esta plataforma de virtualización nos permite utilizar métodos como Containers (CT) y KVM (VM).

La principal diferencia es que los contenedores (Containers) utilizan el kernel del servidor para construir instancias de máquinas virtuales; utilizan OpenVZ. Los contenedores sólo pueden correr GNU/Linux.

Cuando se desea instalar otros sistemas operativos como Windows, Solaris, FreeBSD, etc… se debe utilizar KVM mediante QEMU.

De CT’s y VM’s

Proxmox_Virtual_Environment_-_2014-02-26_08.54.30Proxmox es una distribución basada en Debian, la cual puede ser instalada y utilizada en poco tiempo. Se puede conseguir lo mismo utilizando cualquier otra distribución como CentOS, pero habría que instalar OpenVZ, QEMU y configurar el software a mano.

La ventaja de Proxmox es que ya resuelve el manejo de máquinas virtuales a través de su interfaz web, lo que lo hace muy sencillo de administrar. Además han incorporado soporte para SPICE, asi que las máquinas virtuales se pueden acceder desde cualquier otra PC simplemente utilizando un cliente SPICE.

Proxmox ofrece una cantidad de «plantillas» de máquinas virtuales para descargar desde la propia interfaz de administración. Se puede ver un listado completo en la wiki.

De la misma manera, las plantillas para OpenVZ y las de TurnKey Linux también se pueden instalar.

En este momento dispongo de 5 CT y 6 VM.

CT

  1. WordPress: plantilla «TurnKey WordPress» basada en Debian Wheezy 7.2, sólo funcionando cuando lo necesito
  2. FileServer: plantilla «TurnKey FileServer» basada en Debian Wheezy 7.2, activa permanentemente. Inicialmente solo dispone de Samba, pero le he instalado y configurado minidlna para acceder desde el SmartTV y también tiene el servicio de DNS interno de mi red.
  3. DokuWiki: plantilla «TurnKey DokuWiki», basada en Debian Wheezy 7.2, activa permanentemente. Es mi Knowledge Base.
  4. SugarCRM: plantilla «TurnKey SugarCRM», basada en Debian Wheezy 7.2, sólo funcionando cuando lo necesito
  5. Ubuntu 12.04: plantilla de Proxmox, le he instalado XFCE4 y lo accedo mediante VNC. Tengo instalado un sistema de Gestión ERP denominado Libertya, de manufactura Argentina.

VM

  1. Windows 7: instalación para soporte de algunos clientes. Lo accedo mediante RDP. Sólo funcionando cuando lo necesito
  2. Fully Automated Nagios: una distribución out-of-the-box basada en CentOS 5.2; es un servidor de monitoreo. Me permite monitorear mis servidores y los de mis clientes. Funciona permanentemente.
  3. Elastix: otra distribución out-of-the-box. Permite utilizar Asterisk y vTigerCRM. Sólo funcionando cuando lo necesito
  4. ProxmoxNodo1
  5. ProxmoxNodo2
  6. Máquina virtual que bootea SystemRescueCD, y que tiene 3 discos duros: uno con XP, uno con W7 32bits y otro con W7 64bits. Estos Windows están preparados con Sysprep y será tema para otro post.

Las máquinas virtuales 4 y 5 son dos instalaciones de Proxmox (si, ya se… proxmox dentro de proxmox…). Las tengo porque estoy investigando la instalación, uso y administración de clusters.

Un cluster Proxmox es un conjunto de instalaciones proxmox que trabajan simultáneamente. El cluster puede ser una simple «granja» de servidores, o un cluster HOT STANDBY, donde si un servidor se cae, puedo mover manualmente las máquinas virtuales a otro nodo para que sigan ejecutandose (lo que estoy investigando)

Por último y más importante, un cluster puede ser High Availability (alta disponibilidad); aquí entra en juego hardware especializado y permitiría mover las máquinas virtuales automáticamente de un nodo a otro ante la caída de un servidor.

Esto último no puedo experimentarlo dado que no tengo, ni otro equipo igual, ni switches administrables, ni Storage (SAN)… ya llegará el momento!!

Rendimiento

En cuanto al rendimiento, creo que me doy por satisfecho. Hay 4 máquinas corriendo permanentemente, el procesador nunca supera el 5% de uso y la memoria ram nunca supera el 10%.

Quizá pueda flaquear cuando hablamos de uso de red y de disco, pero es lógico que así sea ya que solo dispongo de un solo disco SATA de 500GB y una interfaz de red de para gestionar todas las máquinas virtuales.

Les dejo algunas capturas que hice de la interfaz web, para mostrar un poco el rendimiento del servidor:

Proxmox resúmen

En esta sección del panel completo, he querido recortar sólo el «Estado» del servidor. Se ve que hace 9 días y 15 horas que está corriendo sin interrupciones (lo apagué un fin de semana que me fui de viaje).  La utilización del CPU marca 1,56%; la memoria RAM utilizada sólo 1.64GB.

En cuanto a la carga o «load» del equipo haré una mención especial.

En cualquier equipo con linux, al correr el comando uptime, se ve un curioso load average seguido por tres números. Los 3 números reflejan el promedio de carga del procesador al minuto, a los 5 minutos y a los 15 minutos.

  • Se podría imaginar que un procesador de 1 core es como un puente de un carril, el tráfico irá pasando uno a uno, todos en fila. Cuando los valores de carga son iguales a 0.00 quiere decir que no hay tráfico (o que el coche que llega, sube al puente y sale sin interrupciones)
  • Cuando el valor de carga es de 0.50, quiere decir que cuando un coche entra al puente y va por la mitad, otro coche sube al puente.
  • Si el valor llega a 1.00, es que los coches van uno tras otros y no hay espacio entre ellos (habría que empezar a revisar qué está pasando)
  • Cuando el valor de carga supera 1.00 (por ejemplo 1.70) quiere decir que hay espera y las cosas empiezan a tornarse lentas. Es imprescindible tomar cartas en el asunto y ver porqué hay tanto consumo de procesador

En el caso de los procesadores multi-core (como los dual-core, quad-core, o los de 8 cores como el i7) estos valores deberían empezar a preocuparnos cuando lleguen a 1.00 x cantidad de cores.

En el i7, que tiene 8 cores, el valor preocupante debería empezar a rozar el 8.00. Así que promedios de carga de 0,03 0,07 0,08 no son de mi preocupación en este momento.

Si desean ampliar el tema, aca lo explican muy bien.

En este otro pedacito de imagen, se ve una lista de las máquinas virtuales con sus respectivos usos.

Proxmox vm y ct

Están los contendores OpenVZ y las máquinas KVM en QEMU. Cada máquina tiene asignado CPU, RAM y DISCO según sea necesario:

  • 132 es mi Fileserver, el 70.7% de uso de disco son en realidad unos 105GB de 150GB asignados, está utilizando 75% de 1.5GB de memoria y tiene asignado un core.
  • 134 es mi KnowledgeBase (dokuwiki), tiene asignado 1 core, 384 de RAM y 4GB de disco.
  • 137 es un desktop Ubuntu (con XFCE4), tiene asignado 2 cores, 2GB de RAM y 10GB de disco. Está corriendo PostgreSQL.
  • 135 es mi servidor de monitoreo Centreon/Nagios. Tiene asignado 2 cores, RAM dinámica de 1 a 2GB y 24GB de disco. La memoria dinámica arranca utilizando el menor valor (1GB), si la máquina virtual lo necesita, incrementa hasta el valor superior (2GB).
  • El resto de las máquinas virtuales están apagadas y las enciendo cuando son necesarias.
  • «storage» es el estado del almacenamiento local (mi único disco de 500GB)

En cuanto al Fileserver, ya había mencionado que está corriendo varios servicios diferentes, con lo cual el uso de memoria se incrementa bastante. Inicialmente lo tenía en 512MB, pero vi que empezó a utilizar todo el SWAP; le subí la memoria a 1GB y vi que seguía utilizando SWAP, por lo que volví a incrementarlo a 1.5GB y a partir de allí dejó de utilizar memoria de intercambio.

Los servicios de esta máquina virtual son:

  • SAMBA para compartir archivos con los Windows de mi red.
  • TRANSMISSION-DAEMON para descarga de torrents
  • MINIDLNA como servidor UPNP/DLNA, como servidor multimedia para ver películas directamente desde mi SmartTV
  • DNS con Bind9, para servicio de resolución de nombres dentro de mi red.

Próximamente…

Ahora empieza lo bonito. Empezar a sacarle jugo a ProxMox como herramienta de infraestructura.

Administrarlo y conocerle los secretos puede llevar un largo tiempo, pero es la única manera de alcanzar el conocimiento.

6 comentarios (+¿añadir los tuyos?)

  1. Eduardo Miranda
    May 27, 2014 @ 17:20:57

    Necesito información de como hacer un cluster con la versión 3.1 del Proxmox
    Saludos

    Responder

  2. Mario
    Jun 26, 2014 @ 16:19:48

    Hola, como estas? estoy experimentado con Proxmox y me encontre con tu blog, Tengo una duda con respecto a si es posible levantar nuevamente las maquinas virtuales en otro servidor copiando los archivos de configuracion y los .vmdk del disco original.
    Tenes idea de como hacerlo? no encontre nada especifico.

    Responder

    • jinetedeldragon
      Jun 28, 2014 @ 15:16:07

      Hola Mario: Pongamos algunas pautas previas: imagino que la situación es migrar de un Proxmox a otro y en servidores que no se encuentran en la misma red.
      En teoría podes hacer un backup de la máquina virtual y llevarte el archivo comprimido donde quieras. Haciendo un backup en el primer proxmox es suficiente, luego haces un restore en el segundo Proxmox. En cuanto a la configuración de la máquina virtual, podrías crear una VM igual y luego «pisar» con el backup.
      Ahora, si hablamos de servidores en la misma red, es muchísimo más sencillo crear un cluster y migrar las VM de un nodo a otro.

      Responder

  3. Mario
    Jun 30, 2014 @ 09:34:03

    En realidad es solo por precaucion, y tener idea que hacer en caso de un suceso atipico o extraordinario.
    Estoy al tanto que si tengo dos servidores en la misma red el backup seria lo ideal. Pero voy a tener solo un servidor y queria prevenirme en caso de una falla de hardware grave (se quemo la Mother del servidor por ejemplo). Que posibilidades hay de levantar un segundo Proxmox y sacar las VM del disco del primero.
    Es un ensayo para un escenario en el que no haya un backup de las VM actualizado o bien no exista backup de las mismas.
    Actualmente tengo 2 PC de prueba montadas, en la primera instale una VM, luego saco el disco, lo coloco en el segundo proxmox, pero no logro montar el disco para poder extraer el disco virtual.

    Responder

    • jinetedeldragon
      Jul 24, 2014 @ 13:54:27

      Uh mil disculpas… nunca vi la notificacion del comentario.
      Proxmox usa LVM, asi que vas a tener que conectar el disco y usar las herramientas de lvm para activar el volumen y montarlo.

      Responder

Replica a jinetedeldragon Cancelar la respuesta

Archivos

febrero 2014
D L M X J V S
 1
2345678
9101112131415
16171819202122
232425262728