当前位置: 首页 >> K8s >> 【方案】centos7+qemu-kvm+webvirtmgr搭建kvm管理平台 >> 正文

【方案】centos7+qemu-kvm+webvirtmgr搭建kvm管理平台

2021年05月07日 08:49:05    作者:Jiaozn    分类:K8s     评论(0)

   本次测试基于centos x86_64,其实qemu-kvm是底层,webvirtmgr是控制面板,这两个可以互相分开的,只要建立一个管理通道连接就行了。首先说下kvm的安装,在母鸡上执行以下命令:

1.安装kvm软件包、一些管理工具包,开启kvm服务,并且设置其开机自动启动

yum install qemu-kvm libvirt libvirt-python libguestfs-tools virt-install bridge-utils novnc -y
systemctl start libvirtd
systemctl enable libvirtd  

2.准备 ISO 和 img 目录(后面会说到用处)

mkdir -p /home/kvm/img
mkdir -p /home/kvm/iso
cd /home/kvm/iso
wget http://mirrors.ircam.fr/pub/CentOS/7.3.1611/isos/x86_64/CentOS-7-x86_64-Minimal-1611.iso

3.kvm 服务器(客服端)配置与 webvirtmgr 服务器(服务端)连接

curl http://retspen.github.io/libvirt-bootstrap.sh | sudo sh

4.TCP 连接配置(https://github.com/retspen/webvirtmgr/wiki/Setup-TCP-Authorization

sudo saslpasswd2 -a libvirt zmrbk.com                  // 添加用户和设置密码。
sudo sasldblistusers2 -f /etc/libvirt/passwd.db   // 查看用户
virsh -c qemu+tcp://127.0.0.1/system nodeinfo     // 验证设置

以上在母鸡上就把kvm设置好了,以下是安装webvirtmgr,可以和母鸡装在一起,也可以装在另外的vps上。

前提说明:webvirtmgr要依靠nginx来反代他的服务,群友dane是基于oneinstack来搭建nginx环境的,我是基于宝塔面板搭建的,代码会有少许差异,想少走弯路的可以按照教程环境来,以下是在装好oneinstack后的脚本设置。

安装 WebVirtMgr

# 安装 python 设置 Django 环境

sudo yum -y install git python-pip libvirt-python libxml2-python python-websockify supervisor
sudo yum -y install gcc python-devel
sudo pip install numpy
cd /data/wwwroot/
git clone git://github.com/retspen/webvirtmgr.git
cd webvirtmgr
sudo pip install -r requirements.txt
./manage.py syncdb
./manage.py collectstatic

# 设置 Nginx

vim /usr/local/nginx/conf/nginx.conf

在server 段后追加

  server {
   listen 80; //80端口也可以改为其他端口,加强控制面板安全性
   server_name $hostname;

   location /static/ {
       root /data/wwwroot/webvirtmgr/webvirtmgr;
       expires max;
   }

   location / {
       proxy_pass http://127.0.0.1:8000;
       proxy_set_header X-Real-IP $remote_addr;
       proxy_set_header X-Forwarded-for $proxy_add_x_forwarded_for;
       proxy_set_header Host $host:$server_port;
       proxy_set_header X-Forwarded-Proto $scheme;
       proxy_connect_timeout 600;
       proxy_read_timeout 600;
       proxy_send_timeout 600;
       client_max_body_size 1024M;
   }
 }
chown -R www.www /data/wwwroot/webvirtmgr
nginx -t
sudo service nginx restart

# 设置 Supervisor

vim /etc/supervisord.d/webvirtmgr.ini     //这句命令只适用于centos7.x,centos6.x的完全不一样,之前自己安装过程中遇到的坑之一
[program:webvirtmgr]
command=/usr/bin/python /data/wwwroot/webvirtmgr/manage.py run_gunicorn -c /data/wwwroot/webvirtmgr/conf/gunicorn.conf.py
directory=/data/wwwroot/webvirtmgr
autostart=true
autorestart=true
logfile=/var/log/supervisor/webvirtmgr.log
log_stderr=true
user=www

[program:webvirtmgr-console]
command=/usr/bin/python /data/wwwroot/webvirtmgr/console/webvirtmgr-console
directory=/data/wwwroot/webvirtmgr
autostart=true
autorestart=true
stdout_logfile=/var/log/supervisor/webvirtmgr-console.log
redirect_stderr=true
user=www
systemctl restart supervisord
systemctl enable supervisord



除非注明,发表在“Jiaozn的博客”的文章『【方案】centos7+qemu-kvm+webvirtmgr搭建kvm管理平台』版权归Jiaozn所有。 转载请注明出处为“本文转载于『Jiaozn的博客』原地址https://jiaozn.com/reed/705.html

评论

发表评论   

昵称*

E-mail*

网站