KVM虚拟化平台部署
一、虚拟机资源
CPU:双核双线程-CPU虚拟化开启
内存:8G
硬盘:300G
双网卡:单网卡
操作系统:Centos 7.6(1810)
二、实验环境
1、修改主机名
[root@kvm ~]# hostnamectl set-hostname kvm
[root@kvm ~]# su
2、将镜像光盘设为自动/永久挂载
[root@kvm ~]# vim /etc/fstab
/dev/cdrom /mnt iso9660 defaults 0 0
[root@kvm ~]# mount -a
[root@kvm ~]# df -hT
/dev/sr0 iso9660 4.3G 4.3G 0 100% /mnt
3、环境优化
[root@kvm ~]# vim /etc/ssh/sshd_config ##关闭反解DNS
UseDNS no
[root@kvm ~]# systemctl stop firewalld
[root@kvm ~]# setenforce 0
4、制作本地YUM仓库
[root@kvm ~]# cd /etc/yum.repos.d/
[root@kvm yum.repos.d]# ls
CentOS-Base.repo CentOS-Debuginfo.repo CentOS-Media.repo CentOS-Vault.repo
CentOS-CR.repo CentOS-fasttrack.repo CentOS-Sources.repo
[root@kvm yum.repos.d]# mkdir bak
[root@kvm yum.repos.d]# mv CentOS-* bak
[root@kvm yum.repos.d]# ls
bak
[root@kvm yum.repos.d]# vim local.repo
[local]
name=kvm
baseurl=file:///mnt
gpgcheck=0
enabled=1
[root@kvm yum.repos.d]# yum clean all
[root@kvm yum.repos.d]# yum repolist
三、安装KVM
1.安装KVM基本组件
[root@kvm ~]# yum -y install qemu-kvm ##安装KVM模块
[root@kvm ~]# yum -y install virt-install ##构建虚拟机的命令行工具
[root@kvm ~]# yum -y install qemu-img ##qemu 组件,创建磁盘、启动虚拟机等
[root@kvm ~]# yum -y install bridge-utils ##网络支持工具
[root@kvm ~]# yum -y install libvirt ##虚拟机管理工具
[root@kvm ~]# yum -y install virt-manager ##图形界面管理虚拟机
2.检测CPU是否支持虚拟化
3.设置开启启动界面的显示模式
[root@kvm ~]# ln -sf /lib/systemd/system/graphical.target /etc/systemd/system/default.target
四、设置KVM网络
KVM网络的两种模式:
- NAT:默认设置,数据包由 NAT 方式通过主机的接口进行
传送,可以访问外网,但是无法从外部访问虚拟机网络 - 网桥:这种模式允许虚拟机像一台独立的主机一样拥有网络,外部的机器可以直接访问到虚拟机内部,但需要网卡支持(一般有线网卡都支持)
修改ens-33网卡
[root@kvm ~]# vi /etc/sysconfig/network-scripts/ifcfg-ens33
增加br0网卡
[root@kvm ~]# vi /etc/sysconfig/network-scripts/ifcfg-br0
[root@kvm network-scripts]# systemctl restart network
[root@kvm network-scripts]# ifconfig
br0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.226.200 netmask 255.255.255.0 broadcast 192.168.226.255
inet6 fe80::bad4:235a:3f79:e839 prefixlen 64 scopeid 0x20<link>
ether 00:0c:29:11:28:f0 txqueuelen 1000 (Ethernet)
RX packets 14 bytes 2642 (2.5 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 24 bytes 3506 (3.4 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
ether 00:0c:29:11:28:f0 txqueuelen 1000 (Ethernet)
RX packets 149 bytes 15426 (15.0 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 138 bytes 15068 (14.7 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 1 (Local Loopback)
RX packets 3 bytes 312 (312.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 3 bytes 312 (312.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
virbr0: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500
inet 192.168.122.1 netmask 255.255.255.0 broadcast 192.168.122.255
ether 52:54:00:02:82:ae txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
五、KVM部署与管理
#创建KVM存储和镜像数据的目录、上传centos7镜像
[root@kvm network-scripts]# mkdir -p /data_kvm/iso
[root@kvm network-scripts]# mkdir -p /data/_kvm/store
[root@kvm kvm_data]# cd /kvm_data/
[root@kvm kvm_data]# ls
iso store
[root@kvm iso]# ls
CentOS-7-x86_64-DVD-1708.iso
六、使用虚拟系统管理器管理虚拟机
[root@kvm iso]# virt-manager