GNU/Linux >> Linux の 問題 >  >> Ubuntu

Ubuntu20.04にWebVirtCloudKVMManagementをインストールする方法

WebVirtCloudは、KVM仮想化用のWebベースの管理ツールです。これにより、管理者とユーザーは、KVMハイパーバイザーで実行されている仮想マシンをWebインターフェイスから作成、管理、および削除できます。 Django上に構築されており、ユーザーベースの承認と認証をサポートしています。 WebVirtCloudを使用すると、複数のQEMU / KVMハイパーバイザーの管理、ハイパーバイザーネットワークの管理、およびデータストアプールの管理を1回のインストールで実行できます。

このチュートリアルでは、Ubuntu20.04にWebVirtCloudKVM管理ツールをインストールする方法を紹介します。

前提条件
  • Ubuntu20.04を実行しているサーバー。
  • ルートパスワードはサーバーで構成されています。
はじめに

まず、次のコマンドを実行して、システムパッケージを更新されたバージョンに更新します。

apt-get update -y

すべてのパッケージが更新されたら、次のステップに進むことができます。

仮想化サポートの確認

開始する前に、オペレーティングシステムがハードウェア仮想化をサポートしているかどうかを確認する必要があります。

次のコマンドを実行して確認します。

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

出力が0より大きい場合、オペレーティングシステムはハードウェア仮想化をサポートしています。

2

次に、システムがKVM仮想マシンを実行できるかどうかも確認する必要があります。

これを行うには、次のコマンドを使用してcpu-checkerをインストールします。

apt-get install cpu-checker -y

インストールしたら、次のコマンドを実行して確認します。

kvm-ok

次の出力が表示されます。

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

終了したら、次のステップに進むことができます。

KVMハイパーバイザーをインストールする

次に、サーバーにKVMをインストールする必要があります。次のコマンドを使用して、必要なすべてのツールを使用してKVMをインストールできます。

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

インストール後、KVMモジュールがロードされているかどうかを確認する必要があります。次のコマンドで確認できます:

lsmod | grep -i kvm

次の出力が表示されます。

kvm_intel             286720  0
kvm                   663552  1 kvm_intel

次に、次のコマンドを使用してlibvirtdサービスのステータスを確認します。

systemctl status libvirtd

次の出力が表示されます。

? 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

完了したら、次のステップに進むことができます。

Nginxおよびその他のパッケージをインストールする

次に、Nginx、Python、およびその他の必要なパッケージをサーバーにインストールする必要があります。次のコマンドですべてをインストールできます:

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

すべてのパッケージがインストールされたら、次のステップに進むことができます。

WebVirtCloudのインストールと構成

まず、次のコマンドを使用して、Gitリポジトリから最新バージョンのWebVirtCloudをダウンロードします。

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

ダウンロードが完了したら、ディレクトリをwebvirtcloudに変更し、サンプルのsetting.pyファイルをコピーします。

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

次に、次のコマンドを使用して秘密鍵を生成します。

openssl rand -base64 32

次の出力が得られるはずです:

mTHhsUm5adG8DABJaIvmRLpQjNbL1vdeIpBDi/jQCV0=

次に、settings.pyファイルを編集し、シークレットキーを定義します。

nano webvirtcloud/settings.py

次の行を変更します:

SECRET_KEY = "mTHhsUm5adG8DABJaIvmRLpQjNbL1vdeIpBDi/jQCV0="

ファイルを保存して閉じてから、WebVirtCloud構成ファイルをNginxおよびSupervisorディレクトリにコピーします。

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

次に、ホームディレクトリに戻り、webvirtcloudディレクトリを/srvディレクトリに移動します。

cd ..
mv webvirtcloud /srv/

次に、webvirtcloudディレクトリに適切な所有権を設定します:

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

次に、ディレクトリをwebvirtcloudに変更し、仮想環境を作成します。

cd /srv/webvirtcloud/
virtualenv -p python3 venv

次に、次のコマンドを使用して仮想環境をアクティブ化します。

source venv/bin/activate

次に、次のコマンドを使用して、必要なPython依存関係をインストールします。

pip install -r conf/requirements.txt

次の出力が表示されます。

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

次に、migrateコマンドを実行して、すべてのテーブルを生成します。

python3 manage.py migrate

次の出力が表示されます。

  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

次に、次のコマンドを使用してPython仮想環境から非アクティブ化します。

deactivate

次に、次のコマンドを使用して、webvirtcloudディレクトリに適切な所有権を設定します。

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

次に、Nginxのデフォルトの仮想ホスト構成ファイルを削除します。

rm /etc/nginx/sites-enabled/default

次に、NginxおよびSupervisorサービスを再起動して、変更を適用します。

systemctl restart nginx
systemctl restart supervisor

これで、次のコマンドを使用してNginxのステータスを確認できます。

systemctl status nginx

次の出力が表示されます。

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

KVMとLibvirtのセットアップ

次に、次のスクリプトを実行してKVMとLibvirtをセットアップします。

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

次の出力が表示されます。

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

最後に、次のコマンドを使用して、KVMユーザーをwww-dataグループに追加します。

adduser www-data kvm

WebVirtCloudにアクセス

この時点で、WebVirtCloudがインストールおよび構成されています。 WebVirtCloudWebインターフェイスにアクセスするときが来ました。

Webブラウザーを開き、URL http:// your-server-ipを入力します 。 WebVirtCloudログインページにリダイレクトされます:

デフォルトのユーザー名とパスワードをadmin/adminとして指定し、サインインをクリックします ボタン。次のページにWebVirtCloudダッシュボードが表示されます。

結論

おめでとう!これで、Ubuntu20.04サーバーにWebVirtCloudが正常にインストールされました。これで、Webベースのインターフェイスから仮想マシンを作成および管理できます。ご不明な点がございましたら、お気軽にお問い合わせください。


Ubuntu
  1. Ubuntu20.04にKvmをインストールする方法

  2. Ubuntu16.04にRをインストールする方法

  3. Ubuntu18.04にGoをインストールする方法

  1. Ubuntu20.04にKVMをインストールする方法

  2. Ubuntu20.04にRをインストールする方法

  3. Ubuntu18.04にGoをインストールする方法

  1. Ubuntu18.04にRをインストールする方法

  2. Ubuntu18.04にKvmをインストールする方法

  3. Ubuntu16.04にMySQLクラスターをインストールする方法