CentOS7下KVM的安装使用
1 检查是否支持KVM
KVM 是基于 x86 虚拟化扩展(Intel VT 或者 AMD-V) 技术的虚拟机软件,所以查看 CPU 是否支持 VT 技术,就可以判断是否支持KVM。有返回结果,如果结果中有vmx(Intel)或svm(AMD)字样,就说明CPU的支持的。
cat /proc/cpuinfo | egrep 'vmx|svm'
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon nopl xtopology tsc_reliable nonstop_tsc eagerfpu pni pclmulqdq vmx ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch ssbd ibrs ibpb stibp tpr_shadow vnmi ept vpid fsgsbase tsc_adjust bmi1 hle avx2 smep bmi2 invpcid rtm mpx rdseed adx smap clflushopt xsaveopt xsavec arat spec_ctrl intel_stibp flush_l1d arch_capabilities
关闭SELinux(安全策略而开启的一个子系统,对进程有一定限制),将 /etc/sysconfig/selinux 中的 SELinux=enforcing 修改为 SELinux=disabled
2 安装KVM环境
通过 yum 安装 kvm 基础包和管理工具
kvm相关安装包及其作用:
- *** qemu-kvm 主要的KVM程序包
- *** libvirt C语言工具包,提供libvirt服务
- *** virt-install 基于libvirt服务的虚拟机创建命令
- *** bridge-utils 创建和管理桥接设备的工具
- python-virtinst 创建虚拟机所需要的命令行工具和程序库
- virt-manager GUI虚拟机管理工具
- virt-top 虚拟机统计命令
- virt-viewer GUI连接程序,连接到已配置好的虚拟机
- libvirt-client 为虚拟客户机提供的C语言工具包
# 安装 kvm
# ------------------------
# yum -y install qemu-kvm python-virtinst libvirt libvirt-python virt-manager libguestfs-tools bridge-utils virt-install
yum -y install qemu-kvm libvirt virt-install bridge-utils
# 重启宿主机,以便加载 kvm 模块
# ------------------------
reboot
# 查看KVM模块是否被正确加载
# ------------------------
lsmod | grep kvm
kvm_intel 183705 0
kvm 615914 1 kvm_intel
开启kvm服务,并且设置其开机自动启动
systemctl start libvirtd
systemctl enable libvirtd
查看状态操作结果,如Active: active (running),说明运行情况良好
systemctl status libvirtd
systemctl is-enabled libvirtd
● libvirtd.service - Virtualization daemon
Loaded: loaded (/usr/lib/systemd/system/libvirtd.service; enabled; vendor preset: enabled)
Active: active (running) since Sun 2019-06-23 23:02:02 AKDT; 1min 0s ago
3 创建网桥
参考:《网络虚拟化》,创建一个br0。不过也可以直接使用kvm为我们创建好的虚拟网卡virbr0
4 安装虚拟机
安装前要设置环境语言为英文LANG=”en_US.UTF-8”,如果是中文的话某些版本可能会报错。CentOS 7 在这里修改 /etc/locale.conf
kvm创建虚拟机,特别注意.iso镜像文件一定放到/home 或者根目录重新创建目录,不然会因为权限报错,无法创建虚拟机。root权限用户,就不用care此条。
mkdir /home/vms
virt-install --virt-type=kvm --name=centos7 --vcpus=2 --memory=512 --location=/tmp/CentOS-7-x86_64-Minimal-1810.iso --disk path=/home/vms/centos7.qcow2,size=40,format=qcow2 --network bridge=br0 --graphics none --extra-args='console=ttyS0' --force