第10章 KVM图形化管理
项目地址
安装依赖命令
信息
yum -y install git python-pip libvirt-python libxml2-python python-websockify supervisor gcc python-devel pip install numpy -i https://pypi.tuna.tsinghua.edu.cn/simple
安装python的Django环境
信息
git clone git://github.com/retspen/webvirtmgr.git cd webvirtmgr pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple ./manage.py syncdb ./manage.py collectstatic
安装配置Nginx
cat > /etc/yum.repos.d/nginx.repo<<EOF
[nginx-stable]
name=nginx stable repo
baseurl=http://nginx.org/packages/centos/\$releasever/\$basearch/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true
[nginx-mainline]
name=nginx mainline repo
baseurl=http://nginx.org/packages/mainline/centos/\$releasever/\$basearch/
gpgcheck=1
enabled=0
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true
EOF
yum install nginx -y
mkdir /code
mv /opt/webvirtmgr /code/
chown -R nginx:nginx /code
rm -rf /etc/nginx/conf.d/default.conf
创建nginx配置文件:
cat >/etc/nginx/conf.d/webvirtmgr.conf<<EOF
server {
listen 80 default_server;
server_name localhost;
access_log /var/log/nginx/webvirtmgr_access_log;
location /static/ {
root /code/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;
}
}
EOF
nginx -t
systemctl start nginx
netstat -lntup|grep 80
配置Supervisor
cat >/etc/supervisord.d/webvirtmgr.ini<<EOF
[program:webvirtmgr]
command=/usr/bin/python /code/webvirtmgr/manage.py run_gunicorn -c /code/webvirtmgr/conf/gunicorn.conf.py
directory=/code/webvirtmgr
autostart=true
autorestart=true
logfile=/var/log/supervisor/webvirtmgr.log
log_stderr=true
user=nginx
[program:webvirtmgr-console]
command=/usr/bin/python /code/webvirtmgr/console/webvirtmgr-console
directory=/code/webvirtmgr
autostart=true
autorestart=true
stdout_logfile=/var/log/supervisor/webvirtmgr-console.log
redirect_stderr=true
user=nginx
EOF
systemctl start supervisord.service
supervisorctl status
创建用户
mkdir /var/lib/nginx/.ssh/ -p
chown -R nginx:nginx /var/lib/nginx/
su - nginx -s /bin/bash
ssh-keygen
touch ~/.ssh/config && echo -e "StrictHostKeyChecking=no\nUserKnownHostsFile=/dev/null" >> ~/.ssh/config
chmod 0600 ~/.ssh/config
exit
adduser webvirtmgr
echo "123456"|passwd --stdin webvirtmgr
su - nginx -s /bin/bash
ssh-copy-id root@10.0.0.100
web页面操作
安装完成后,通过浏览器访问 http://服务器IP 即可进入WebVirtMgr管理界面。
报错解决
如果遇到pip相关错误,可以尝试:
python -m pip install --upgrade --force pip
pip install setuptools==33.1.1 -i https://pypi.tuna.tsinghua.edu.cn/simple