GNU/Linux >> Linux Esercitazione >  >> Ubuntu

Come installare WebVirtCloud KVM Management su Ubuntu 20.04

WebVirtCloud è uno strumento di gestione basato sul Web per la virtualizzazione KVM. Consente ad amministratori e utenti di creare, gestire ed eliminare macchine virtuali in esecuzione su hypervisor KVM da un'interfaccia web. È basato su Django e supporta l'autorizzazione e l'autenticazione basate sull'utente. Con WebVirtCloud puoi gestire più hypervisor QEMU/KVM, gestire reti di hypervisor e gestire pool di datastore da un'unica installazione.

In questo tutorial, ti mostrerò come installare lo strumento di gestione KVM di WebVirtCloud su Ubuntu 20.04.

Prerequisiti

  • Un server che esegue Ubuntu 20.04.
  • Sul server è configurata una password di root.

Per iniziare

Innanzitutto, aggiorna i pacchetti di sistema alla versione aggiornata eseguendo il comando seguente:

apt-get update -y

Una volta aggiornati tutti i pacchetti, puoi procedere al passaggio successivo.

Verifica supporto per la virtualizzazione

Prima di iniziare, dovrai verificare se il tuo sistema operativo supporta o meno la virtualizzazione dell'hardware.

Esegui il comando seguente per verificarlo.

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

Se l'output è superiore a 0, il tuo sistema operativo supporta la virtualizzazione dell'hardware.

2

Successivamente, dovrai anche verificare se il tuo sistema è in grado di eseguire macchine virtuali KVM.

Per farlo, installa cpu-checker con il seguente comando:

apt-get install cpu-checker -y

Una volta installato, esegui il seguente comando per verificare:

kvm-ok

Dovresti vedere il seguente output:

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

Una volta terminato, puoi procedere al passaggio successivo.

Installa Hypervisor KVM

Successivamente, dovrai installare KVM sul tuo server. Puoi installare KVM con tutti gli strumenti richiesti utilizzando il seguente comando:

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

Dopo l'installazione, sarà necessario verificare se il modulo KVM è stato caricato o meno. Puoi verificarlo con il seguente comando:

lsmod | grep -i kvm

Dovresti vedere il seguente output:

kvm_intel             286720  0
kvm                   663552  1 kvm_intel

Quindi, controlla lo stato del servizio libvirtd con il seguente comando:

systemctl status libvirtd

Dovresti vedere il seguente output:

? 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

Una volta terminato, puoi procedere al passaggio successivo.

Installa Nginx e altri pacchetti

Successivamente, dovrai installare Nginx, Python e altri pacchetti richiesti sul tuo server. Puoi installarli tutti con il seguente comando:

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

Una volta installati tutti i pacchetti, puoi procedere al passaggio successivo.

Installa e configura WebVirtCloud

Innanzitutto, scarica l'ultima versione di WebVirtCloud dal repository Git utilizzando il seguente comando:

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

Una volta completato il download, cambia la directory in webvirtcloud e copia il file setting.py di esempio:

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

Quindi, genera una chiave segreta con il seguente comando:

openssl rand -base64 32

Dovresti ottenere il seguente output:

mTHhsUm5adG8DABJaIvmRLpQjNbL1vdeIpBDi/jQCV0=

Quindi, modifica il file settings.py e definisci la tua chiave segreta:

nano webvirtcloud/settings.py

Modifica la seguente riga:

SECRET_KEY = "mTHhsUm5adG8DABJaIvmRLpQjNbL1vdeIpBDi/jQCV0="

Salva e chiudi il file, quindi copia il file di configurazione di WebVirtCloud nella directory di Nginx e Supervisor:

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

Quindi, torna alla tua home directory e sposta la directory webvirtcloud nella directory /srv:

cd ..
mv webvirtcloud /srv/

Quindi, imposta la proprietà corretta sulla directory webvirtcloud:

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

Quindi, cambia la directory in webvirtcloud e crea un ambiente virtuale:

cd /srv/webvirtcloud/
virtualenv -p python3 venv

Successivamente, attiva l'ambiente virtuale con il seguente comando:

source venv/bin/activate

Quindi, installa le dipendenze Python richieste con il seguente comando:

pip install -r conf/requirements.txt

Dovresti vedere il seguente output:

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

Quindi, esegui il comando migrate per generare tutte le tabelle:

python3 manage.py migrate

Dovresti vedere il seguente output:

  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

Successivamente, disattiva dall'ambiente virtuale Python con il seguente comando:

deactivate

Quindi, imposta la proprietà corretta sulla directory webvirtcloud con il seguente comando:

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

Quindi, rimuovi il file di configurazione dell'host virtuale predefinito di Nginx:

rm /etc/nginx/sites-enabled/default

Quindi, riavvia il servizio Nginx e Supervisor per applicare le modifiche:

systemctl restart nginx
systemctl restart supervisor

Ora puoi verificare lo stato di Nginx con il seguente comando:

systemctl status nginx

Dovresti vedere il seguente output:

? 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.

Imposta KVM e Libvirt

Quindi, esegui il seguente script per configurare KVM e Libvirt:

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

Dovresti vedere il seguente output:

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()

Infine, aggiungi un utente KVM al gruppo www-data con il seguente comando:

adduser www-data kvm

Accedi a WebVirtCloud

A questo punto WebVirtCloud è installato e configurato. È ora di accedere all'interfaccia web di WebVirtCloud.

Apri il tuo browser web e digita l'URL http://your-server-ip . Verrai reindirizzato alla pagina di accesso di WebVirtCloud:

Fornisci nome utente e password predefiniti come amministratore/amministratore e fai clic su Accedi pulsante. Dovresti vedere la dashboard di WebVirtCloud nella pagina seguente:

Conclusione

Congratulazioni! hai installato con successo WebVirtCloud sul server Ubuntu 20.04. Ora puoi creare e gestire le tue macchine virtuali dall'interfaccia basata sul web. Sentiti libero di chiedermi se hai domande.


Ubuntu
  1. Come installare KVM su Ubuntu 20.04

  2. Come installare R su Ubuntu 20.04

  3. Come installare Kvm in Ubuntu 20.04

  4. Come installare R su Ubuntu 16.04

  5. Come installare Vai su Ubuntu 18.04

Installa WebVirtCloud KVM Web Dashboard su Ubuntu 20.04

Come installare KVM su Ubuntu 20.04 LTS

Come installare Go in Ubuntu 20.04

Come installare digiKam – Software di gestione delle foto in Ubuntu

Come installare KVM su Ubuntu 22.04

Come installare Vai su Ubuntu 22.04