在安装完了openstack,使用了两年后的今天,如果连KVM都不晓得的话,那也真的是太扯了。
今天在一台测试机上搞了下linux的kvm来耍。安装了windows的server和windows的desktop,感觉太快了。感觉离不开了。
废话不多说了,说说是怎么装的。
首先得需要看看你的cpu支持虚拟化不。
关闭防火墙,关闭selinux
首先得需要安装KVM套件
# yum install qemu-kvm qemu-img virt-manager libvirt libvirt-python python-virtinst libvirt-client virt-install virt-viewer bridge-utils virt-viewer
安装完套件后需要重启服务器,重启服务都不行。
不重启服务器会出现下面的错误提示,把libvirt服务设置开机启动,重启服务器。
# systemctl start libvirtd
# systemctl enable libvirtd
# virsh -c qemu:///system list
error: failed to connect to the hypervisor
error: Failed to connect socket to '/var/run/libvirt/libvirt-sock': No such file or directory
然后更改网络配置,添加桥接(这是我的centos7的环境下添加网络桥接的方式)
# nmcli c add type bridge autoconnect yes con-name br0 ifname br0
安装自己的网络方式编辑该网络文件。重启网络。
下面的表格显示了eth0和br0的静态ip配置内容,可以根据下面进行编辑
/etc/sysconfig/network-scripts/ifcfg-eth0 | /etc/sysconfig/network-scripts/ifcfg-br0 |
---|---|
DEVICE=eth0 TYPE=Ethernet HWADDR=00:14:5E:C2:1E:40 ONBOOT=yes NM_CONTROLLED=no BRIDGE=br0 |
DEVICE=br0 TYPE=Bridge NM_CONTROLLED=no BOOTPROTO=static IPADDR=10.10.1.152 NETMASK=255.255.255.0 ONBOOT=yes |
下面表格显示的eth0和br0的DHCP配置情况.
/etc/sysconfig/network-scripts/ifcfg-eth0 | /etc/sysconfig/network-scripts/ifcfg-br0 |
---|---|
DEVICE=eth0 TYPE=Ethernet HWADDR=00:14:5E:C2:1E:40 ONBOOT=yes NM_CONTROLLED=no BRIDGE=br0 |
DEVICE=br0 TYPE=Bridge NM_CONTROLLED=no BOOTPROTO=dhcp ONBOOT=yes |
创建一个虚拟机镜像文件
# qemu-img create -f qcow2 windows7test.img 20G
创建一个虚拟机(使用桥接网络)
# virt-install -n windows_sqlserver -r 2048 --vcpus=2 --os-type=windows --accelerate -c /home/software/cn_Win7_ult_sp1_x64.iso --disk path=/vhost/windows_sqlserver.img
,format=qcow2,bus=ide --network bridge=br0 --vnc --vncport=5992 --vnclisten=0.0.0.0 --force --autostart
使用nat模式网络创建虚拟机
# virt-install -n windows_sqlserver -r 2048 --vcpus=2 --os-type=windows --accelerate -c /home/software/cn_Win7_ult_sp1_x64.iso --disk path=/vhost/windows_sqlserver.img
,format=qcow2,bus=ide --network network=default --vnc --vncport=5992 --vnclisten=0.0.0.0 --force --autostart
kvm nat网络配置文件/etc/libvirt/qemu/networks/default.xml
查看kvm网络设备: virsh net-list
TroubleShooting :
-
ERROR Guest name ‘convirt’ is already in use.
使用 virsh undefine 命令来解除domain name的绑定,首先可以使用virsh destory 来销毁一个虚拟机。
2.
使用vnc连接到该虚拟机我不知道为什么只能使用TightVNC 不能使用RealVNC
然后就按照平时装系统的步骤进行就可以了。
本文转自ting2junshui51CTO博客,原文链接:http://blog.51cto.com/ting2junshui/1765128 ,如需转载请自行联系原作者