openvz
Introducción
El OpenVZ es un projecto de virtualización basado en containers. OpenVz crea containers (tambien llamados Ves o VPSs) que son entidades independientes y que pueden poseer su propia IP , recursos, usuarios, etc... es decir es en si mismo un sistema independiente. El proyecto es la base de la versión comercial Parallels Virtuozo. Para más info: wiki.openvz.org
Instalación CentOs
La instalación del Openvz se puede realizar mediante repositorio:
cd /etc/yum.repos.d wget http.//download.openvz.org/openvz.repo rpm –import http://download.openvz.org/RPM-GPG-Key-OpenVZ
Una instalado el repositorio ya se puede instalar mediante yum el kernel necesario para ejecutar el openvz
yum install ovzkernel
Configuración
Configurar parametros del sistema operativo: (editar fichero sysctl.conf)
# On Hardware Node we generally need packet forwarding enabled and proxy arp disabled net.ipv4.ip_forward = 1 net.ipv6.conf.default.forwarding = 1 net.ipv6.conf.all.forwarding = 1 net.ipv4.conf.default.proxy_arp = 0 # Enables source route verification net.ipv4.conf.all.rp_filter = 1 # Enables the magic-sysrq key kernel.sysrq = 1 # We do not want all our interfaces to send redirects net.ipv4.conf.default.send_redirects = 1 net.ipv4.conf.all.send_redirects = 0
Y por último desactivar el selinux, en el fichero /etc/sysconfig/selinux realizar el siguiente cambio
SELINUX=disabled Reiniciar la máquina y cargar la opción con el ovzkernel.
Creación máquinas
Para la gestión de los containers es necesaria la instalación del vzctl
yum install vzctl vzquota
Arrancar el servicio
/sbin/service vz start
Antes de la creación de cualquier container tenemos que bajarnos los templates o crear uno especifico, para comenzar nos bajaremos un template ya creado.. Podemos bajar templates ya creados desde la siguiente dirección: [1]
Una vez ya tengamos los templates crearemos el container usando nuestro template:
vzctl create 1001 –ostemplate nombre_template
configurar los parametros del container
vzctl set --ipadd ipaddr --nameserver nameserverIP --hostname hostname --save
En este punto ya deberíamos ser capaces de arrancar la máquina
vzctl start vpsid
Para consultar los recursos que esta consumiendo
vzcalc -v vpsid
Para indicar que el container se inicie en el arranque:
vzctl set vpsid --onboot yes --save
Podemos realizar cambios del resto de parametros de la configuración de igual manera:
vzctl set vpsid --vmguarpages $((256 * 256)) --save
Toda la configuración se almacena en /etc/vz/conf/container_id.conf , así que ante grandes cambios se puede modificar directamente el fichero de configuración y el comando vzcfgvalidate para validar si el fichero de configuración es correcto.
Uso de Containers
Si en un momento dado necesitamos entrar en la máquina, lo haremos de la siguiente manera:
vzctl enter vpid
De esta forma entraremos directamente en la máquina como usuario root y sin que nos pida el password, realizaremos el trabajo que tengamos que hacer dentro de la máquina y saldremos de esta con un simple exit. Si lo que queremos es resetear el password, igual que con los cambios de configuración usaremos el vzctl
vzctl set vpsid --userpasswd user:passwd
Por último, si no queremos entrar,si no que simplemente queremos ejecutar un comando dentro de la maquina:
vzctl exec vpsid apt-get upgrade
Borrado de Containers
La última gestión que podemos realizar sobre el container es la eliminación del container, cuando se realiza no pide confirmación y elimina el container y todo el contenido, así que mejor pensarselo dos veces antes de dar al enter. Para eliminar un container lo que tenemos que hacer es llamaar a vzctl con el parametro destroy y el id del container.
vzctl destroy veid