GNU/Linux >> Tutoriels Linux >  >> Ubuntu

Comment installer WebVirtCloud KVM Management sur Ubuntu 20.04

WebVirtCloud est un outil de gestion basé sur le Web pour la virtualisation KVM. Il permet aux administrateurs et aux utilisateurs de créer, gérer et supprimer des machines virtuelles s'exécutant sur l'hyperviseur KVM à partir d'une interface Web. Il est construit sur Django et prend en charge l'autorisation et l'authentification basées sur l'utilisateur. Avec WebVirtCloud, vous pouvez gérer plusieurs hyperviseurs QEMU/KVM, gérer des réseaux d'hyperviseurs et gérer des pools de banques de données à partir d'une seule installation.

Dans ce tutoriel, je vais vous montrer comment installer l'outil WebVirtCloud KVM Management sur Ubuntu 20.04.

Prérequis

  • Un serveur exécutant Ubuntu 20.04.
  • Un mot de passe root est configuré sur le serveur.

Mise en route

Tout d'abord, mettez à jour les packages système vers la version mise à jour en exécutant la commande suivante :

apt-get update -y

Une fois tous les packages mis à jour, vous pouvez passer à l'étape suivante.

Vérifier la prise en charge de la virtualisation

Avant de commencer, vous devrez vérifier si votre système d'exploitation prend en charge la virtualisation matérielle ou non.

Exécutez la commande suivante pour le vérifier.

grep -E -c "vmx|svm" /proc/cpuinfo

Si la sortie est supérieure à 0, votre système d'exploitation prend en charge la virtualisation matérielle.

2

Ensuite, vous devrez également vérifier si votre système est capable d'exécuter des machines virtuelles KVM.

Pour cela, installez le cpu-checker avec la commande suivante :

apt-get install cpu-checker -y

Une fois installé, exécutez la commande suivante pour vérifier :

kvm-ok

Vous devriez voir le résultat suivant :

INFO: /dev/kvm exists
KVM acceleration can be used

Une fois que vous avez terminé, vous pouvez passer à l'étape suivante.

Installer l'hyperviseur KVM

Ensuite, vous devrez installer KVM sur votre serveur. Vous pouvez installer KVM avec tous les outils requis à l'aide de la commande suivante :

apt-get install qemu qemu-kvm libvirt-daemon bridge-utils virt-manager virtinst -y

Après l'installation, vous devrez vérifier si le module KVM a été chargé ou non. Vous pouvez le vérifier avec la commande suivante :

lsmod | grep -i kvm

Vous devriez voir le résultat suivant :

kvm_intel             286720  0
kvm                   663552  1 kvm_intel

Ensuite, vérifiez l'état du service libvirtd avec la commande suivante :

systemctl status libvirtd

Vous devriez voir le résultat suivant :

? libvirtd.service - Virtualization daemon
     Loaded: loaded (/lib/systemd/system/libvirtd.service; enabled; vendor preset: enabled)
     Active: active (running) since Sun 2021-08-01 04:57:14 UTC; 1min 3s ago
TriggeredBy: ? libvirtd-admin.socket
             ? libvirtd-ro.socket
             ? libvirtd.socket
       Docs: man:libvirtd(8)
             https://libvirt.org
   Main PID: 5236 (libvirtd)
      Tasks: 19 (limit: 32768)
     Memory: 16.2M
     CGroup: /system.slice/libvirtd.service
             ??5236 /usr/sbin/libvirtd
             ??5385 /usr/sbin/dnsmasq --conf-file=/var/lib/libvirt/dnsmasq/default.conf --leasefile-ro --dhcp-script=/usr/lib/libvirt/libvirt_>
             ??5386 /usr/sbin/dnsmasq --conf-file=/var/lib/libvirt/dnsmasq/default.conf --leasefile-ro --dhcp-script=/usr/lib/libvirt/libvirt_>

