python学习
webvirtmgr安装教程/管理界面安装
WebVirtMgr 是一个基于 Web 的虚拟机管理工具,主要用于通过浏览器管理 KVM (Kernel-based Virtual Machine) 虚拟化环境。它提供了一个直观的用户界面,允许用户创建、管理和监控虚拟机(VMs),而无需直接使用命令行工具(如 virsh)。
主要功能
虚拟机管理:
创建、启动、停止、暂停、恢复和删除虚拟机。
支持虚拟机快照(snapshot)管理。
控制台访问(通过 VNC 或 SPICE)。
存储管理:
管理存储池(Storage Pools)和磁盘镜像(如 QCOW2、RAW)。
网络管理:
配置虚拟网络(NAT、桥接等)。
资源监控:
查看 CPU、内存、磁盘和网络使用情况。
多主机支持:
可以管理多个 KVM 宿主机(Hypervisors)。
安装与部署
WebVirtMgr 通常部署在一台独立的服务器上(如 Ubuntu/Debian/CentOS),并通过 Web 界面连接和管理 KVM 宿主机。
1. 安装依赖
在 管理服务器(运行 WebVirtMgr 的机器)上安装必要的依赖:
复制
# Ubuntu/Debian
sudo apt update
sudo apt install git python3-pip python3-venv libvirt-dev nginx supervisor
# CentOS/RHEL
sudo yum install git python3-pip python3-virtualenv libvirt-devel nginx supervisor
# 注意centos7和8上安装的包名有差异
yum -y install git python-pip libvirt-python libxml2-python python-websockify supervisor nginx python-devel
2. 克隆 WebVirtMgr 仓库
复制
git clone https://github.com/retspen/webvirtmgr.git
cd webvirtmgr
3. 创建 Python 虚拟环境并安装依赖
复制
python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt
或 pip install -i https://pypi.douban.com/simple -r requirements.txt
注意centos:
将准备好的webvirtmgr-master.zip 上传至/usr/local/src/ 解压,文件夹webvirtmgr-master改为webvirtmgr
cd /usr/local/src/ #进入文件夹
unzip webvirtmgr-master.zip #解压
mv webvirtmgr-master webvirtmgr #改名
pip install -r requirements.txt
或 pip install -i https://pypi.douban.com/simple -r requirements.txt
4. 初始化数据库
复制
python manage.py migrate
python manage.py collectstatic
5. 创建管理员账户
复制
python manage.py createsuperuser
6. 配置 Nginx
编辑 /etc/nginx/sites-available/webvirtmgr(Ubuntu)或 /etc/nginx/conf.d/webvirtmgr.conf(CentOS):
nginx复制
server {
listen 80;
server_name your-domain-or-ip;
location /static/ {
root /path/to/webvirtmgr;
}
location / {
proxy_pass http://127.0.0.1:8000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
}
启用配置并重启 Nginx:
bash复制
sudo ln -s /etc/nginx/sites-available/webvirtmgr /etc/nginx/sites-enabled/ sudo systemctl restart nginx
7. 启动 WebVirtMgr
bash复制
gunicorn webvirtmgr.wsgi:application -b 127.0.0.1:8000
(建议用 supervisor 或 systemd 托管进程)
配置 KVM 宿主机
1.允许远程 libvirt 连接
编辑 /etc/libvirt/libvirtd.conf:
ini复制
listen_tls = 0
listen_tcp = 1
auth_tcp = "none"
编辑 /etc/default/libvirtd(Debian/Ubuntu)或 /etc/sysconfig/libvirtd(CentOS):
ini复制
LIBVIRTD_ARGS="--listen"
重启 libvirtd:
bash复制
sudo systemctl restart libvirtd
2.在 WebVirtMgr 中添加宿主机
登录 WebVirtMgr 控制台(http://your-server-ip)。
导航到 Servers > Add Server,输入 KVM 宿主机的 IP 和连接方式(如 qemu+tcp://host-ip/system)。
安全注意事项
不要直接暴露 WebVirtMgr 到公网,建议使用 VPN 或 SSH 隧道。
启用 HTTPS(通过 Let's Encrypt 或自签名证书)。
限制 libvirt 远程访问(如防火墙规则)。
替代方案
Cockpit:Red Hat 提供的轻量级 Web 管理工具(支持 KVM)。
Proxmox VE:功能更强大的虚拟化管理平台(基于 KVM + LXC)。
Kimchi:基于 HTML5 的 KVM 管理工具。
