1.安装KVM
检查环境是否支持KVM
cat /proc/cpuinfo | egrep 'vmx|svm'
若环境支持则有内容返回
关闭SELinux
vi /etc/sysconfig/selinux
修改 SELinux=enforcing 为 SELinux=disabled
使用yum软件包管理器安装kvm
yum -y install qemu-kvm python-virtinst libvirt libvirt-python virt-manager libguestfs-tools bridge-utils virt-install
检查KVM模块是否被加载
lsmod | grep kvm
若被正确加载则返回如下
kvm_intel 249856 0
kvm 655360 1
kvm_intel irqbypass 16384 1 kvm
配置libvirt启用TCP服务 命令行输入
LIBVIRTD_CONFIG=/etc/libvirt/libvirtd.conf LIBVIRTD_ARGS="--listen"
修改 /etc/sysconfig/libvirtd 文件
去除 LIBVIRTD_ARGS="–listen" 前的#号
修改 /etc/libvirt/libvirtd.conf 文件对应内容
listen_tls = 0
listen_tcp = 1
tcp_port = "16509"
auth_tcp = "none"
若为单机运行则需修改为 listen_addr = "127.0.0.1" 否则需修改为listen_addr = "0.0.0.0"
开启服务并且设置开机自启动
systemctl start libvirtd
systemctl enable libvirtd
检查运行状态
systemctl status libvirtd
若显示 Active: active (running) 则运行正常
2.安装WebVirtCloud
安装依赖
yum -y install python-virtualenv python-devel libvirt-devel glibc gcc nginx supervisor python-lxml git python-libguestfs
下载WebVirtCloud
mkdir /srv
cd /srv
git clone https://github.com/retspen/webvirtcloud
cd webvirtcloud
cp webvirtcloud/settings.py.template webvirtcloud/settings.py
设置数据库密码
vi webvirtcloud/settings.py
修改 SECRET_KEY = '这里写密码' 注意不要使用除下划线外的特殊字符,可能会出现奇怪的Bug
安装Python库并设置环境
virtualenv venv
source venv/bin/activate
# 安装pip依赖 (国内源)
venv/bin/pip install -i https://pypi.tuna.tsinghua.edu.cn/simple Django==1.11.14
venv/bin/pip install -i https://pypi.tuna.tsinghua.edu.cn/simple websockify==0.8.0
venv/bin/pip install -i https://pypi.tuna.tsinghua.edu.cn/simple gunicorn==19.9.0
venv/bin/pip install -i https://pypi.tuna.tsinghua.edu.cn/simple lxml==4.2.3
venv/bin/pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pytz
# 安装pip依赖 (海外源)
venv/bin/pip install Django==1.11.14
venv/bin/pip install websockify==0.8.0
venv/bin/pip install gunicorn==19.9.0
venv/bin/pip install lxml==4.2.3
venv/bin/pip install pytz
查看 libvirt-python 版本号并且安装库
命令行输入:
yum info libvirt-python
查看版本号
安装库:
# 国内源
venv/bin/pip install -i https://pypi.tuna.tsinghua.edu.cn/simple libvirt-python==版本号
#海外源
venv/bin/pip install libvirt-python==版本号
复制网站配置文件并且安装
cp conf/nginx/webvirtcloud.conf /etc/nginx/conf.d/
venv/bin/python manage.py migrate
设置进程守护
vi /etc/supervisord.conf
在末尾添加如下内容
[program:webvirtcloud]
command=/srv/webvirtcloud/venv/bin/gunicorn webvirtcloud.wsgi:application -c /srv/webvirtcloud/gunicorn.conf.py
directory=/srv/webvirtcloud
user=nginx
autostart=true
autorestart=true
redirect_stderr=true
[program:novncd]
command=/srv/webvirtcloud/venv/bin/python /srv/webvirtcloud/console/novncd
directory=/srv/webvirtcloud
user=nginx
autostart=true
autorestart=true
redirect_stderr=true
注释掉Nginx默认站点
vi /etc/nginx/nginx.conf
注释掉下面内容
# server {
# listen 80 default_server;
# listen [::]:80 default_server;
# server_name _;
# root /usr/share/nginx/html;
#
# # Load configuration files for the default server block.
# include /etc/nginx/default.d/*.conf;
#
# location / {
# }
#
# error_page 404 /404.html;
# location = /40x.html {
# }
#
# error_page 500 502 503 504 /50x.html;
# location = /50x.html {
# }
# }
添加网站目录权限
chown -R nginx:nginx /srv/webvirtcloud
配置系统服务
# 重启生效配置文件
systemctl restart nginx
systemctl restart supervisord
# 开机自启动
systemctl enable nginx
systemctl enable supervisord
结束
访问 http://IP地址/ 即可看到控制面板,默认账户 admin 密码为 admin