virsh創建虛擬機
1. 查看cpu是否支持虛擬化
和 Xen 不同,KVM 需要有 CPU 的支持(Intel VT 或 AMD SVM),在安裝 KVM 之前檢查一下 CPU 是否提供了虛擬技術的支持
1 |
egrep ‘vmx|svm‘ /proc/cpuinfo
|
2. 安裝工具包
1 |
yum install qemu-kvm qemu-kvm-tools virt-manager libvirt
|
3. 查看kvm是否安裝成功
1 |
lsmod | grep kvm
|
4. 關閉防火墻
1 2 |
setenforce 0
service iptables stop
|
5. 修改 qemu.conf 配置,把下面幾個地方的註釋去掉,然後把 dynamic_ownership 的值改成0,禁止 libvirtd 動態修改文件的歸屬
1 2 3 4 |
vi /etc/libvirt/qemu .conf 改成如下:
user = “root”
group=”root”
dynamic_ownership = 0
|
重啟libvirtd服務
1 |
service libvirtd restart
|
上面如果不改的話安裝的時候會報如下錯誤:
ERROR 內部錯誤 processexited while connecting to monitor: char device redirected to /dev/pts/3
2016-01-16T00:26:14.879409Z
qemu-kvm:-drivefile=/root/centos6.raw,if=none,id=drive-virtio-disk0,format=raw,cache=none:could
not open disk image /root/centos6.raw: Permission denied
Domain installation does not appear tohave been successful.
If it was, you can restart your domain byrunning:
virsh --connect qemu:///system start CentOS-x86.64
otherwise, please restart yourinstallation
6. 創建虛擬磁盤
1 |
qemu-img create -f raw /root/centos6 .6.raw 10G
|
7. 安裝虛擬機
1 2 3 4 5 6 7 8 9 10 11 |
virt- install \
--virt- type kvm \
--name CentOS-6.6-x86.64 \ # 虛擬機名
-- ram 512 \ #分配內存大小
--cdrom= /root/CentOS-6 .7-i386-minimal.iso\ #系統鏡像路徑
--disk path= /root/centos6 .6.raw \ #磁盤路徑
--network network=default \ #網絡默認
--graphics vnc,listen=0.0.0.0 \
--noautoconsole \ #不自動開啟控制臺
--os- type =linux -\ #系統類型 linux
--os-variant=rhel6 #系統版本
|
8. 使用vnc客戶端連接剛剛創建的虛擬機
連接成功之後就進入系統安裝界面了
9.配置虛擬網橋
添加橋接設備br0:
1 |
brctl addbr br0
|
1 2 |
cd /etc/sysconfig/network-scripts/
cp ifcfg-eth0 ifcfg-br0
|
vi ifcfg-br0 配置改為如下:
1 2 3 4 5 6 7 8 |
DEVICE=br0
TYPE=Bridge
ONBOOT= yes
NM_CONTROLLED=no
BOOTPROTO=static
IPADDR=192.168.1.221
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
|
vi ifcfg-eth0 配置改為如下:
1 2 3 4 5 |
DEVICE=eth0
TYPE=Ethernet
ONBOOT= yes
NM_CONTROLLED=no
BRIDGE=br0
|
重啟網絡服務:
1 |
Service network restart
|
10.為虛擬機配置橋接
1 2 3 4 |
virsh edit CentOS-6.6-x86.64 #編輯虛擬機的配置xml文件將網絡配置改為如下:
<interface type = ‘bridge‘ >
<mac address= ‘52:54:00:87:2d:7b‘ />
<sourcebridge= ‘br0‘ />
|
11.重啟虛擬機
1 2 |
virsh destroy CentOS-6.6-x86.64
virsh start CentOS-6.6-x86.64
|
12.測試虛擬機能否ping通宿主機
常用virsh指令:
(1)virsh list 列出當前虛擬機列表,不包括未啟動的
(2)virsh list --all 列出所有虛擬機,包括所有已經定義的虛擬機
(3)virsh destroy vm-name 關閉虛擬機
(4)virsh start vm-name 啟動虛擬機
(5)virsh edit vm-name 編輯虛擬機xml文件
(6)virsh undefine vm-name 刪除虛擬機
(7)virsh shutdown vm-name 停止虛擬機
(8)virsh reboot vm-name 重啟虛擬機
(9)virsh autostart vm-name 虛擬機隨宿主機啟動
virsh創建虛擬機