说明
以下所有操作都基于centos6.9
查看系统是否支持虚拟化
结果有vmx|svm才支持虚拟化
egrep '(vmx|svm)' --color=always /proc/cpuinfo
系统设置
1.关闭 selinux
修改 /etc/selinux/config, /etc/sysconfig/selinux
SELINUX=disabled
2.关闭 iptables
/etc/init.d/iptables stop
# 永久关闭
chkconfig iptables off
设置转发,使KVM可以通过网桥上网
# 开启路由转发功能
sed -i '/net.ipv4.ip_forward/s/0/1/' /etc/sysctl.conf
# 生效
sysctl -p
重启
reboot
安装KVM依赖包
yum -y install kvm python-virtinst libvirt tunctl bridge-utils virt-manager qemu-kvm-tools virt-viewer virt-v2v virt-install
yum -y install libguestfs-tools
# 重启
/etc/init.d/libvirtd restart
# 创建软链接
ln -s /usr/libexec/qemu-kvm /usr/bin/qemu-kvm
检查是否已经加载kvm模块
]# lsmod |grep kvm
kvm_intel 55432 60
kvm 346318 1 kvm_inte
配置br0网桥
cd /etc/sysconfig/network-scripts
cp ifcfg-eth0 ifcfg-br0
]# vim ifcfg-eth0
# 修改如下
DEVICE=eth0
HWADDR=C4:16:43:25:GF:35
TYPE=Ethernet
UUID=6e1ccbe1-31d2-483b-83ab-901de1e6c264
ONBOOT=yes
NM_CONTROLLED=yes
#BOOTPROTO=static
#IPADDR=192.168.55.100
#NETMASK=255.255.255.0
#GATEWAY=192.168.55.254
#DNS1=114.114.114.114
BRIDGE=br0
]# vim ifcfg-br0
# 修改如下
DEVICE=br0
HWADDR=C4:16:43:25:GF:35
TYPE=Bridge
UUID=6e1ccbe1-31d2-483b-83ab-901de1e6c264
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=static
IPADDR=192.168.55.100
NETMASK=255.255.255.0
GATEWAY=192.168.55.254
DNS1=114.114.114.114
重启网络
/etc/init.d/network restart
下面介绍如何通过virt-manager可视化安装虚拟机,由于centos只装了服务端,并没有界面,所以需要开启X协议进行界面投影
安装X协议依赖包
yum -y install xauth xhost
## xclock用于测试
yum -y install xclock
测试 xserver
如果运行xclock还是报错:can't find DISPLAY=localhost:11.0,接着修改 /etc/hosts,
放开127.0.0.1那行即可
xclock
在本机添加xhost
xhost + 服务器IP
使用X协议重新连接服务器
ssh -X user@ip
创建虚拟机
先建好kvm目录用来存放iso文件和img文件
mkdir -p /ddhome/kvm/images
mkdir -p /ddhome/kvm/iso # 将本地centos iso文件上传到这里 (CentOS-6.9-x86_64-bin-DVD1.iso)
创建虚拟机
cd /ddhome/kvm/images
# 创建img文件,用于存放虚拟机所有资源
qemu-img create -f raw ddbva.img 1500G
# install
virt-install --name ddbva --ram 40000 --vcpus=10 --disk path=/ddhome/kvm/images/ddbva.img --network bridge=br0 --cdrom=/ddhome/kvm/iso/CentOS-6.9-x86_64-bin-DVD1.iso --accelerate --vnclisten=0.0.0.0 --vncport=5900 --vnc
# name: 实例名称
# ram: 内存大小
# vcpus: cpu个数
virsh 常用命令
virsh list --all # 列出所有虚拟机(包括已经停止的)
virsh undefine 实例名 #
virsh managedsave-remove 实例名
安装时常见问题
1.can't open display :0
未开启X协议
2.ERROR Guest name 'ddbva' is already in use.
虚拟机实例名称ddbva已经存在
解决方法:# 查找virt-install进程并kill ps -ef | grep virt # 销毁实例 virsh undefine ddbva # 如果上一步继续报错: error: Refusing toundefine while domain managed save image exists<br> # 请先运行以下命令后,再执行undefine virsh managedsave-remove ddbva
3.错误:device eth0 does not seem to present (发生在拷贝img安装时)
原因:在虚拟机(Vmware)中移动了Centos系统对应的文件,导致重新配置时,网卡的MAC地址变了,输入ifconfig -a,找不到eth0
解决方法:修改/etc/sysconfig/network-scripts/ifcfg-eth0DEVICE=eth0 改成 DEVICE=eth1 即可