نصب WebVirtCloud KVM Management در CentOS 8

در این مقاله به نحوه نصب WebVirtCloud KVM Management در CentOS 8 خواهیم پرداخت … ؛ WebVirtCloud ساخت رابط وب برای مدیران و کاربران مجازی سازی KVM است. WebVirtCloud به شما امکان می دهد ماشین های مجازی در حال اجرا بر روی هایپروایزر KVM را از یک کنسول وب بصری ایجاد، مدیریت و حذف کنید. یک نمایشگر noVNC یک کنسول گرافیکی کامل را به دامنه مهمان ارائه می دهد. در این مقاله ما نصب داشبورد مدیریت WebVirtCloud KVM را بر روی سیستم عامل لینوکس CentOS Stream 8 انجام می دهیم.

راه حل WebVirtCloud بر روی Python 3.x و Django 3.2 LTS ساخته شده است. اینها وابستگی های اصلی این نصب هستند. اما ما تمام مراحلی را که برای نصب داشبورد مدیریت WebVirtCloud KVM در CentOS Stream 8 استفاده خواهید کرد، در اختیار شما قرار می دهیم. برخی از ویژگی های کلیدی WebVirtCloud در زیر برجسته شده است:

  • مدیریت Hypervisor QEMU/KVM
  • مدیریت نمونه های QEMU/KVM – ایجاد، حذف و به روز رسانی نمونه
  • آمارهای مبتنی بر وب را برای Hypervisor & Instance ارائه می دهد
  • شما می توانید چندین Hypervisor QEMU/KVM را از یک نصب مدیریت کنید.
  • مدیریت شبکه هایپروایزر
  • مدیریت استخرهای Datastore در تنظیمات Hypervisor شما.
  • پشتیبانی از مجوز و احراز هویت مبتنی بر کاربر
  • دسترسی به کنسول نمونه با مرورگرها
  • از رابط منبع داده Cloud-init پشتیبانی می کند
  • رابط کاربری مدیریت برای Libvirt API
  • کاربر می تواند کلید عمومی SSH را به روت در Instance اضافه کند (فقط Ubuntu تست شده)
  • کاربر می تواند رمز عبور ریشه را در Instance تغییر دهد (فقط Ubuntu تست شده)

قبل از شروع این نصب، باید یک راه اندازی سرور Centos/OEL/RHEL 8 داشته باشید.

مرحله 1: به روز رسانی CentOS 8 / CentOS Stream 8

وارد نمونه شوید و اطمینان حاصل کنید که به روز رسانی انجام شده است:

sudo dnf -y update

اگر نیاز به تبدیل سرور CentOS 8 به CentOS Stream 8 دارید، راهنمای زیر را بررسی کنید:

  • نحوه تبدیل سرور CentOS 8 به CentOS Stream

مرحله 2: KVM را روی CentOS 8 / CentOS Stream 8 نصب کنید

مرحله بعدی نصب و پیکربندی KVM در CentOS 8 / CentOS Stream 8 است. ما یک راهنمای مفصل در این مورد در لینک زیر به اشتراک گذاشته شده است:

  • نحوه نصب و استفاده از KVM در CentOS Stream 8

اطمینان حاصل کنید که سرویس KVM libvirtd در حال اجرا است:

$ systemctl status libvirtd
● libvirtd.service - Virtualization daemon
   Loaded: loaded (/usr/lib/systemd/system/libvirtd.service; enabled; vendor preset: enabled)
   Active: active (running) since Mon 2021-06-21 20:29:16 CEST; 59s ago
     Docs: man:libvirtd(8)
           https://libvirt.org
 Main PID: 23126 (libvirtd)
    Tasks: 19 (limit: 32768)
   Memory: 15.3M
   CGroup: /system.slice/libvirtd.service
           ├─23126 /usr/sbin/libvirtd --timeout 120
           ├─23251 /usr/sbin/dnsmasq --conf-file=/var/lib/libvirt/dnsmasq/default.conf --leasefile-ro --dhcp-script=/usr/libexec/libvirt_leaseshelper
           └─23252 /usr/sbin/dnsmasq --conf-file=/var/lib/libvirt/dnsmasq/default.conf --leasefile-ro --dhcp-script=/usr/libexec/libvirt_leaseshelper

Jun 21 20:29:17 kvm-desktop dnsmasq[23251]: reading /etc/resolv.conf
Jun 21 20:29:17 kvm-desktop dnsmasq[23251]: using nameserver 213.133.100.100#53
Jun 21 20:29:17 kvm-desktop dnsmasq[23251]: using nameserver 213.133.99.99#53
Jun 21 20:29:17 kvm-desktop dnsmasq[23251]: using nameserver 213.133.98.98#53
Jun 21 20:29:17 kvm-desktop dnsmasq[23251]: using nameserver 2a01:4f8:0:1::add:9898#53
Jun 21 20:29:17 kvm-desktop dnsmasq[23251]: using nameserver 2a01:4f8:0:1::add:1010#53
Jun 21 20:29:17 kvm-desktop dnsmasq[23251]: using nameserver 2a01:4f8:0:1::add:9999#53
Jun 21 20:29:17 kvm-desktop dnsmasq[23251]: read /etc/hosts - 9 addresses
Jun 21 20:29:17 kvm-desktop dnsmasq[23251]: read /var/lib/libvirt/dnsmasq/default.addnhosts - 0 addresses
Jun 21 20:29:17 kvm-desktop dnsmasq-dhcp[23251]: read /var/lib/libvirt/dnsmasq/default.hostsfile

