Translate - ترجم - Traduire - 翻訳する

sábado, 29 de septiembre de 2012

0 Crear Maquina Virtual con ZeroShell 2.0 RC1 usando KVM en Ubuntu 12.04

INTRODUCCIÓN

Buenas tardes, días o noches, he estado probando ZeroShell desde hace ya como 6 meses, aunque la verdad no he tenido tiempo para levantar todos los servicios que este trae, así que antes que nada, ¿Que es ZeroShell?, en su pagina, podemos encontrar lo siguiente:

ZeroShell es una distribución Linux para servidores y dispositivos integrados destinados a proporcionar los servicios de red principal de una LAN requiere. Está disponible en forma de Live CD o de imagen de Compact Flash y se puede configurar y administrar utilizando el navegador web. Las principales características de esta distribución de Linux para aplicaciones de red se enumeran a continuación.
Como es una lista bastante grande en la cual encontraran no solo que hace cada servicio, sino un tuto de como hacerlo funcionar, pueden verla en su pagina oficial http://www.zeroshell.net/.
Bien ahora yo lo uso, o mejor dicho he estado estudiando sobre el RADIUS, y el Portal Cautivo, así como el Firewall y como maneja IPTABLES, aunque lo mas maravilloso es como esta hecho, es decir el autor ha creado una maravilla de sistema operativo, ademas de ser super liviano tiene todas las características que puede desear un sistema administrador de conexiones, usuarios, validación de usuarios, trafico, e incluso puedes controlar por así decirlo el consumo de cada usuario =D. Bueno el caso es que ZeroShell solo venia con un unico sabor (LiveCD) y después de un tiempo ya venia como imagen para IDE, SATA, etc.
Ahora lo interesante, como es una imagen muy liviana, y ademas venia en LiveCD e IMG DISK, los cuales probé e hice virtuales en KVM, primero trabajaba como LiveCD ya que este te permite salvar tus perfiles, ya sea en una USB u otro medio de almacenamiento, esto gracias a su interfaz web la cual de dejaba exportar el archivo DB (DataBase). Sin embargo es algo tedioso estar montando un usb, o enviándolo vía SSH, así que me vi a la tarea de poder instalarlo en un disco de 2GB cuando mucho, así que opte por la imagen de disco, e hice una maquina virtual separando espacio en disco y copie la imagen de forma binaria(gunzip -c ZeroShell-1.0.beta1-CompactFlash512.1.img.gz >> /dev/hdx), esto funciona perfectamente, sin embargo aquí viene el problema, hay una nueva versión de ZeroShell, y eso de actualizar la anterior es algo que honestamente no recomiendo, si puedes exporta tu base de datos o busca como sacar tus configuraciones, así tendrás un sistema limpio y con todas tus configuraciones. La maravilla de la nueva versión es que ya viene lista para KVM, sin embargo aquí viene otro problema, este .tar nos proporciona el raw (zeroshell.img) y el descriptor de la imagen (zeroshell.xml) que bonito que bonito, Oh oh OH... el descriptor viene con unas configuraciones diferentes a como creamos el Host de Maquinas virtuales, es decir como tenemos preparada la maquina anfitrión para generar maquinas virtuales (ademas parece que no es la misma configuración dependiendo de el KVM + Ubuntu/Debian/CentOS, etc).

Solución

Buena lo manera de solucionar esto es comenzar desde cero, si usamos virsh para crear/manipular nuestras maquinas virtuales, entonces simplemente modificamos el archivo descriptor que anteriormente como es mi caso copie a "/etc/libvirt/qemu/", al igual que moví la imagen de disco virtual a la respectiva carpeta de imágenes "/var/lib/libvirt/images/", ahora bien, lo mas importante, o lo que creo que debemos considerar es!!!, primero checa que los archivos que descargamos tengan los permisos necesarios para cada carpeta, ya que puede que mientras traslademos, copiemos a usb, etc, incluso el usuario que los usa o mueve pueden alterar los permisos de dichos archivos, así que MUCHO OJO!!!.
Ahora simplemente modificamos el xml a nuestro antojo, como podrán ver, si tenemos otras maquinas virtuales notaran que el que creo esa imagen y descriptor de maquina tienen configuraciones muy diferentes, desde que programa usa para usar la emulación o virtualización, usa (AQUI PONDRE CONFIG), ademas de que en el dispositivo de red que declararon maneja puenteo y no es network, etc, ahora bien aquí viene lo divertido.  Modificamos el documento colocando los valores predeterminados, es decir ZeroShell es tan noble y tiene todos los drivers para dispositivos "virtio", "cirrus", etc, así que podemos dejar algunos de estos dispositivos para el arranque, ahora bien debemos tomar en cuenta donde esta nuestra imagen y la ruta en la que dice que se encuentra, modificamos la ruta si no este en la misma ruta, o no tienen el mismo nombre, después de hacer las modificaciones necesarios podemos levantar este dominio desde virsh con el comando:
$virsh
#define /ruta/nombrearchivo.xml
Si no tenemos errores en el archivo, este nos deberá crear dominio llamado ZeroShell o el nombre que nosotros le demos, ahora solo encendemos esta maquina(#start ZeroShell). Si todo esta correcto simplemente arrancara y podremos verla desde un visor de escritorios remotos o podremos ver que esta activa con el comando #list --all.
Y listo tendremos nuestra maquina virtualizada en KVM, sin problemas, ahora solo hay que configurar y cambiar la ip el password de Admin etc.
Espero esto les sirva ya que si somos nuevos es muy difícil saber que esta ocurriendo con KVM cuando no trabajamos con virt-manager ( aunque en mi opinión VIRSH es la mejor herramienta para la manipulación del host y sus guest.).

NOTAS

  • Unos cuantos datos, tratemos de usar el usuario con mas privilegios, ademas de tener a punta nuestro host de maquinas virtuales, y de ser necesario usar root para no tener problemas de permisos.
  • Si con virsh no logramos montar esta maquina virtual, podemos usar virt-install con los comandos genéricos para una maquina en Linux con kernel < 2.6.X, ahora bien simplemente le decimos que agarre un CD booteable, o un iso de cualquier otra distro (esto es nomas por requisito ya que después lo expulsaremos virtualmente y deberá bootear desde el disco duro), y obviamente le ponemos la ruta de donde se localiza nuestra imagen de disco.
  • Por ultimo también podemos usar virt-manager para crearla por si todo lo demás nos retorna un error; como es un asistonto, simplemente seguimos los pasos, y usamos la imagen de disco de ZeroShell la cual ya debemos tener en el directorio de imágenes. Este quizás nos de un error pero sera al tratar de acceder a la consola de la imagen la cual cambiara automáticamente gracias a virt-viewer que ya viene integrado al virt-manager, solo cancelamos la ventana que este en foco en ese momento y en la lista de maquinas virtuales veremos nuestra maquina lista para ser usada (obviamente como en el dato anterior, si abrimos el visor de escritorios veremos la imagen que usamos para crear esta maquina, solo hay que configurar que el boot sea por el disco duro y expulsamos el iso, en el siguiente arranque configurara la maquina para los dispositivos virtuales que le configuramos y listo.


Voalá a jugar con ZeroShell.

 

Just Linovaxion Copyright © 2013 - |- Template created by O Pregador - |- Powered by Blogger Templates