Noticia CentOS 7 Hypervisor I – Redes PYMES

¡Estimados Lectores!

En ocasiones nos enfrentamos a Servidores Profesionales que solo admiten determinados Sistemas Operativos durante su Aprovisionamiento – Provisioning inicial. Personalmente nos hemos encontrado con servidores que, durante ese proceso, solo soportan los siguientes:

  • Microsoft Windows Server 2003 y familia
  • Microsoft Windows Server 2008 y familia
  • Microsoft Windows Server 2012 y familia
  • Red Hat Enterprise Linux RHEL 4, 6 y 7
  • SUSE Linux Enterprise Server 12

¿Debian, Ubuntu, otro…?. Nada. Lo anterior no quiere decir que no podamos instalar un sistema operativo diferente, pero ¿que pasará con la garantía, drivers, parches, actualizaciones, etcétera?. Que cada lector saque sus propias conclusiones.

Hoy me enteré mediante comunicación personal con mi amigo y colega Julio Cesar Carballo -trabaja en un Data Center importante- que estuvo aproximadamente 10 días instalando unos 180 servidores profesionales “desde sus cajas al rack con cableado total incluido” con el sistema operativo Ubuntu.

Técnicamente es posible utilizar Debian, Ubuntu, CentOS – RHEL, SuSE, u otro sistema operativo UNIX Like -a pesar del systemd– recomendado para tal trabajo, como soporte de virtualización en servidores profesionales de cualquier gama.

En éste artículo no ofreceremos muchos enlaces entre líneas, porque suponemos hayan seguido hasta aquí los anteriores posts de la serie “Redes de Computadoras para las PYMES“, y que ya estén familiarizados con los nombres, siglas y definiciones. ¿Cuales son esas páginas?:


Y aunque no sea específicamente de la serie, es muy útil la lectura del siguiente artículo, pues justifica en parte la elección de las distribuciones Linux que hemos hecho para la mencionada serie de posts:


Hoy intentamos ofrecer una Guía para instalar un Hipervisor con CentOS – CentOS Hypervisor. Cada lector debe adaptarla acorde al hardware de su servidor, y a los requisitos del fabricante. Hemos dejado para el final la Instalación Paso a Paso mediante Imágenes, para facilitar la lectura de éste artículo.

  • Tengamos presente que Red Hat, Inc. es el patrocinador principal de CentOS, y de que Red Hat, Inc es quién mantiene el desarrollo de libvirt, virt-manager, oVirt, y de prácticamente la mayor parte de lo relacionado con la virtualización mediante Qemu-KVM y su administración.
Ajustes mínimos después de la instalación paso a paso


Para facilitarnos la vida, pues aun no tenemos un DNS en la LAN, modificamos un poco el archivo /etc/host:

[root@centos7 ~]# nano /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
10.10.10.4 centos7.desdelinux.fan centos
10.10.10.1 sysadmin.desdelinux.fan sysadmin

Declaramos de forma definitiva los repositorios que vamos a utilizar y actualizamos el sistema:

[root@centos7 ~]# cd /etc/yum.repos.d/
[root@centos7 yum.repos.d]# ls -l

total 28
-rw-r--r--. 1 root root 1664 dic 9 2015 CentOS-Base.repo
-rw-r--r--. 1 root root 1309 dic 9 2015 CentOS-CR.repo
-rw-r--r--. 1 root root 649 dic 9 2015 CentOS-Debuginfo.repo
-rw-r--r--. 1 root root 290 dic 9 2015 CentOS-fasttrack.repo
-rw-r--r--. 1 root root 630 dic 9 2015 CentOS-Media.repo
-rw-r--r--. 1 root root 1331 dic 9 2015 CentOS-Sources.repo
-rw-r--r--. 1 root root 1952 dic 9 2015 CentOS-Vault.repo

Por supuesto que es saludable leer el contenido de los archivos originales de declaración de los repositorios recomendados por CentOS. Los cambios que aquí realizamos se deben a que no disponemos de un acceso a Internet y trabajamos con repositorios locales descargados desde la WWW.

[root@centos7 yum.repos.d]# mkdir originales
[root@centos7 yum.repos.d]# mv CentOS-* originales/

