1. Advertencias

Important La presente guía contiene los comandos necesarios para realizar una instalación de QVD mononodo, en la cual se instalarán todos los componentes en la misma máquina. En una instalación multinodo exitirán pasos adicionales y la configuración de red varía.
Important Durante el proceso se instalarán paquetes y se realizarán modificaciones de la configuración de red. Se recomienda utilizar un entorno de pruebas.

2. Requisitos

2.1. Base de datos

  • 2 núcleos de CPU

  • 2 GB de RAM

  • PostgreSQL 9.3 o superior

2.2. HKD

3. Pre-instalación

root@myserver:~# wget -qO - https://www.theqvd.com/packages/key/public.key | sudo apt-key add -
root@myserver:~# echo "deb http://theqvd.com/packages/ubuntu-xenial QVD-4.1.0 main" > /etc/apt/sources.list.d/qvd.list
root@myserver:~# apt-get update

Para paquetes comerciales:

root@myserver:~# wget -qO - https://www.theqvd.com/packages/key/public.key | sudo apt-key add -
root@myserver:~# echo "deb http://$USUARIO:$PASSWORD@theqvd.com/commercial-packages/ubuntu/xenial QVD-4.1.0 main" > \
/etc/apt/sources.list.d/qvd.list
root@myserver:~# apt-get update
Note $USUARIO y $PASSWORD son las credenciales recibidas al comprar la suscripción.

4. Instalación del HKD

root@myserver:~# apt-get install perl-qvd-hkd

5. Instalación y configuración de la base de datos

root@myserver:~# apt-get install postgresql
root@myserver:~# service postgresql start

5.1. Crear una cuenta de usuario

root@myserver:~# su - postgres
postgres@myserver:~$ createuser -SDRP qvd
Enter password for new role: passw0rd
Enter it again: passw0rd

5.2. Crear la base de datos QVD

postgres@myserver:~$ createdb -O qvd qvddb
postgres@myserver:~$ exit

5.3. Cambiar la configuración de PostgreSQL

Edite el archivo /etc/postgresql/9.3/main/pg_hba.conf y agregue al principio la línea siguiente:

host qvddb qvd 192.168.0.0/24 md5

Note Asegúrese de reemplazar la red predeterminada 192.168.0.0/24 con la red que utiliza su plataforma.

Edite el archivo /etc/postgresql/9.3/main/postgresql.conf y establezca los siguientes parámetros:

listen_addresses = '*'
default_transaction_isolation = 'serializable'

Reinicie PostgreSQL.

root@myserver:~# service postgresql restart

5.4. Configuración básica

root@myserver:~# cp -v /usr/lib/qvd/config/sample-node.conf /etc/qvd/node.conf
root@myserver:~# chown root:root /etc/qvd/node.conf
root@myserver:~# chmod 0640 /etc/qvd/node.conf

Edite el archivo /etc/qvd/node.conf y modifique/incluya las siguientes entradas:

nodename=qvdnode
database.host=localhost
database.name=qvddb
database.user=qvd
database.password=passw0rd

5.5. Población de las tablas de QVD

# /usr/lib/qvd/bin/qvd-deploy-db.pl

6. Instalación de las herramientas de administración

6.1. Configuración de SSL

Note Si ya tiene un certificado firmado por un tercero, puede omitir la creación de un certificado autofirmado y utilizar su certificado firmado.
Creación de un certificado autofirmado
# apt-get install openssl
# mkdir /etc/qvd/certs
# cd /etc/qvd/certs

Generar una clave privada.

# openssl genrsa 2048 > key.pem

Crear un certificado autofirmado.

# openssl req -new -x509 -nodes -sha256 -days 3650 -key key.pem > cert.pem
Note OpenSSL le pedirá que ingrese varios campos que requiere para el certificado. En el campo Nombre común debe insertar el nombre de dominio completo del host que ejecutará su nodo QVD.

6.2. API

root@myserver:~# apt-get install perl-qvd-api

Cree el fichero /etc/qvd/api.conf con el siguiente contenido:

database.host=localhost
database.name=qvddb
database.user=qvd
database.password=passw0rd
api.user=root
api.group=root
path.api.ssl=/etc/qvd/certs

Para ejecutar tanto el CLI como el WAT deberemos arrancar la API.

service qvd-api start

Haciendo una llamada al endpoint info desde el navegador o con el siguiente comando comprobaremos que la API está funcionando.

# curl -k https://localhost:443/api/info

Nos deberá devolver un JSON con datos del sistema.

6.3. CLI

root@myserver:~# apt-get install perl-qvd-admin4

Cree el fichero /etc/qvd/qa.conf con el siguiente contenido:

