🌹
My GitBook
  • README
  • ai
    • Python 人工智能 5秒钟偷走你的声音
    • Python安装-在Linux系统中使用编译进行安装
    • 人工智能NVIDIA显卡计算(CUDA+CUDNN)平台搭建
    • 人工智能 deepface 换脸技术 学习
    • 华为 A800-9000 服务器 离线安装MindX DL
    • 华为 A800-9000 服务器 离线安装MindX DL 可视化环境+监控
    • 华为人工智能atlasA800-9000物理服务器离线安装及CANN安装和MindSpore安装和Tensorflow安装
  • docker
    • Containerd 入门基础操作
    • Docker启动MySQL、MongoDB、Redis、Elasticsearch、Grafana,数据库
    • Docker容器中使用GPU
    • docker方式实现minio数据持久化离线安装
    • docker方式实现postgres数据持久化离线安装
    • docker方式实现redis数据持久化离线安装
    • 使用二进制方式安装Docker
    • 学习docker看此文足以
  • kubernetes_install
    • Enable-implement-IPv4-IPv6
    • Kubernetes 1.24 1.25 集群使用docker作为容器
    • 安装Minikube并启动一个Kubernetes环境
    • 升级二进制kubernetes集群
    • 修复kube-proxy证书权限过大问题
    • kubeadm-install-IPV6-IPV4
    • kubernetes 安装cilium
    • v1.21.13-CentOS-binary-install-IPv6-IPv4-Three-Masters-Two-Slaves
    • v1.22.10-CentOS-binary-install-IPv6-IPv4-Three-Masters-Two-Slaves
    • v1.23.3-CentOS-binary-install
    • v1.23.4-CentOS-binary-install
    • v1.23.5-CentOS-binary-install
    • v1.23.6-CentOS-binary-install
    • v1.23.7-CentOS-binary-install-IPv6-IPv4-Three-Masters-Two-Slaves
    • v1.24.0-CentOS-binary-install-IPv6-IPv4-Three-Masters-Two-Slaves
    • v1.24.0-CentOS-binary-install-IPv6-IPv4
    • v1.24.1-CentOS-binary-install-IPv6-IPv4-Three-Masters-Two-Slaves
    • v1.24.1-CentOS-binary-install-IPv6-IPv4
    • v1.24.1-Ubuntu-binary-install-IPv6-IPv4-Three-Masters-Two-Slaves
    • v1.24.2-CentOS-binary-install-IPv6-IPv4
    • v1.24.3-CentOS-binary-install-IPv6-IPv4
    • v1.25.0-CentOS-binary-install-IPv6-IPv4-Three-Masters-Two-Slaves
    • v1.25.0-CentOS-binary-install-IPv6-IPv4
  • kubernetes_other
    • Kubernetes 1.24 1.25 集群使用docker作为容器
    • Kubernetes 各个组件 启动参数介绍
    • Kubernetes 部署 MySQL 集群
    • 在 Kubernetes 集群上部署 VSCode
    • 在Kubernetes上安装Netdata的方法
    • 在Kubernetes部署GitLab
    • Kubernetes(K8S)内核优化常用参数详解
    • 在Kubernetes(k8s)中使用GPU
    • 在Kubernetes(k8s)中部署 jenkins
    • Kubernetes(k8s)实现IPv4/IPv6网络双栈
    • Kubernetes(k8s)集群安装JupyterHub以及Lab
    • k8s加入新的master节点出现etcd检查失败
    • k8s集群进行删除并添加node节点
    • 在k8s(kubernetes) 上安装 ingress V1.1.0
    • 在k8s(kubernetes)上安装 ingress V1.1.3
    • 在 k8s(kubernetes)中使用 Loki 进行日志监控
    • kube-apiserver启动命令参数解释
    • kubectl管理多个集群配置
    • kubernetes(k8s) 存储动态挂载
    • kubernetes (k8s) 二进制高可用安装
    • kubernetes 启用 PHP + Nginx 网页环境
    • kubernetes 安装 Prometheus + Grafana
    • kubernetes 安装cilium
    • kubernetes 的TCP 数据包可视化
    • kubernetes 设置 Master 可调度与不可调度
    • kubernetes (k8s) v1.24.0 安装dashboard面板
    • kubernetes(k8s) 中安装kuboard面板
    • kubernetes(k8s) 安装 Prometheus + Grafana
    • kubernetes(k8s)中部署 efk
    • kubernetes(k8s)中部署dashboard可视化面板
    • 为kubernetes(k8s)单独配置kubectl工具
    • kubernetes(k8s)命名空间一直Terminating
    • kubernetes(k8s)安装BGP模式calico网络支持IPV4和IPV6
    • kubernetes(k8s)安装命令行自动补全功能
    • kubernetes(k8s)常用deploy模板 并验证
    • kubernetes(k8s)部署 Metrics Server 资源
    • 使用Kubernetes快速启用一个静态页面
    • 使用 Istioctl 安装 istio
    • 使用kubeadm初始化IPV4/IPV6集群
    • 使用kubeadm快速启用一个集群
    • 修复kube-proxy证书权限过大问题
    • 关于 ServiceAccounts 及其 Secrets 的重大变化
    • 创建用户认证授权的 kubeconfig 文件
    • 利用 kubeadm 创建 kubernetes 的高可用集群
    • 升级二进制kubernetes集群
    • 在k8s上安装Harbor
    • 在k8s安装CICD-devtron
    • 安装KubeOperator并导入现有集群进行管理
    • 安装Minikube并启动一个Kubernetes环境
    • 安装 Metrics server
    • 经GitHub将kubernetes镜像推送到阿里云
    • 自编写二进制安装kubernetes脚本v2.0版本
    • 部署kubernetes官网博客
  • kubesphere
    • 在 Linux 上以 All-in-One 模式安装 KubeSphere
    • KubeSphere 升级 && 安装后启用插件
    • KubeSphere 高可用集群搭建并启用所有插件
    • ​KubeSphere离线无网络环境部署
  • linux
    • Ansible 安装并简单使用
    • CentOS&RHEL内核升级
    • CentOS8删除boot目录恢复
    • CentOS 9 开局配置
    • CentOS 的 YUM安装时卡死解决方案
    • CentOS安装时钟同步服务
    • Centos9网卡配置
    • Exchangis搭建安装
    • GitHub+Hexo 搭建博客网站
    • GitLab 安装部署使用
    • Git命令简单使用
    • Grafana Prometheus Altermanager 监控系统
    • HaProxy 安装搭建配置
    • KVM WEB管理工具 WebVirtMgr
    • Let's Encrypt 泛域名证书申请
    • Linux内核高性能优化
    • Linux文件系统故障,Input/output error
    • Linux磁盘LVM根目录扩容
    • MINIO搭建单机以及集群
    • MySQL8.0允许外部访问
    • Nginx主要功能
    • OpenWRT实现NAT64/DNS64
    • PVE开启硬件显卡直通功能
    • Prometheus+Grafana监控系统
    • Proxmox VE镜像分析与定制
    • SELinux入门学习总结
    • Ubuntu 通过 Netplan 配置网络教程
    • 在Ubuntu中安装Samba文件服务
    • YUM下载全量依赖
    • elk7.15.1安装部署搭建
    • 一键部署十个服务脚本--可拆分---java+mysql+redis+nginx+rocketmq..等等
    • 从APNIC获取中国IP地址列表
    • 使用HTMLform表单操作腾讯云DNS控制台
    • 使用frp进行内网穿透
    • 修复Joe主题静态资源为国内地址
    • 内网搭建DNS服务器
    • 利用NGINX搭建部署直播流媒体服务器
    • 在线编写Markdown
    • 安装Harbor
    • 安装部署keepalived的HA环境
    • 快速部署Ceph分布式高可用集群
    • 搭建DHCP服务,实现自动分配地址
    • 搭建Hadoop2.7.2和Hive2.3.3以及Spark3.1.2
    • 搭建一个自己专属的个人网盘
    • 最新版 Harbor 在ubuntu系统上安装
    • 服务器被入侵,异常进程无法杀掉,随机进程名
    • 系统优化脚本支持Ubuntu和CentOS
    • 网络抓包 tcpdump 使用指南
    • 腾讯蓝鲸集群式部署
    • 部署lnmp环境,安装typecho博客
    • 镜像搬运工 skopeo