مرحله 3: داشبورد مدیریت WebVirtCloud KVM را در CentOS 8 / Stream 8 نصب کنید

اسکریپت نصب کننده را دانلود کنید:

curl -o webvirtcloud-install.sh https://raw.githubusercontent.com/retspen/webvirtcloud/master/install.sh

اسکریپت را با استفاده از دستور chmod قابل اجرا کنید:

chmod +x webvirtcloud-install.sh

سپس با اجرای اسکریپت با استفاده از دستور زیر، داشبورد مدیریت WebVirtCloud KVM را روی CentOS Stream 8 نصب کنید:

sudo ./webvirtcloud-install.sh

نصب را می توان روی ماشین مجازی، هاست فیزیکی یا خود میزبان KVM انجام داد.

در اولین اعلان با پیکربندی fqdn برای Nginx موافقت کنید:

WEBVIRTCLOUD

  Welcome to Webvirtcloud Installer for CentOS, Fedora, Debian and Ubuntu!

  The installer has detected centos version 8.
  Q. Do you want to configure fqdn for Nginx? (y/n) y

نام سرور/nginx fqdn را وارد کنید:

  Q. What is the FQDN of your server? (mykvm.example.com):
     Setting to mykvm.example.com

سرویس NOVNC و شماره پورت عمومی و آدرس گوش دادن را پیکربندی کنید:

  Q. Do you want to change NOVNC service port number?(Default: 6080)
     Setting novnc service port 6080

Q. Do you want to change NOVNC public port number for reverse proxy(e.g: 80 or 443)?(Default: 6080)
     Setting novnc public port 6080

Q. Do you want to change NOVNC host listen ip?(Default: 0.0.0.0)
     Setting novnc host ip 0.0.0.0

نصب بسته های وابستگی توسط اسکریپت انجام می شود و باید بلافاصله شروع شود:

* Adding wget & epel-release repository.
* Installing OS requirements.
  * Installing git
  * Installing python3-virtualenv
  * Installing python3-devel
  * libvirt-devel already installed
  * glibc already installed
  * Installing gcc
  * Installing nginx
  * Installing supervisor
  * Installing python3-lxml
  * Installing python3-libguestfs
  * iproute-tc already installed
  * Installing cyrus-sasl-md5

مانند تمام تنظیمات سرور و سایر سرویس ها