Aug 01 04:57:14 ubuntu2004 systemd[1]: Started Virtualization daemon.
Aug 01 04:57:15 ubuntu2004 dnsmasq[5385]: started, version 2.80 cachesize 150
Aug 01 04:57:15 ubuntu2004 dnsmasq[5385]: compile time options: IPv6 GNU-getopt DBus i18n IDN DHCP DHCPv6 no-Lua TFTP conntrack ipset auth net>
Aug 01 04:57:15 ubuntu2004 dnsmasq-dhcp[5385]: DHCP, IP range 192.168.122.2 -- 192.168.122.254, lease time 1h
Aug 01 04:57:15 ubuntu2004 dnsmasq-dhcp[5385]: DHCP, sockets bound exclusively to interface virbr0
Aug 01 04:57:15 ubuntu2004 dnsmasq[5385]: reading /etc/resolv.conf
Aug 01 04:57:15 ubuntu2004 dnsmasq[5385]: using nameserver 127.0.0.53#53
Aug 01 04:57:15 ubuntu2004 dnsmasq[5385]: read /etc/hosts - 5 addresses
Aug 01 04:57:15 ubuntu2004 dnsmasq[5385]: read /var/lib/libvirt/dnsmasq/default.addnhosts - 0 addresses
Aug 01 04:57:15 ubuntu2004 dnsmasq-dhcp[5385]: read /var/lib/libvirt/dnsmasq/default.hostsfile

Une fois que vous avez terminé, vous pouvez passer à l'étape suivante.

Installer Nginx et d'autres packages

Ensuite, vous devrez installer Nginx, Python et les autres packages requis sur votre serveur. Vous pouvez tous les installer avec la commande suivante :

apt-get install git virtualenv python3-virtualenv python3-dev python3-lxml libvirt-dev zlib1g-dev libxslt1-dev nginx supervisor libsasl2-modules gcc pkg-config python3-guestfs libsasl2-dev libldap2-dev libssl-dev -y

Une fois tous les packages installés, vous pouvez passer à l'étape suivante.

Installer et configurer WebVirtCloud

Tout d'abord, téléchargez la dernière version de WebVirtCloud depuis le dépôt Git à l'aide de la commande suivante :

git clone https://github.com/retspen/webvirtcloud

Une fois le téléchargement terminé, changez le répertoire vers le webvirtcloud et copiez l'exemple de fichier setting.py :

cd webvirtcloud
cp webvirtcloud/settings.py.template webvirtcloud/settings.py

Ensuite, générez une clé secrète avec la commande suivante :

openssl rand -base64 32

Vous devriez obtenir le résultat suivant :

mTHhsUm5adG8DABJaIvmRLpQjNbL1vdeIpBDi/jQCV0=

Ensuite, éditez le fichier settings.py et définissez votre clé secrète :

nano webvirtcloud/settings.py

Modifiez la ligne suivante :

SECRET_KEY = "mTHhsUm5adG8DABJaIvmRLpQjNbL1vdeIpBDi/jQCV0="

Enregistrez et fermez le fichier puis copiez le fichier de configuration de WebVirtCloud dans le répertoire Nginx et Supervisor :

cp conf/supervisor/webvirtcloud.conf /etc/supervisor/conf.d
cp conf/nginx/webvirtcloud.conf /etc/nginx/conf.d

Ensuite, retournez dans votre répertoire personnel et déplacez le répertoire webvirtcloud du répertoire /srv :

cd ..
mv webvirtcloud /srv/

Ensuite, définissez la propriété appropriée sur le répertoire webvirtcloud :

chown -R www-data:www-data /srv/webvirtcloud/

Ensuite, changez le répertoire en webvirtcloud et créez un environnement virtuel :

cd /srv/webvirtcloud/
virtualenv -p python3 venv

Ensuite, activez l'environnement virtuel avec la commande suivante :

source venv/bin/activate

Ensuite, installez les dépendances Python requises avec la commande suivante :

pip install -r conf/requirements.txt

Vous devriez voir le résultat suivant :

Successfully built libvirt-python qrcode rwlock websockify
Installing collected packages: sqlparse, pytz, asgiref, Django, soupsieve, beautifulsoup4, django-bootstrap5, django-icons, django-login-required-middleware, django-otp, segno, django-qr-code, gunicorn, six, libsass, libvirt-python, lxml, qrcode, rwlock, numpy, websockify, zipp, pyasn1, ldap3
Successfully installed Django-3.2.5 asgiref-3.4.1 beautifulsoup4-4.9.3 django-bootstrap5-2.0.1 django-icons-4.0.0 django-login-required-middleware-0.6.1 django-otp-1.0.6 django-qr-code-2.2.0 gunicorn-20.1.0 ldap3-2.9 libsass-0.21.0 libvirt-python-7.4.0 lxml-4.6.3 numpy-1.21.1 pyasn1-0.4.8 pytz-2021.1 qrcode-7.0 rwlock-0.0.7 segno-1.3.3 six-1.16.0 soupsieve-2.2.1 sqlparse-0.4.1 websockify-0.9.0 zipp-3.4.1

Ensuite, exécutez la commande migrate pour générer toutes les tables :

python3 manage.py migrate

