Mostrando entradas con la etiqueta proxmox. Mostrar todas las entradas
Mostrando entradas con la etiqueta proxmox. Mostrar todas las entradas

miércoles, junio 18, 2014

Promox: Controlar el estado del enlace de red en una máquina KVM

Proxmox es una plataforma de virtualización que ofrece tanto la posibilidad de utilizar contenedores - paravirtualización - a través de openvz como virtualización de sistemas a través de kvm, plataforma de virtualización basada a su vez en qemu. Lo suelo usar para probar sistemas Linux con máquinas virtuales a través de kvm.

Hace unos días tuve la necesidad de comprobar con un software determinado respondía a la pérdida del enlace ethernet y si se disparaban los procesos que tenía configurado correctamente. Para poder interactuar con una máquina virtual que está corriendo se utiliza la utilidad qm, concretamente la opción monitor, acompañado por el vmid de la máquina que se quiera controlar.

root@proxmox ~ # qm monitor 101
Entering Qemu Monitor for VM 101 - type 'help' for help
qm>

Una vez conectados al control de la máquina virtual, se puede obtener la información de las interfaces de red que se tienen configuradas en el mismo con la ayuda del comando info network

qm> info network
net0: index=0,type=nic,model=e1000,macaddr=56:7c:16:86:6b:4a
\ net0: index=0,type=tap,ifname=tap101i0,script=/var/lib/qcmu-server/pve-bridge,downscript=/etc/kvm/kvm-ifdown net1: index=0,type=nic,model=e1000,macaddr=8e:53:38:3c:01:cc
\ net1: index=0,type=tap,ifname=tap101i1,script=/var/lib/qemu-server/pve-bridge,downscript=/etc/kvm/kvm-ifdown net2: index=0,type=nic,model=e1000,macaddr=46:64:f4:b1:47:6c
\ net2: index=0,type=tap,ifname=tap101i2,script=/var/lib/qemu-server/pve-bridge,downscript=/etc/kvm/kvm-ifdown

Ahora, con ayuda del comando set_link nombre on|off se puede controlar el estado del enlace. Por ejemplo, para simular la desconexión del cable en la interfaz net1:

qm> set_link net1 off

Referencias

jueves, abril 10, 2014

Convertir una imagen VMWARE a formato RAW para usar en Proxmox

Hace unos días tuve la necesidad de usar el disco duro virtual de una máquina virtual de vmware en un entorno de virtualización Proxmox. El formato de disco que utiliza vmware es VMDK, pero Proxmox no permite su uso de manera nativa. Hay que convertirlo a formato RAW. Este formato sería el equivalente a una imagen exacta si dicha máquina virtual se hubiese instalado en un disco físico.

Para realizar dicha conversión se usa una de las utilidades de qemu, qemu-img que permite convertir la imagen entre distintos formatos. La conversión se lleva a cabo en los siguientes pasos

gunzip imagen.vmdk.gz # Sólo si la imagen está comprimida con gzip
qemu-img convert -O raw imagen.vmdk imagen.raw # -O especifica el formato de conversión

Una vez que termine el proceso, el fichero imagen.raw tendrá una imagen de disco equivalente a la información que estaba almacenada en la vmware, y podrá usarse en una máquina virtual definida en Proxmox

Como curiosidad, una imagen de este tipo puede montarse a través del loopback de Linux. Sólo hay que ver donde empieza cada partición y de qué tipo es. Puede obtenerse dicha información con el comando fdisk

fdisk -l imagen.raw
 
Disk imagen.raw: 1073.7 GB, 1073741824000 bytes
255 heads, 63 sectors/track, 130541 cylinders, total 2097152000 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x000de2fb

Device      Boot      Start         End      Blocks   Id  System
imagen.raw1   *        2048  2012336127  1006167040   83  Linux

Puede verse de la salida del fdisk cual es el sector donde empieza la partición , 2048 y que el tamaño de cada sector es de 512 bytes. Por tanto, el offset en bytes donde empieza la partición es 2048 * 512 = 1048576 . Se puede montar dicha partición en Linux con

mount -o loop,offset=1048576 imagen.raw /mnt