* Setting up hosts file.
* Creating webvirtcloud user.
* Cloning webvirtcloud from github to the web directory.
* Configuring settings.py file.
* Secret for Django generated: 0lbbiij(v+$8*r(o*l#wodwdry&3vu&!a8_#!xl68n*p)%endp
* Activate virtual environment.
Using base prefix '/usr'
New python executable in /srv/webvirtcloud/venv/bin/python3
Also creating executable in /srv/webvirtcloud/venv/bin/python
Installing setuptools, pip, wheel...done.
Running virtualenv with interpreter /bin/python3
* Install App's Python requirements.
Requirement already satisfied: pip in ./venv/lib/python3.6/site-packages (21.1.2)
* Django Migrate.
Operations to perform:
  Apply all migrations: accounts, admin, appsettings, auth, computes, contenttypes, instances, logs, otp_totp, sessions
Running migrations:
  No migrations to apply.
  Your models in app(s): 'accounts', 'appsettings', 'computes', 'instances', 'logs', 'otp_totp' have changes that are not yet reflected in a migration, and so won't be applied.
  Run 'manage.py makemigrations' to make new migrations, and then re-run 'manage.py migrate' to apply them.
! 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
Migrations for 'accounts':
  accounts/migrations/0006_auto_20210622_1626.py
    - Alter field id on userattributes
    - Alter field id on userinstance
    - Alter field id on usersshkey
Migrations for 'appsettings':
  appsettings/migrations/0006_alter_appsettings_id.py
    - Alter field id on appsettings
Migrations for 'computes':
  computes/migrations/0004_alter_compute_id.py
    - Alter field id on compute
Migrations for 'instances':
  instances/migrations/0010_auto_20210622_1626.py
    - Alter field id on flavor
    - Alter field id on instance
Migrations for 'logs':
  logs/migrations/0004_alter_logs_id.py
    - Alter field id on logs
Migrations for 'otp_totp':
  venv/lib/python3.6/site-packages/django_otp/plugins/otp_totp/migrations/0003_alter_totpdevice_id.py
    - Alter field id on totpdevice
* Configuring Nginx.
  * Copying Nginx configuration
* Configuring Supervisor.
  * Copying supervisor configuration
not running
* Setting Supervisor to start on boot and restart.
* Setting Nginx to start on boot and starting Nginx.

اگر نصب با موفقیت انجام شد، باید URL را برای دسترسی به کنسول وب webvirtcloud استفاده کنید.

***Open http://mykvm.example.com to login to webvirtcloud.***

* Cleaning up...
* Finished!

مرحله 4: به داشبورد وب WebVirtCloud دسترسی پیدا کنید

به http://serverip_or_hostname بروید و باید صفحه ورود را ببینید.

نصب WebVirtCloud KVM Management در CentOS 8

نصب WebVirtCloud KVM Management در CentOS 8

پیشنهاد ویژه قائم هاست خرید سرور مجازی ایران با هارد پرسرعت NVMe و ترافیک نامحدود با نصب و راه اندازی انواع سیستم عامل همچون لینوکس CentOS و Ubuntu با خدمات و پشتیبانی 24 ساعته حتی در ایام تعطیل ؛ جهت مشاوره و سوالات قبل از خرید از طریق ارسال تیکت با ما در ارتباط باشید.

اعتبار پیش فرض ورود به سیستم عبارتند از:

Username: admin
Password: admin

پس از اولین ورود، رمز عبور کاربر ادمین را در قسمت admin > Profile تغییر دهید

نصب WebVirtCloud KVM Management در CentOS 8

نصب WebVirtCloud KVM Management در CentOS 8

بر روی دکمه ” تغییر رمز عبور ” کلیک کنید.

نصب WebVirtCloud KVM Management در CentOS 8

رمز کاربری جدید را وارد کرده و تایید کنید.

نصب WebVirtCloud KVM Management در CentOS 8

مرحله 5: KVM Compute Hosts را برای مدیریت اضافه کنید

در سرور webvirtcloud خود کلیدهای ssh تولید کنید:

$ sudo -u nginx ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/var/lib/nginx/.ssh/id_rsa):
Created directory '/var/lib/nginx/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /var/lib/nginx/.ssh/id_rsa.
Your public key has been saved in /var/lib/nginx/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:H8fD+jjnaZQVjAj2sN3ObXpENOwwKQsogo1O2L/I5oM nginx@kvm-desktop
The key's randomart image is:
+---[RSA 3072]----+
|.=     .+. . =o  |
|+.+ . ...=o.=.+. |
|o  o .  ..oo.+.. |
| .  .     .= oo  |
| . . .  S . Bo+  |
|  + .    . +o=   |
| +        o.. .  |
|E o       .ooo   |
|   .      .=+    |
+----[SHA256]-----+

می توانید به صورت اختیاری StrictHostKeyChecking را غیرفعال کنید.

cat > /var/lib/nginx/.ssh/config << EOF
Host *
StrictHostKeyChecking no
EOF

مالکیت فایل پیکربندی SSH را به کاربر nginx تنظیم کنید :

chown nginx -R /var/lib/nginx/.ssh/config

تأیید کنید که فایل ها ساخته شده اند و قابل مشاهده هستند.

$ ls -lh /var/lib/nginx/.ssh/
total 12K
-rw-r--r-- 1 nginx root    32 Jun 22 17:01 config
-rw------- 1 nginx nginx 2.6K Jun 22 16:59 id_rsa
-rw-r--r-- 1 nginx nginx  571 Jun 22 16:59 id_rsa.pub

شما باید کلید عمومی webvirtcloud را در کلیدهای مجاز در گره محاسباتی آپلود کنید.

برای گره KVM محلی:

cat /var/lib/nginx/.ssh/id_rsa.pub >>~/.ssh/authorized_keys
cat ~/.ssh/authorized_keys

برای یک گره محاسباتی راه دور می توانید از ابزار ssh از سرور webvirtcloud استفاده کنید:

sudo -u nginx ssh-copy-id root@compute1
sudo -u nginx ssh-copy-id root@compute2

تست اتصال به عنوان کاربر nginx:

$ sudo -u nginx ssh root@127.0.0.1
Warning: Permanently added '127.0.0.1' (ECDSA) to the list of known hosts.
Last login: Tue Jun 22 19:44:38 2021 from 127.0.0.1

[root@kvm-desktop ~]# exit
logout
Connection to 127.0.0.1 closed.

از کنسول وب WebVirtCloud KVM Management به Computes بروید

نصب WebVirtCloud KVM Management در CentOS 8

روش اتصال SSH را انتخاب کنید تا گره های KVM خود را اضافه کنید و جزئیات گره KVM را وارد کنید – نام، IP/FQDN، نام کاربری ورود :

نصب WebVirtCloud KVM Management در CentOS 8

اگر همه چیز خوب پیش برود، وضعیت گره جدید باید « متصل » را نشان دهد.

نصب WebVirtCloud KVM Management در CentOS 8

به همین راحتی شما موفق به نصب و پیکربندی WebVirtCloud بر روی سیستم عامل CentOS شدید ، امیدواریم از این آموزش نهایت استفاده و لذت را برده باشید.

سایر مطالب مرتبط »

 

5/5 - (7 امتیاز)