[root@centos7 yum.repos.d]# nano centos-base.repo

[centos-base]
name=CentOS-$releasever
baseurl=http://10.10.10.1/repos/centos/7/base/
gpgcheck=0
enabled=1

[root@centos7 yum.repos.d]# nano centos-updates.repo
[centos-updates]
name=CentOS-$releasever
baseurl=http://10.10.10.1/repos/centos/7/updates/x86_64/
gpgcheck=0
enabled=1

[root@centos7 yum.repos.d]# yum clean all
Complementos cargados:fastestmirror, langpacks
Limpiando repositorios: centos-base centos-updates
Cleaning up everything

[root@centos7 yum.repos.d]# yum update
Complementos cargados:fastestmirror, langpacks
centos-base | 3.4 kB 00:00
centos-updates | 3.4 kB 00:00
(1/2): centos-base/primary_db | 5.3 MB 00:01
(2/2): centos-updates/primary_db | 9.1 MB 00:01
Determining fastest mirrors
No packages marked for update

El mensaje “No (existen) paquetes marcados para actualizar” – “No packages marked for update” indica que, al declarar los repositorios más actualizados a nuestra disposición durante la instalación, se instalaron precisamente los paquetes mas actuales.

¿Cuáles paquetes relativos al Hipervisor se instalaron?


En la carpeta /root, el instalador Anaconda deja un archivo con los parámetros mas importantes que se utilizaron durante el despliegue de CentOS. Nosotros queremos conocer cuales paquetes se instalaron, ya que hasta ahora no hemos utilizado directamente el comando yum install <paquete>, al emplearse un instalador gráfico.

[root@centos7 ~]# cat anaconda-ks.cfg
....
%packages
@^virtualization-host-environment
@base
@compat-libraries
@core
@debugging
@virtualization-hypervisor
@virtualization-platform
@virtualization-tools

....

Los paquetes – packages con el símbolo @ al principio, indican a Grupos de Paquetes. En nuestro caso, para obtener el listado de los Grupos – Groups, tuvimos que adicionar el DVD de instalación a la declaración de repositorios:

[root@centos7 ~]# mount /dev/sr0 /media/
mount: /dev/sr0 is write-protected, mounting read-only

[root@centos7 ~]# nano /etc/yum.repos.d/centos-media.repo
[centos-media]
name=CentOS-$releasever
baseurl=file:///media
gpgcheck=0
enabled=1

[root@centos7 ~]# yum clean all
Complementos cargados:fastestmirror, langpacks
Limpiando repositorios: centos-base centos-media centos-updates
Cleaning up everything
Cleaning up list of fastest mirrors

[root@centos7 ~]# yum update
Complementos cargados:fastestmirror, langpacks
centos-base | 3.4 kB 00:00
centos-media | 3.6 kB 00:00
centos-updates | 3.4 kB 00:00
(1/4): centos-media/group_gz | 155 kB 00:00
(2/4): centos-media/primary_db | 5.3 MB 00:00
(3/4): centos-base/primary_db | 5.3 MB 00:00
(4/4): centos-updates/primary_db | 9.1 MB 00:01
Determining fastest mirrors
No packages marked for update

[root@centos7 ~]# yum repolist all
Complementos cargados:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
id del repositorio nombre del repositorio estado
centos-base CentOS-7 habilitado: 9,007
centos-media CentOS-7 habilitado: 9,007
centos-updates CentOS-7 habilitado: 2,560
repolist: 20,574

[root@centos7 ~]# yum group list
...
Grupos de Entorno Disponibles:
Instalación mínima
Compute Node
Servidor de infraestructura
Servidor y archivo de impresión
Servidor web básico
Host de virtualización
Servidor con GUI
Escritorio Gnome
Espacios de trabajo Plasma KDE
Desarrollo y estación de trabajo Creativa
Grupos disponibles:
Administración de sistemas
Bibliotecas compatibles
Compatibilidad con legado de UNIX
Herramientas de Administración de sistemas
Herramientas de desarrollo
Herramientas de seguridad
Herramientas gráficas de Administración
Herramientas para consola de Internet.
Soporte científico
Soporte para tarjeta inteligente
...

ó