qa.url = https://localhost:443/
qa.tenant = *
qa.login = superadmin
qa.password = superadmin
qa.format = TABLE
qa.insecure = 1
Caution Esto es solo una guía de instalación para pruebas. Nunca para su uso en un entorno de producción. El parámetro qa.insecure deberá ser sustituido por el parámetro qa.ca con la ruta de su Autoridad de certificación.

Con el siguiente comando comprobaremos que el QA4 está funcionando.

# qa4 admin get

Nos deberá devolver los 2 administradores del sistema: admin y superadmin.

6.4. WAT

# apt-get install qvd-wat
Ejecutando el WAT

Visite https://localhost:443

Credenciales:

  • username: superadmin@*

  • password: superadmin

7. Configuración básica e indispensable

7.1. Configuración de red

7.1.1. Establecer dnsmasq para ser controlado por QVD

# dpkg -s dnsmasq

Si no está instalado:

# apt-get install dnsmasq
# service dnsmasq stop
# sed -i s/ENABLED=1/ENABLED=0/ /etc/default/dnsmasq

7.1.2. Configurar el reenvío IP

Edite el fichero /etc/sysctl.conf y descomente la línea:

net.ipv4.ip_forward=1

Ejecute:

# sysctl -p

7.1.3. Configurar un puente de red

Edite el archivo /etc/network/interfaces y agregue las líneas siguientes:

auto qvdnet0
iface qvdnet0 inet static
  pre-up brctl addbr qvdnet0
  pre-up iptables -t nat -A POSTROUTING -o eth0 -j SNAT --to-source 192.168.0.2
  pre-up iptables -t nat -A PREROUTING -d 192.168.0.2 -p tcp --dport 8443 -j DNAT --to-destination 10.3.15.1
  post-down brctl delbr qvdnet0
  address 10.3.15.1
  netmask 255.255.255.0
Note Necesitará cambiar la dirección IP 192.168.0.2 a la dirección IP de la interfaz de red a la que desea que sus clientes se conecten.
Note El rango 10.3.15.0/24 debe ser único dentro de su infraestructura.

Levante la interfaz de red:

# ifup qvdnet0

7.1.4. Configurar QVD para su red

# qa4 config set tenant_id=-1,key=vm.network.ip.start,value=10.3.15.50
# qa4 config set tenant_id=-1,key=vm.network.netmask,value=24
# qa4 config set tenant_id=-1,key=vm.network.gateway,value=10.3.15.1
# qa4 config set tenant_id=-1,key=vm.network.dns_server,value=10.3.15.254
# qa4 config set tenant_id=-1,key=vm.network.bridge,value=qvdnet0

7.2. Configurar QVD para usar los certificados SSL

# qa4 config ssl key=/etc/qvd/certs/key.pem, cert=/etc/qvd/certs/cert.pem
# openssl version -d

El directorio devuelto por el comando anterior devuelve por defecto:

OPENSSLDIR: "/usr/lib/ssl"
Note Si en su caso devuelve otro directorio, utilícelo en lugar de /usr/lib/ssl para los siguientes pasos.

Los certificados de confianza se almacenan en /usr/lib/ssl/certs

# trusted_ssl_path=/usr/lib/ssl/certs
# cert_path=/etc/qvd/certs/cert.pem
# cert_name=`openssl x509 -noout -hash -in $cert_path`.0
# cp $cert_path $trusted_ssl_path/QVD-L7R-cert.pem
# ln -s $trusted_ssl_path/QVD-L7R-cert.pem $trusted_ssl_path/$cert_name

7.3. Configurar nodo HKD

Edite el fichero /etc/qvd/node.conf con este contenido:

nodename = node1
database.host = localhost
database.name = qvddb
database.user = qvd
database.password = passw0rd

Ahora añada el nodo a la solución ejecutando:

# qa4 host new name=node1,address=10.3.15.1

Y arranque el servicio HKD:

# systemctl start qvd-hkd

8. ¿Y ahora qué?

Si ha tenido algún problema consulte la guía de instalación completa de QVD.

Si ya ha realizado todos los pasos de esta guía con éxito, enhorabuena, ya tiene una solución QVD instalada. A continuación debería de:

  • Configurar su primer OSF

  • Instalar su primera imagen

  • Agregar su primer usuario

  • Añadir una VM para su usuario

Le recomendamos que siga con la guía del WAT para realizar estos pasos.

Una vez finalizado solo le quedará:

  • Conectarse y probar la solución

Consulte la guía rápida para instalar el cliente QVD en su sistema.

Si tiene alguna pregunta o necesita soporte adicional, visite nuestro sitio web en http://theqvd.com/ o póngase en contacto con nosotros en info@theqvd.com.