Vous devriez voir le résultat suivant :

  Applying otp_totp.0001_initial... OK
  Applying otp_totp.0002_auto_20190420_0723... OK
  Applying sessions.0001_initial... OK
* Creating default admin user
! SHOW_PROFILE_EDIT_PASSWORD is found inside settings.py
* Applying permission can_change_password for all users
! Warning!!! Setting to True for all users
! Don`t forget to remove the option from settings.py
* Migrating can_clone_instaces user attribute to permission
* Applying permission passwordless_console for all users

Ensuite, désactivez depuis l'environnement virtuel Python avec la commande suivante :

deactivate

Ensuite, définissez la propriété appropriée sur le répertoire webvirtcloud avec la commande suivante :

chown -R www-data:www-data /srv/webvirtcloud/

Ensuite, supprimez le fichier de configuration de l'hôte virtuel par défaut Nginx :

rm /etc/nginx/sites-enabled/default

Ensuite, redémarrez le service Nginx et Supervisor pour appliquer les modifications :

systemctl restart nginx
systemctl restart supervisor

Vous pouvez maintenant vérifier l'état du Nginx avec la commande suivante :

systemctl status nginx

Vous devriez voir le résultat suivant :

? nginx.service - A high performance web server and a reverse proxy server
     Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)
     Active: active (running) since Sun 2021-08-01 10:35:57 UTC; 12s ago
       Docs: man:nginx(8)
    Process: 29055 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process on; (code=exited, status=0/SUCCESS)
    Process: 29068 ExecStart=/usr/sbin/nginx -g daemon on; master_process on; (code=exited, status=0/SUCCESS)
   Main PID: 29076 (nginx)
      Tasks: 3 (limit: 4691)
     Memory: 3.4M
     CGroup: /system.slice/nginx.service
             ??29076 nginx: master process /usr/sbin/nginx -g daemon on; master_process on;
             ??29077 nginx: worker process
             ??29078 nginx: worker process

Aug 01 10:35:57 ubuntu2004 systemd[1]: Starting A high performance web server and a reverse proxy server...
Aug 01 10:35:57 ubuntu2004 systemd[1]: Started A high performance web server and a reverse proxy server.

Configurer KVM et Libvirt

Ensuite, exécutez le script suivant pour configurer KVM et Libvirt :

wget -O - https://bit.ly/36baWUu | sh

Vous devriez voir le résultat suivant :

Length: 151 [text/plain]
Saving to: ‘/etc/supervisor/conf.d/gstfsd.conf’

/etc/supervisor/conf.d/gstfsd.conf  100%[==================================================================>]     151  --.-KB/s    in 0s      

2021-08-01 10:36:51 (5.50 MB/s) - ‘/etc/supervisor/conf.d/gstfsd.conf’ saved [151/151]

 *  INFO: Found function daemons_running_ubuntu
 * DEBUG: DAEMONS_RUNNING_FUNC=daemons_running_ubuntu
 *  INFO: Running daemons_running_ubuntu()

Enfin, ajoutez un utilisateur KVM au groupe www-data avec la commande suivante :

adduser www-data kvm

Accéder à WebVirtCloud

À ce stade, WebVirtCloud est installé et configuré. Il est temps d'accéder à l'interface Web de WebVirtCloud.

Ouvrez votre navigateur Web et saisissez l'URL http://your-server-ip . Vous allez être redirigé vers la page de connexion WebVirtCloud :

Indiquez le nom d'utilisateur et le mot de passe par défaut en tant qu'administrateur/administrateur et cliquez sur Connexion bouton. Vous devriez voir le tableau de bord WebVirtCloud sur la page suivante :

Conclusion

Toutes nos félicitations! vous avez installé avec succès WebVirtCloud sur le serveur Ubuntu 20.04. Vous pouvez désormais créer et gérer vos machines virtuelles à partir de l'interface Web. N'hésitez pas à me demander si vous avez des questions.


Ubuntu
  1. Comment installer KVM sur Ubuntu 20.04

  2. Comment installer R sur Ubuntu 20.04

  3. Comment installer Kvm dans Ubuntu 20.04

  4. Comment installer R sur Ubuntu 16.04

  5. Comment installer Go sur Ubuntu 18.04

Installez le tableau de bord Web WebVirtCloud KVM sur Ubuntu 20.04

Comment installer KVM sur Ubuntu 20.04 LTS

Comment installer Go dans Ubuntu 20.04

Comment installer digiKam - Logiciel de gestion de photos dans Ubuntu

Comment installer KVM sur Ubuntu 22.04

Comment installer Go sur Ubuntu 22.04