[root@centos7 ~]# yum groups list id
Complementos cargados:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
Grupos de Entorno Disponibles:
Instalación mínima (minimal)
Compute Node (compute-node-environment)
Servidor de infraestructura (infrastructure-server-environment)
Servidor y archivo de impresión (file-print-server-environment)
Servidor web básico (web-server-environment)
Host de virtualización (virtualization-host-environment)
Servidor con GUI (graphical-server-environment)
Escritorio Gnome (gnome-desktop-environment)
Espacios de trabajo Plasma KDE (kde-desktop-environment)
Desarrollo y estación de trabajo Creativa (developer-workstation-environment)
Grupos instalados:
Bibliotecas compatibles (compat-libraries)
Compatibilidad con legado de UNIX (legacy-unix)
Herramientas de Administración de sistemas (system-admin-tools)
Herramientas de seguridad (security-tools)
Grupos disponibles:
Administración de sistemas (system-management)
Herramientas de desarrollo (development)
Herramientas gráficas de Administración (graphical-admin-tools)
Herramientas para consola de Internet. (console-internet)
Soporte científico (scientific)
Soporte para tarjeta inteligente (smart-card)

Durante la instalación seleccionamos la opción principal Host de Virtualización y dentro de ella a la Plataforma de Virtualización:

[root@centos7 ~]# yum groupinfo virtualization-host-environment
----
Grupo de Entorno: Host de virtualización
Id de Entorno: virtualization-host-environment
Descripción: Host de virtualización mínima.
Grupos Obligatorios:
base
core
virtualization-hypervisor
virtualization-tools

Grupos Opcionales:
debugging
+network-file-system-client
+remote-system-management
virtualization-platform

[root@centos7 ~]# yum groupinfo virtualization-hypervisor

....
Grupo: Hipervisor de virtualización
Group-Id: virtualization-hypervisor
Descripción: La instalación de host de virtualización más pequeña posible.
Paquetes obligatorios:
=libvirt
=qemu-kvm
Paquetes opcionales:
qemu-kvm-tools

[root@centos7 ~]# yum groupinfo virtualization-tools
....
Grupo: Herramientas de virtualización
Group-Id: virtualization-tools
Descripción: Herramientas para gestión de imagen virtual desconectada.
Paquetes predeterminados:
=libguestfs
Paquetes opcionales:
libguestfs-java
libguestfs-tools
libguestfs-tools-c

[root@centos7 ~]# yum groupinfo virtualization-platform
....
Grupo: Plataforma de virtualización
Group-Id: virtualization-platform
Descripción: Proporciona una interfaz para acceder y controlar huéspedes y contenedores virtualizados.
Paquetes obligatorios:
libvirt
=libvirt-client
=virt-who
Paquetes opcionales:
fence-virtd-libvirt
fence-virtd-multicast
fence-virtd-serial
libvirt-cim
libvirt-java
libvirt-snmp
perl-Sys-Virt

Otra forma de obtener el Listado Completo de los Paquetes Instalados es la siguiente:

[root@centos7 ~]# yum list installed
[root@centos7 ~]# yum list installed > instalados.txt


Relativos al Hypervisor

[root@centos7 ~]# egrep "(vir|kvm|qemu)" instalados.txt
ipxe-roms-qemu.noarch 20130517-8.gitc4bce43.el7_2.1 @Updates
libvirt.x86_64 1.2.17-13.el7_2.5 @Updates
libvirt-client.x86_64 1.2.17-13.el7_2.5 @Updates
libvirt-daemon.x86_64 1.2.17-13.el7_2.5 @Updates
libvirt-daemon-config-network.x86_64 1.2.17-13.el7_2.5 @Updates
libvirt-daemon-config-nwfilter.x86_64 1.2.17-13.el7_2.5 @Updates
libvirt-daemon-driver-interface.x86_64 1.2.17-13.el7_2.5 @Updates
libvirt-daemon-driver-lxc.x86_64 1.2.17-13.el7_2.5 @Updates
libvirt-daemon-driver-network.x86_64 1.2.17-13.el7_2.5 @Updates
libvirt-daemon-driver-nodedev.x86_64 1.2.17-13.el7_2.5 @Updates
libvirt-daemon-driver-nwfilter.x86_64 1.2.17-13.el7_2.5 @Updates
libvirt-daemon-driver-qemu.x86_64 1.2.17-13.el7_2.5 @Updates
libvirt-daemon-driver-secret.x86_64 1.2.17-13.el7_2.5 @Updates
libvirt-daemon-driver-storage.x86_64 1.2.17-13.el7_2.5 @Updates
libvirt-daemon-kvm.x86_64 1.2.17-13.el7_2.5 @Updates
libvirt-python.x86_64 1.2.17-2.el7 @Base
qemu-img.x86_64 10:1.5.3-105.el7_2.7 @Updates
qemu-kvm.x86_64 10:1.5.3-105.el7_2.7 @Updates
qemu-kvm-common.x86_64 10:1.5.3-105.el7_2.7 @Updates
virt-what.x86_64 1.13-6.el7 @Base
virt-who.noarch 0.14-9.el7_2.1 @Updates

