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 existirán pasos adicionales y la configuración de red puede ser distinta.
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.
Important Para fines prácticos, el nombre del host (hostname) estará identificado con el nombre de qvdhost, en su caso deberá reemplazarlo por el nombre correspondiente a su servidor.

2. Requisitos

2.1. Sistema operativo

  • Para descargar SLES 15 SP3 puedes ir directamente al sitio web www.suse.com a su sección de descargas.

Important Para realizar la descarga de la iso es necesario tener una cuenta de suse, puede registrarse con una cuenta gratuita la cual le permitira descargar una copia de evaluación por un periodo de 60 días (La duración de este periodo depende directamente de SUSE).

2.2. Hardware

  • 2 núcleos de CPU

  • 2 GB de RAM

  • Disco duro de al menos 20GB

2.3. Base de datos

  • PostgreSQL 13.6 o superior

2.4. HKD

3. Pre-instalación

Abrir los puertos que serán necesarios para realizar la configuración:

firewall-cmd --zone=public --add-service=ssh --permanent
firewall-cmd --zone=public --add-service=https --permanent
firewall-cmd --reload
Note Si el servidor tiene ambiente gráfico y las pruebas se van a realizar en el mismo, no es necesario abrir dichos puertos

Agregar el repositorio para descargar los paquetes comerciales, se solicitará usuario y contraseña:

rpm --import https://www.theqvd.com/packages/key/public.key
zypper ar http://theqvd.com/commercial-packages/sles/15SP3/QVD-4.2.0 QVD-4.2
 Nombre de usuario: [Escriba el nombre del usuario]
 Contraseña: [Escriba la contraseña]
zypper ref
Note $USUARIO y $PASSWORD son las credenciales recibidas al comprar la suscripción.
Note Es posible que deba proporcionar su disco de instalación para completar la operación.

Instale las herramientas necesarias

zypper install -y bridge-utils

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

zypper install -y postgresql-server
systemctl start postgresql.service

Habilite el servicio de postgres para que arranque al iniciar el servidor

systemctl enable --now postgresql.service

4.1. Crear una cuenta de usuario

su - postgres
postgres@qvdhost:~$ createuser -SDRP qvd
Ingrese la contraseña para el nuevo rol: passw0rd
Ingrésela nuevamente: passw0rd

4.2. Crear la base de datos QVD

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

4.3. Cambiar la configuración de PostgreSQL

Edite el archivo /var/lib/pgsql/data/pg_hba.conf y agregue la siguiente línea al inicio de la sección:

# TYPE  DATABASE        USER            ADDRESS                 METHOD
host    qvddb           qvd             127.0.0.1/32            md5

Edite el archivo /var/lib/pgsql/data/postgresql.conf y establezca los siguientes parámetros:

listen_addresses = '*'
default_transaction_isolation = 'serializable'

Reinicie PostgreSQL.

systemctl restart postgresql.service

5. Instalación del HKD

zypper install -y perl-QVD-HKD

5.1. Configuración básica

Copie el archivo de configuración ejemplo al directorio /etc/qvd/, guárdelo como node.conf y modifique los permisos del mismo:

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

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

nodename=qvdhost
database.host=127.0.0.1
database.name=qvddb
database.user=qvd
database.password=passw0rd

5.2. 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
zypper install -y openssl
mkdir /etc/qvd/certs
cd /etc/qvd/certs

Genere una clave privada.

openssl genrsa 2048 > key.pem

Genere 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

zypper install -y perl-QVD-API

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

database.host=127.0.0.1
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 habilitar la API.

systemctl enable --now qvd-api

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

zypper install -y 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:

.----+------------+----------+-------.
| id | name       | language | block |
+----+------------+----------+-------+
|  1 | superadmin | auto     |    10 |
|  2 | admin      | auto     |    10 |
'----+------------+----------+-------'
Total: 2

6.4. WAT

zypper install -y 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

rpm -q dnsmasq

Si no está instalado:

zypper install -y dnsmasq
[ `systemctl is-enabled dnsmasq.service` == "enabled" ] && systemctl disable dnsmasq.service || echo "success disabled"

7.1.2. Configurar el reenvío IP

Busque en los ficheros .conf dentro de /etc/sysctl.d/ y añada/descomente la línea:

net.ipv4.ip_forward=1

Ejecute:

sysctl -p

7.1.3. Configurar un puente de red

Abra Yast y vaya a System → Network Settings

yast

images/QVDInstallationSLES_Yast_step1.png

  • Seleccione la opción Añadir.

images/QVDInstallationSLES_Yast_step2.png

Seleccione el tipo Puente y Seleccione Siguiente

images/QVDInstallationSLES_Yast_step3.png

Defina las opciones siguientes:

Pestaña General

  • Nombre de la configuración: qvdnet0

  • Activación del dispositivo\Activar dispositivo: Durante el arranque

  • Zona de cortafuegos\Asignar interfaces… public

  • Unidad de Transmisión Máxima (MTU)\Definir MTU: 0

images/QVDInstallationSLES_Yast_step4.png

Pestaña Dirección

  • (x) Dirección IP asignada estáticamente

  • Dirección IP: 10.3.15.1

  • Máscara de subred: /24

  • Nombre de host: qvdhost

images/QVDInstallationSLES_Yast_step5.png

Seleccione Siguiente * El dispositivo de red se configurará automáticamente en unos segundos. *Seleccione Ok para salvar la configuración. *Salga de Yast

Ejecute también los siguientes comandos:

firewall-cmd --permanent --direct --passthrough ipv4 -t nat -I POSTROUTING -o eth0 -j MASQUERADE -s 10.3.15.0/24
firewall-cmd --change-interface=eth0 --zone=external --permanent
firewall-cmd --set-default-zone=external
firewall-cmd --change-interface=qvdnet0 --zone=internal --permanent
firewall-cmd --zone=external --add-forward-port=port=8443:proto=tcp:toport=8443:toaddr=10.3.15.1 --permanent
Note El rango 10.3.15.0/24 debe ser único dentro de su infraestructura. NOTE: cambie la interface eth0 por la correspondiente a su servidor

Levante el puente 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: "/etc/ssl"
Note Si en su caso devuelve otro directorio, utilícelo en lugar de /etc/ssl para los siguientes pasos.

Los certificados de confianza se almacenan en /etc/ssl/certs

trusted_ssl_path=/etc/ssl
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

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

qa4 host new name=qvdhost,address=10.3.15.1

Y habilite el servicio HKD:

systemctl enable --now 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.