由 GitBook 提供支持
在本页
在GitHub上编辑
  1. linux

KVM WEB管理工具 WebVirtMgr

上一页HaProxy 安装搭建配置下一页Let's Encrypt 泛域名证书申请

最后更新于2年前

一、webvirtmgr介绍及环境说明

温馨提示:安装KVM是需要2台都操作的,因为我们是打算将2台都设置为宿主机所有都需要安装KVM相关组件

github地址https://github.com/retspen/webvirtmgr

WebVirtMgr是一个基于libvirt的Web界面,用于管理虚拟机。它允许您创建和配置新域,并调整域的资源分配。VNC查看器为来宾域提供完整的图形控制台。KVM是目前唯一支持的虚拟机管理程序。

图片

查看服务器版本号

[root@webc ~]# cat /etc/redhat-release
CentOS Linux release 7.9.2009 (Core)

内核版本

[root@webc ~]# uname -r
3.10.0-1160.42.2.el7.x86_64

关闭Selinux & 防火墙

[root@webc ~]# systemctl stop firewalld
[root@webc ~]# systemctl disable firewalld
[root@webc ~]# setenforce 0
setenforce: SELinux is disabled
[root@webc ~]# sed -i '/SELINUX/s/enforcing/disabled/' /etc/selinux/config

