Añadir un repositorio local de imágenes ISO en XenServer 6.5

Hola saludos, empezamos hoy con una nueva serie de miniartículos sobre virtualización, en concreto sobre la plataforma XenServer de Citrix.

Es posible que, al instalar por primera vez y tratar de crear tus primeras máquinas virtuales con este sistema, te hayas encontrado con el problema de que no sabes desde dónde cargar las isos de los sistemas operativos a instalar. La interfaz gráfica proporcionada por XenCenter no ofrece opciones para crear un repositorio de isos locales, una pequeña desventaja con respecto a ESXi de VMWare, que sí que ofrece esta opción de una forma clara e intuitiva. Pero, afortunadamente, XenCenter es un linux al que podemos meter mano, así que se puede acceder a una terminal y con unos cuantos comandos hacer el trabajo.

CONSIDERACIONES PREVIAS

La base es sencilla, pero antes de lanzarse a ejecutar comandos, conviene hacer hincapié en qué versión de XenServer estamos usando: en XenServer 6.5 el espacio que se crea para la partición de sistema es insuficiente para albergar imágenes grandes, apenas 4 gb de los cuales 2 gb ya estarán usados al empezar. Con XenServer 7 dispondremos de más espacio en la raiz de inicio, y se puede ir directamente al último punto.

Además, hay que tener en cuenta el despliegue de discos duros. XenServer 6.5 por defecto crea dos particiones de 4 GB para su uso y disfrute interno, y luego crea un almacenamiento local para máquinas virtuales, con lo que encuentra libre. En caso de estar usando un único disco duro, cogerá todo el espacio libre, pero si tenemos otro disco instalado, nos permitirá elegir cuál queremos usar para instalar el sistema, y dónde queremos almacenar las máquinas virtuales.