Observemos que en la salida anterior se muestra desde cual repositorio fue instalado cada paquete individual. De paso, comprobamos de forma indirecta que estamos trabajando con la versión CentOS 7.2. Tambié podemos ver que, con el filtro empleado sobre la lista de paquetes no se muestra, por ejemplo, el paquete libguestfs que también forma parte de la Plataforma de Virtualización.

Sugerimos naveguen un poco por la Lista de Paquetes Instalados.

Operaciones finales… o casi


Terminar la configuración del hipervisor centos7.desdelinux.fan y crear su primera máquina virtual, de forma remota, como indicamos en el artículo Virt-Manager y virsh: Administración Remota vía SSH.

Para los lectores que prefieren a la siempre maltratada Consola, dedicaremos el próximo artículo “CentOS 7 Hypervisor: Administración remota” en el que usaremos principalmente los comandos virsh y virt-install ejecutados remotamente desde nuestra estación de trabajo sysadmin.desdelinu.fan.

Instalación Paso a Paso mediante imágenes

Observaciones:

  • Las imágenes se explican por si solas. El instalador Anaconda de CentOS es una herramienta muy poderosa en su clase
  • Los valores mostrados son solamente para pruebas y en ningún momento se deben tomar como recomendados u oficiales
  • El orden seguido para satisfacer las demandas del instalador, son a modo de ejemplo nada mas
  • El que no hayamos seleccionado Política de Seguridad – SECURITY POLICY alguna, no significa que Usted deba hacerlo. Es más, lo invitamos a que la utilice
  • Con la opción KDUMP sucede igual que en el punto anterior
  • En la configuración de la Red, no tocamos muchas opciones porque no las necesitamos para confeccionar nuestro servidor virtual de pruebas. De más está decir que, aunque de pruebas sea, funciona muy correctamente
  • El tipo de particionado y el tamaño de sus particiones son un ejemplo y nada mas
  • La SELECCIÓN DE SOFTWARE es para obtener un Hypervisor con la cantidad mínima de paquetes instalados. Lo invitamos a Usted a que enriquezca su servidor en producción
  • Con respecto a la FUENTE DE INSTALACIÓN, repetimos que utilizamos repositorios locales por falta de conexión doméstica con la Internet. Trabajamos con repositorios locales descargados -por amigos y colegas- desde la WWW
  • Si después de reiniciar el sistema operativo al final de la instalación se le pide que lea y apruebe el Acuerdo de Licencia Final, el orden de las teclas es “1”, “2” y “c”, sin las comillas. De nada!.
    1f609.png
Galería de imágenes


01-1.png
02-1.png
03-1.png
04-1.png
05-1.png
06-1.png
07-1.png
08-1.png
09-1.png
10-1.png
11-1.png
12-1.png
13-1.png
14-1.png
15-1.png
16-1.png
17-1.png
18-1.png
19-1.png
20-1.png
21-1.png
22-1.png
23.1.png
23-1.png
24-1.png
25.png
26.png
27.png
28.png
29.png
30.png
31.png
32.png


El artículo CentOS 7 Hypervisor I – Redes PYMES aparece primero en CentOS 7 Hypervisor I – Redes PYMES.


3lYKPBgFaLw


Continúar leyendo...