更新软件包并安装epel扩展源

[root@webc ~]# yum update
[root@webc ~]# yum install epel*

查看python版本

[root@webc ~]# python -V
Python 2.7.5
[root@webc ~]#

查看KVM 驱动是否加载

[root@webc ~]# lsmod | grep kvm
kvm_intel             188740  0
kvm                   637515  1 kvm_intel
irqbypass              13503  1 kvm
[root@webc ~]#
[root@webc ~]#
[root@webc ~]# modprobe -a kvm
[root@webc ~]# modprobe -a kvm_intel
[root@webc ~]#

免密配置

[root@webc ~]# ssh-keygen
[root@webc ~]# ssh-copy-id -i .ssh/id_rsa.pub root@192.168.1.104

二、安装KVM

安装KVM依赖包及管理工具

kvm属于内核态,不需要安装。但是需要一些管理工具包

[root@webc ~]# yum install qemu-img qemu-kvm qemu-kvm-tools virt-manager virt-viewer virt-v2v virt-top libvirt libvirt-Python libvirt-client python-virtinst bridge-utils tunctl
[root@webc ~]# yum install -y virt-install
[root@webc ~]#
[root@webc ~]# systemctl start libvirtd.service
[root@webc ~]# systemctl enable libvirtd.service
[root@webc ~]#
[root@webc ~]# cd cby/kvm/
[root@webc kvm]#
[root@webc kvm]#
[root@webc kvm]#  git clone https://github.com/palli/python-virtinst.git
[root@webc kvm]# cd python-virtinst/
[root@webc python-virtinst]#  python setup.py install
[root@webc python-virtinst]# virt-install
[root@webc python-virtinst]# yum install bridge-utils
[root@webc python-virtinst]#
[root@webc python-virtinst]# vim /etc/sysconfig/network-scripts/ifcfg-br0
[root@webc python-virtinst]#
[root@webc python-virtinst]#
[root@webc python-virtinst]#
[root@webc python-virtinst]#
[root@webc python-virtinst]#
[root@webc python-virtinst]# cat /etc/sysconfig/network-scripts/ifcfg-br0
DEVICE=br0
TYPE=Bridge
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=static
IPADDR=192.168.1.49
NETMASK=255.225.255.0
GATEWAY=192.168.1.1
DNS1=192.168.1.1
[root@webc python-virtinst]# brctl show
bridge name bridge id       STP enabled interfaces
br-0d093958d245     8000.0242d5824d14   no      
br-2e2d3c481379     8000.0242884030e2   no      
br-36a6ad3375a8     8000.0242d7d7f1ef   no      
br-66a9675a6dd5     8000.024248a61c72   no      
br-b7daf4844ff7     8000.024263dd4715   no      
br-deba197eb09e     8000.0242b290e104   no      
br0     8000.000000000000   no      
docker0     8000.0242858c017c   no      vethe14f7ac
docker_gwbridge     8000.0242588c6db0   no      
virbr0      8000.5254009ba65a   yes     virbr0-nic
[root@webc python-virtinst]# ln -s /usr/libexec/qemu-kvm /usr/sbin/

三、WebVirtMgr 安装

安装pip、git及supervisor && Nginx

WebVirtMgr只在管理端安装

[root@webc ~]# yum -y install git python-pip libvirt-python libxml2-python python-websockify supervisor gcc python-devel

使用pip安装Python扩展程序库

[root@webc ~]# pip install numpy

git克隆配置并运行WebVirMgr

[root@webc ~]# cd cby/
[root@webc cby]# mkdir kvm
[root@webc cby]# cd kvm
[root@webc kvm]# pwd
/root/cby/kvm
[root@webc kvm]#
[root@webc kvm]# git clone git://github.com/retspen/webvirtmgr.git
正克隆到 'webvirtmgr'...
remote: Enumerating objects: 5614, done.
remote: Total 5614 (delta 0), reused 0 (delta 0), pack-reused 5614
接收对象中: 100% (5614/5614), 2.97 MiB | 748.00 KiB/s, done.
处理 delta 中: 100% (3606/3606), done.
[root@webc kvm]#
[root@webc kvm]#
[root@webc kvm]# cd webvirtmgr
[root@webc webvirtmgr]# pip install -r requirements.txt
#初始化环境
[root@webc webvirtmgr]# ./manage.py syncdb

