1. KVM安装
1.1. 安装系统
使用CentOS-7-x86_64-Minimal-1810.iso制作U启,硬件服务器使用U启安装系统
1.2. 关闭防火墙
systemctl stop firewalld (关闭linux防火墙)
systemctl disable firewalld(设置开机禁用linux防火墙)
vi /etc/selinux/config 将这个文件修改,如下图:
默认是SELINUX=enforcing 需要改成SELINUX=disabled
setenforce 0 (关闭selinux防火墙)
1.3. 安装工具包
yum install -y net-tools -y epel-release (安装工具包)
安装完工具包在运行以下命令安装kvm相关软件包
yum install qemu-kvm libvirt virt-install bridge-utils libvirt-python libguestfs-tools virt-manager virt-viewer virt-top kvm xauth -y (安装kvm相关软件包,若成功,安装过程如下图)
1.4. 编辑网卡创建网桥
1.4.1. 配置物理网卡
cd /etc/sysconfig/network-scripts/ CD到这个目录下,先编辑第一块儿网卡(这里是eno1),指定物理网卡桥接网卡br0本服务器网卡内容如下:
TYPE=Ethernet PROXY_METHOD=none BROWSER_ONLY=no BOOTPROTO=none NM_CONTROLLED=no BRIDGE=br0 DEFROUTE=yes IPV4_FAILURE_FATAL=no NAME=eno1 DEVICE=eno1 ONBOOT=yes IPADDR=192.168.1.60 NETMASK=255.255.255.0 GATEWAY=192.168.1.1 DNS1=114.114.114.114
1.4.2. 配置虚拟网卡
直接运行命令即可创建并且编辑网卡vi /etc/sysconfig/network-scripts/ifcfg-br0
BOOTPROTO=static DEVICE=br0 TYPE=Bridge NM_CONTROLLED=no IPADDR=192.168.1.60 NETMASK=255.255.255.0 DNS1=114.114.114.114 GATEWAY=192.168.1.1 ONBOOT=yes TYPE=Bridge
然后重启网卡: systemctl restart network
1.4.3. 查看kvm模块是否加载
lsmod |grep kvm 如果加载成功如下图:
如果没有加载则运行 modprobe kvm
1.4.4. 开启端口转发
echo 1 > /proc/sys/net/ipv4/ip_forward
1.4.5. 修改VNC监听端口
运行以下命令 vi /etc/libvirt/qemu.conf 将监听端口设置如下,
加上 vnc_listen = "0.0.0.0"
systemctl restart libvirtd (重启libvirtd,并开机自启)
1.5. 安装KVM
上传CentOS-7-x86_64-Minimal-1810.iso到服务器
创建挂载文件夹:
mkdir /home/kvm
以k8s-master节点为例
virt-install -n k8s-master --vcpus=4 --ram=8192 --os-type=linux -c /home/iso/CentOS-7-x86_64-Minimal-1810.iso --disk path=/home/kvm/k8s-master.qcow2,size=500,format=qcow2 --graphics vnc,listen=0.0.0.0 --noautoconsole
k8s-master代表虚拟机的名字,vcpus代表CPU核数,ram代表多少G就是多少*1024,size代表硬盘数(单位G)
1.6. vnc连接,完成安装
1.6.1. 命令行进入虚拟机配置网络
vi /etc/sysconfig/network-script/ifcfg-ens3
TYPE=Ethernet BOOTPROTO=static DEFROUTE=yes PEERDNS=yes PEERROUTES=yes IPV4_FAILURE_FATAL=no NAME=eno16777736 ONBOOT=yes IPADDR=192.168.4.111 NETMASK=255.255.255.0 GATEWAY=192.168.4.1 DNS1=114.114.114.114
重启网络
systemctl restart network
1.6.2. 命令行进入虚拟机配置网络
vi /etc/sysconfig/network-script/ifcfg-ens3
TYPE=Ethernet BOOTPROTO=static DEFROUTE=yes PEERDNS=yes PEERROUTES=yes IPV4_FAILURE_FATAL=no NAME=eno16777736 ONBOOT=yes IPADDR=192.168.4.111 NETMASK=255.255.255.0 GATEWAY=192.168.4.1 DNS1=114.114.114.114
重启网络
systemctl restart network
1.6.3. 更新系统
yum update -y
1.7. KVM相关操作命令介绍
1.7.1. 查看所有虚机
virsh list --all
1.7.2. 关闭虚拟机
virsh shutdown 虚机名称
1.7.3. 删除虚拟机
virsh undefine 虚机名称
1.7.4. 开启虚拟机
virsh start 虚机名称
1.7.5. 强制关闭虚拟机
virsh destroy 虚机名称
1.7.6. 查看当前虚拟机对应的vnc端口
virsh vncdisplay 虚机名称
1.7.7. 设置对应虚拟机开机自启动
virsh autostart 虚机名称
1.7.8. 设置取消虚拟机自动启动
virsh autostart --disable 虚机名称