《LINUX教程:RedHat Linux下KVM虛擬機快速安裝》要點:
本文介紹了LINUX教程:RedHat Linux下KVM虛擬機快速安裝,希望對您有用。如果有疑問,可以聯系我們。
RedHat Linux光盤中收錄了KVM 所以我們可以直接使用yum安裝KVM相關的包
前提是你已經配好了yum源.
yum -y install qemu-kvm virt-manager libvirt
...................
安裝完成后啟動服務
service libvirtd start
啟動?libvirtd 守護進程 : ? ? ? ?[確定]
...................
輸入命令brctl show 顯示一下信息表示OK
?
建議:service NetworkManager stop
chkconfig NetworkManager off
?
這個時候啟動服務
vir-manager 彈出下面界面
OK接下來點擊“電腦”圖標按照提示根據自己的需要安裝就OK了.都是圖形界面沒什么好說的.
如果我們在生產環境中需要安裝多臺虛擬機怎么辦呢?克隆?OK當然克隆的最簡單方便的方法啦.但是如果直接克隆真實是很占用資源.小編今天跟大家分享一種更輕便、更簡單的方法:
第一步:啟動進程后 在目錄/var/lib/libvirt/images/下生成一塊80G的空間 具體操作如下
[root@localhost ~]# service libvirtd start
啟動 libvirtd 守護進程: ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? [確定]
?
[root@localhost images]# qemu-img create -f qcow2 rhel6base.img 80G
[root@localhost images]#virt-manager 啟動服務
按照提示一步步安裝
注意:下面這一步的時候路徑為生成的rhel6base.img的路徑
安裝完成后重新引導進入系統后關掉虛擬機
以剛開裝的kvm虛擬機為模板 克隆第二太虛擬機 具體操作如下?
[root@localhost images]# qemu-img create -b rhel6base.img -f qcow2 rhel6base2.img?
Formatting 'rhel6base2.img', fmt=qcow2 size=85899345920 backing_file='rhel6base.img' encryption=off cluster_size=65536?
啟動圖界面操作基本上沒有太大差異,注意下面兩步操作
1:使用現有的磁盤鏡像文件
2:路徑為新生成的rhel6base2
?
安裝完成后查看增大的文件大小 只有8.7M
[root@localhost images]# ll -lh
總用量 3.8G
-rw-r--r-- 1 root root 8.7M 6月 ?15 15:06 rhel6base1.img
-rw-r--r-- 1 qemu qemu 3.8G 6月 ?15 11:24 rhel6base.img
對于技術人員來說還可以通過直接命令行進行新建虛擬機
具體操作:
先創建增量鏡像文件
[root@localhost images]#qemu-img create -b rhel6base,img -f qcow2 rhel6base2.img
[root@localhost images]# virsh list --all
?Id ? ?名稱 ? ? ? ? ? ? ? ? ? ? ? ? 狀態
----------------------------------------------------
?- ? ? rhel6base ? ? ? ? ? ? ? ? ? ? ?關閉
?- ? ? rhel6basenode1 ? ? ? ? ? ? ? ? 關閉
[root@localhost images]# virsh dumpxml rhel6base
<domain type='kvm'>
? <name>rhel6base</name>
? <uuid>377ef988-42cf-5aad-771c-6e95979ea6a9</uuid>
? <memory unit='KiB'>1003520</memory>
? <currentMemory unit='KiB'>1003520</currentMemory>
? <vcpu placement='static'>1</vcpu>
? <os>
? ? <type arch='x86_64' machine='rhel6.5.0'>hvm</type>
? ? <boot dev='hd'/>
? </os>
? <features>
? ? <acpi/>
? ? <apic/>
? ? <pae/>
? </features>
? <clock offset='utc'/>
? <on_poweroff>destroy</on_poweroff>
? <on_reboot>restart</on_reboot>
? <on_crash>restart</on_crash>
? <devices>
? ? <emulator>/usr/libexec/qemu-kvm</emulator>
? ? <disk type='file' device='disk'>
? ? ? <driver name='qemu' type='qcow2' cache='none'/>
? ? ? <source file='/var/lib/libvirt/images/rhel6base.img'/>
? ? ? <target dev='vda' bus='virtio'/>
? ? ? <address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0'/>
? ? </disk>
? ? <disk type='block' device='cdrom'>
? ? ? <driver name='qemu' type='raw'/>
? ? ? <target dev='hdc' bus='ide'/>
? ? ? <readonly/>
? ? ? <address type='drive' controller='0' bus='1' target='0' unit='0'/>
? ? </disk>
? ? <controller type='usb' index='0'>
? ? ? <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x2'/>
? ? </controller>
? ? <controller type='ide' index='0'>
? ? ? <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x1'/>
? ? </controller>
? ? <interface type='network'>
? ? ? <mac address='52:54:00:c3:8c:d4'/>
? ? ? <source network='default'/>
? ? ? <model type='virtio'/>
? ? ? <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
? ? </interface>
? ? <serial type='pty'>
? ? ? <target port='0'/>
? ? </serial>
? ? <console type='pty'>
? ? ? <target type='serial' port='0'/>
? ? </console>
? ? <input type='tablet' bus='usb'/>
? ? <input type='mouse' bus='ps2'/>
? ? <graphics type='vnc' port='-1' autoport='yes'/>
? ? <sound model='ich6'>
? ? ? <address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/>
? ? </sound>
? ? <video>
? ? ? <model type='cirrus' vram='9216' heads='1'/>
? ? ? <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/>
? ? </video>
? ? <memballoon model='virtio'>
? ? ? <address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/>
? ? </memballoon>
? </devices>
</domain>
輸出的內容就是虛擬機的配置文件
我們可以把輸出文件重定向輸出到/tmp下面重命名為mymv.xml
[root@localhost images]# virsh dumpxml rhel6base > /tmp/myvm.xml
然后對配置文件進行修改
[root@localhost images]# vim /tmp/myvm.xml
克隆出來的虛擬機需要更改 rhel的名字 mac地址 ?uuid號 文件名四個地方
修改名稱:
<name>rhel6base</name> --》?<name>rhel6base2</name>
修改UUID:
[root@localhost images]# uuidgen ?【生成新的uuid】
? ?7bb06bc1-d610-4f51-a641-d1566b0a0c8b
? ?<uuid>377ef988-42cf-5aad-771c-6e95979ea6a9</uuid> ?--》?<uuid>7bb06bc1-d610-4f51-a641-d1566b0a0c8b</uuid>
修改mac地址:?<mac address='52:54:00:c3:8c:00'/> ? --》?<mac ? ? ? ? ?address='52:54:00:c3:8c:01'/>
修改磁盤文件名:
?<source file='/var/lib/libvirt/images/rhel6base.img'/ ? ?---》
?<source file='/var/lib/libvirt/images/rhel6base2.img'/?
最后:
[root@localhost images]# virsh define /tmp/myvm.xml?
定義域 rhel6base2(從 /tmp/myvm.xml)
[root@localhost images]#virt-manager ?可以看到多了一臺rhel6base2的虛擬機
?
感覺這種方法操作方便,節省資源.供大家參考.
想要更快速的安裝克隆虛擬機可以把步驟寫成腳本.
#!/bin/bash
?
BASEVM=rhel6base
IMG_DIR=/var/lib/libvirt/images
read -p "Input a number: " VM_NUM
NEWVM=rhel6basenode$VM_NUM
qemu-img create -b $IMG_DIR/${BASEVM}.img -f qcow2 $IMG_DIR/${NEWVM}.img
virsh dumpxml ${BASEVM} > /tmp/myvm.xml
sed -i "/name>r/s/${BASEVM}/${NEWVM}/" /tmp/myvm.xml
sed -i "/uuid/s/uuid>.\{36\}/uuid>$(uuidgen)/" /tmp/myvm.xml
sed -i "/${BASEVM}.img/s/${BASEVM}.img/${NEWVM}.img" ?/tmp/myvm.xml
sed -i "/mac add/s/00'\/>/$VM_NUM'\/>/" /tmp/myvm.xml 【母機mac地址后兩位00】
virsh define /tmp/myvm.xml
執行以上腳本就可以快速克隆出來一臺kvm虛擬機
?
維易PHP培訓學院每天發布《LINUX教程:RedHat Linux下KVM虛擬機快速安裝》等實戰技能,PHP、MYSQL、LINUX、APP、JS,CSS全面培養人才。