#配置Django 静态页面
[root@webc webvirtmgr]# ./manage.py collectstatic

启动WebVirMgr

前台启动WebVirMgr,默认是Debug模式同时日志打印在前台

用户名和密码是我们刚刚创建的

下载Nginx

[root@webc webvirtmgr]# cd ..
[root@webc kvm]# ls
webvirtmgr
[root@webc kvm]#
[root@webc kvm]# mkdir nginx
[root@webc kvm]# cd nginx
[root@webc nginx]# wget https://nginx.org/download/nginx-1.20.1.tar.gz
[root@webc nginx]# tar xf nginx-1.20.1.tar.gz
[root@webc nginx]# cd nginx-1.20.1/
[root@webc nginx-1.20.1]#

修改nginx配置文件

[root@webc conf]# vim nginx.conf
[root@webc conf]#
[root@webc conf]# cat nginx.conf
user  root;
worker_processes  1;

events {
    worker_connections  1024;
}

http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    keepalive_timeout  65;
    server {
        listen       90;
        server_name  192.168.1.104;
        #charset koi8-r;
        #access_log  logs/host.access.log  main;
        location / {
            #root   html;
            #index  index.html index.htm;
            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 $remote_addr;
            proxy_connect_timeout 600;
            proxy_read_timeout 600;
            proxy_send_timeout 600;
            client_max_body_size 5120M;
        }
        location /static/ {
            root /root/cby/kvm/webvirtmgr;
            expires max;
        }
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }
}
[root@webc conf]#

安装Nginx

[root@webc nginx-1.20.1]# yum install -y gcc glibc gcc-c++ prce-devel openssl-devel pcre-devel
[root@webc nginx-1.20.1]# useradd -s /sbin/nologin nginx -M
[root@webc nginx-1.20.1]# ./configure --prefix=/root/cby/kvm/nginx/ --user=nginx --group=nginx --with-http_ssl_module --with-http_stub_status_module
[root@webc nginx-1.20.1]# make && make install

启动Nginx

[root@webc nginx-1.20.1]# cd /root/cby/kvm/nginx/sbin/
[root@webc sbin]# /root/cby/kvm/nginx/sbin/nginx -t
nginx: the configuration file /root/cby/kvm/nginx//conf/nginx.conf syntax is ok
nginx: configuration file /root/cby/kvm/nginx//conf/nginx.conf test is successful
[root@webc sbin]# /root/cby/kvm/nginx/sbin/nginx

使用systemctl启停服务

[root@webc sbin]# cat > /etc/supervisord.d/webvirtmgr.ini << EOF
[program:webvirtmgr]
command=/usr/bin/python /root/cby/kvm/webvirtmgr/manage.py run_gunicorn -c /root/cby/kvm/webvirtmgr/conf/gunicorn.conf.py
directory=/root/cby/kvm/webvirtmgr
autostart=true
autorestart=true
logfile=/var/log/supervisor/webvirtmgr.log
log_stderr=true
user=root
 
[program:webvirtmgr-console]
command=/usr/bin/python /root/cby/kvm/webvirtmgr/console/webvirtmgr-console
directory=/root/cby/kvm/webvirtmgr
autostart=true
autorestart=true
stdout_logfile=/var/log/supervisor/webvirtmgr-console.log
redirect_stderr=true
user=root
EOF

启动supervisor

[root@webc webvirtmgr]# systemctl daemon-reload
[root@webc webvirtmgr]# systemctl stop supervisord
[root@webc webvirtmgr]# systemctl start supervisord

查看是否启动成功

[root@webc webvirtmgr]# supervisorctl status
webvirtmgr                       RUNNING   pid 23783, uptime 0:00:11
webvirtmgr-console               RUNNING   pid 23782, uptime 0:00:11
[root@webc webvirtmgr]#

四、Web界面配置webvirtmgr

4.1 添加主机设置存储

1.Add Connection 添加宿主机(即KVM主机)

2.点击SSH连接

3.Label 为主机名,必须为主机名做免密

4.IP 为宿主机IP

5.用户名为服务器用户名

6.点击添加

关于

https://www.oiox.cn/

https://www.oiox.cn/index.php/start-page.html

CSDN、GitHub、51CTO、知乎、开源中国、思否、掘金、简书、华为云、阿里云、腾讯云、哔哩哔哩、今日头条、新浪微博、个人博客

全网可搜《小陈运维》

文章主要发布于微信公众号

图片
图片
图片