Conviene pues, planificar cómo vamos a poner las particiones, y no lanzarse a lo loco a instalar XenServer (os ahorrará tiempo y esfuerzo … Por poner un ejemplo de cómo lo estoy haciendo yo, estoy utilizando dos discos duros, uno de 80GB y otro de 230GB. En el momento de la instalación, seleccionaré el primero para instalar XenServer, y el segundo de 230GB para guardar las máquinas virtuales, con lo que y según lo explicado en el párrafo anterior, quedarían unos 70 gigas en el primer disco duro, que usaremos para guardar las ISOS 😉

systemXen                                     storageXen

De no hacerlo así, o de una forma similar, luego nos tocaría redimensionar el storage local (lvm), con lo que nos meteríamos en otra guerra, que si podemos evitar mejor 😉

Alternativamente, podemos obviar toda esta historia y montar nuestras isos por red, como se verá en el punto 2.

1- Creando una partición para guardar isos

Lo que vamos a hacer es:    buscar espacio libre en el disco duro, crear una partición en ese espacio y formatearla, añadirla al repositorio de XenServer. Para los dos primeros casos usaremos los comandos linux fdisk, gdisk y mkfs.ext3.

No voy a poner la salida completa de los comandos, pero entiendo que ya tenéis una base linux . Si no es así, id aquí y seguid la guía del amigo, con todo lujo de detalles

FDISK: usaremos este comando para identificar la letra de los discos duros, nada más. En este caso identificamos nuestro disco de sistema en /dev/sda

[[email protected] ~]# fdisk -l

WARNING: GPT (GUID Partition Table) detected on '/dev/sda'! The util fdisk doesn't support GPT. Use GNU Parted.

Disk /dev/sda: 250.0 GB, 250059350016 bytes
256 heads, 63 sectors/track, 30282 cylinders
Units = cylinders of 16128 * 512 = 8257536 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1       30283   244198583+  ee  EFI GPT

GDISK: es un programa similar a fdisk, pero soporta particiones hechas con el estándar GPT

Hacemos una exploración de la unidad de disco duro donde queremos alojar el Storage para isos. En este escenario hemos decidido que será sobre el disco de sistema.

[[email protected] ~]# gdisk /dev/sda -l

GPT fdisk (gdisk) version 0.6.10

Partition table scan:
  MBR: protective
  BSD: not present
  APM: not present
  GPT: present

Found valid GPT with protective MBR; using GPT.
Disk /dev/sdb: 488397168 sectors, 232.9 GiB
Logical sector size: 512 bytes
Disk identifier (GUID): CA68F231-D745-4BD7-A9E2-D3C53B7B63CB
Partition table holds up to 128 entries
First usable sector is 34, last usable sector is 488397134
Partitions will be aligned on 2048-sector boundaries
Total free space is 471623913 sectors (224.9 GiB)

Number  Start (sector)    End (sector)  Size       Code  Name
   1            2048         8388641   4.0 GiB     0700
   2         8390656        16777249   4.0 GiB     0700

Como adelantamos al principio del artículo, se ven las dos particiones propias de XenServer, de sistema, y vemos que tenemos mucho espacio sin asignar.

Creamos una nueva partición con gdisk, de forma muy similar a cómo lo haríamos con fdisk. Pongo en negrita los comandos que hay que introducir. En la mayoría de campos podemos usar el valor por defecto, dándole a la tecla enter.

[[email protected] ~]# gdisk /dev/sda

GPT fdisk (gdisk) version 0.6.10

Partition table scan:
  MBR: protective
  BSD: not present
  APM: not present
  GPT: present

Found valid GPT with protective MBR; using GPT.
Command (? for help): n
Partition number (3-128, default 3): 3
First sector (34-488397134, default = 16777250) or {+-}size{KMGT}:
Information: Moved requested sector from 16777250 to 16779264 in
order to align on 2048-sector boundaries.
Use 'l' on the experts' menu to adjust alignment
Last sector (16779264-488397134, default = 488397134) or {+-}size{KMGT}:
Current type is 'Linux/Windows data'
Hex code (L to show codes, 0 to enter raw code, Enter = 0700):
Changed type of partition to 'Linux/Windows data'

Opcional, podemos cambiar el nombre de la partición, por ejemplo a isos (con la opción c)

Mostramos la tabla de particiones mediante la opción p, y si todo pinta bien, podemos escribir los cambios en disco duro con la opción w.

Reiniciamos el servidor para montar la nueva tabla de particiones.

MKFS.EXT3

[[email protected] ~]# mkfs.ext3 /dev/sda3
mke2fs 1.39 (29-May-2006)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
29491200 inodes, 58952233 blocks
2947611 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=4294967296
1800 block groups
32768 blocks per group, 32768 fragments per group
16384 inodes per group
Superblock backups stored on blocks:
        32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
        4096000, 7962624, 11239424, 20480000, 23887872

Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 25 mounts or
180 days, whichever comes first.  Use tune2fs -c or -i to override.

Creamos un punto de montaje, montamos la partición y añadimos la entrada en el archivo fstab, para que cargue automaticamente esta partición con cada inicio del sistema :

[[email protected] ~]# mkdir /mnt/isos

[[email protected] ~]# mount -t ext3 /dev/sda3 /mnt/isos/

[[email protected] ~]# echo "/dev/sda3 /mnt/isos ext3 defaults 1 1" >> /etc/fstab

Por último, usamos xe-mount-iso para indicarle a XenServer que utilice la partición para guardar isos.

[[email protected] ~]# xe-mount-iso-sr /mnt/isos/ -o bind

Listo, tan sólo hay que refrescar XenCenter para ver el nuevo almacenamiento. Con cualquier programa de transferencia de ficheros a través de ssl podréis subir vuestras imágenes al nuevo storage.

 

2- Obviando todo lo anterior y haciendo las cosas sencillas

En realidad, todo esto aquí explicado es poco práctico si tenemos el XenServer conectado a una red local. Es infinitamente más fácil y más directo usar cualquier carpeta compartida de windows o recurso NFS que tengamos en la red, y poner nuestras isos ahí ..  nos ahorraremos un montón de posibles problemas con las particiones …😂😂😂

Tan sólo habrá que ir, desde XenCenter, a Añadir Nuevo Almacenamiento (New Storage), y una vez allí añadir una librería ISO. Los siguientes pasos son intuitivos, dirección del recurso, usuario y contraseñas, etc…

isolibrary

Referencias:

http://self_loving.blogspot.com.es/2016/04/crear-un-local-repository-para-isos-en.html

http://support.citrix.com/article/CTX130897

Deja un comentario

Tu dirección de correo electrónico no será publicada.

5 + 2 =