2021-05-12 14:32:11
CentOS 6.5安裝KVM實踐
一,安裝CentOS6.5,使用最小化的minimal安裝二、安裝完CentOS後,使用root登入設定網絡卡,使虛擬機器可以使用外網上網
vi /etc/sysconifg/network-scripts/ifcfg-eth0
下圖作為參考:
儲存後,重新啟動網路服務
service network restart
然後測試是否能聯網
ping www.linuxidc.com
三、關閉selinux和清空iptables
修改selinux組態檔
sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
設定當前selinux
setenforce 0
清空iptables
iptables -F
儲存iptables規則
service iptables save
四、安裝KVM
使用yum安裝:
yum -y install qemu-kvm libvirt python-virtinst bridge-utils avahi dmidecode
安裝完成後重新啟動虛擬機器
init 6
重新啟動完成後,測試kvm是否安裝成功
stat /dev/kvm
執行結果:
File: "/dev/kvm"
Size: 0 Blocks: 0 IO Block: 4096 字元特殊檔案
Device: 5h/5d Inode: 9503 Links: 1 Device type: a,e8
Access: (0666/crw-rw-rw-) Uid: ( 0/ root) Gid: ( 36/ kvm)
Access: 2015-06-28 16:56:11.463134124 +0800
Modify: 2015-06-28 16:56:11.463134124 +0800
Change: 2015-06-28 16:56:11.463134124 +0800
在vb上執行這個命令不會有結果, 我這個是在真機上執行的結果
測試libvirtd是否可以正常啟動
service libvirtd start
service libvirtd restart
五、設定網路橋接
檢查系統中是否啟用了NetworkManager,最好關閉該服務,因為該服務與network有衝突。
chkconfig |grep NetworkManager
如果存在NetworkManager
chkconfig NetworkManager off
service NetworkManager stop
從ifcfg-eth0複製現有網絡卡的組態檔,改名為ifcfg-br0:
cp /etc/sysconfig/network-scripts/ifcfg-eth0 /etc/sysconfig/network-scripts/ifcfg-br0
修改ifcfg-br0,注意紅色的兩行,其他部分基本上不用改。
vi /etc/sysconfig/network-scripts/ifcfg-br0
DEVICE=br0
HWADDR=08:00:27:1D:26:B2
UUID=251576f1-0ae3-4a52-b0e1-9343a7ad936d
TYPE=Bridge
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=stataic
IPADDR=10.0.0.156
NETMASK=255.255.255.0
GATEWAY=10.0.0.1
DNS1=202.96.64.68
DNS2=202.96.69.38
修改ifcfg-eth0,僅儲存以下幾行。
vi /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
HWADDR=08:00:27:1D:26:B2
UUID=251576f1-0ae3-4a52-b0e1-9343a7ad936d
TYPE=Ethernet
ONBOOT=yes
NM_CONTROLLED=yes
BRIDGE=br0
重新啟動network服務
service network restart
正在關閉介面 eth0: bridge br0 does not exist!
[確定]
關閉環迴介面: [確定]
彈出環回介面: [確定]
彈出介面 eth0: [確定]
彈出介面 br0: Determining if ip address 10.0.0.156 is already in use for device br0...
[確定]
執行ifconfig
br0 Link encap:Ethernet HWaddr 08:00:27:1D:26:B2
inet addr:10.0.0.156 Bcast:10.0.0.1 Mask:255.255.255.0
inet6 addr: fe80::ba97:5aff:feb7:98b5/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:1210 errors:0 dropped:0 overruns:0 frame:0
TX packets:40 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:74677 (72.9 KiB) TX bytes:7509 (7.3 KiB)
eth0 Link encap:Ethernet HWaddr 08:00:27:1D:26:B2
inet6 addr: fe80::ba97:5aff:feb7:98b5/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:5625 errors:0 dropped:0 overruns:0 frame:0
TX packets:359 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:425234 (415.2 KiB) TX bytes:65054 (63.5 KiB)
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)
virbr0 Link encap:Ethernet HWaddr 52:54:00:CA:22:F4
inet addr:192.168.122.1 Bcast:192.168.122.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:11 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:0 (0.0 b) TX bytes:2449 (2.3 KiB)
設定轉發
執行以下命令:
echo 1 > /proc/sys/net/ipv4/ip_forward
這一步雖然只有簡單的一條命令,但卻很關鍵。如果不執行這一步,所有的虛擬機器將無法上網。
另外,上一步設定完橋接之後重新啟動network,會自動將ip_forward改為0,所以重新設定網路後,不要忘了執行該命令。發現虛擬機器無法上網的時候,也可以檢查一下ip_forward值。
六、安裝虛擬機器
修改 qemu.conf 設定
vi /etc/libvirt/qemu.conf
vnc_listen = "0.0.0.0"
user = "root"
group = "root"
dynamic_ownership = 0
重新啟動libvirtd服務
service libvirtd restart
新建用於存放虛擬機器相關檔案的目錄
mkdir /kvm
使用winscp將centos6.5的安裝光碟映象複製到/kvm
新建用於存放虛擬機器的目錄
mkdir /kvm/vm
安裝虛擬機器
virt-install --name centos --ram 1024 --vcpus=1 --disk path=/kvm/vm/vm1.img,size=10 --network bridge=br0 --os-variant=rhel6 --cdrom /kvm/CentOS-6.5-x86_64-bin-DVD1.iso --vnclisten=10.0.0.156 --vncport=6900 --vnc
引數詳解:
--vcpus 分配給虛擬機器CPU個數
--disk path 虛擬磁碟所在的路徑
--size 虛擬磁碟大小,單位是GB
--network bridge 指定虛擬機器使用的橋接網絡卡
--os-variant 虛擬機器的作業系統型別
--cdrom 安裝虛擬機器作業系統的光碟映象的路徑
--vnclisten vnc的監聽IP
--vncport vnc的監聽埠
--vnc 使用vnc進行連線
然後使用vnc-viewer連線虛擬機器 ,
如果用VNC VIEWER連線虛擬機器一閃而過,設定vnc的 ColourLevel=rgb222
使用vnc-viewer連線10.0.0.156:6900就可以遠端安裝這台虛擬機器了
在kvm虛擬機器中安裝作業系統和在其他虛擬機器上沒有什麼不同的地方
安裝完成後, 在kvm虛擬機器中進行網絡卡設定後,就可以使用putty進行遠端連線了
如果需要虛擬機器隨系統啟動,就執行
virsh start centos
在VirtualBox中巢狀安裝kvm時, 使用vnc遠端安裝系統是沒有問題的, 但是在啟動kvm虛擬機器的過程中,非常非常的慢, 我等了二十幾分鐘也沒有啟動成功. 而且cpu的負載很高
所以在有條件的情況下, 可以使用真機進行實驗.
Virsh語法參考
virsh list 列出執行中的虛擬機器
virsh start centos 啟動centos虛擬機器
virsh shutdown centos 關閉centos虛擬機器
virsh destroy centos 強制關閉centos虛擬機器
virsh autostart centos 設定centos自動啟動
virsh undefine centos 刪除centos虛擬機器
virsh suspend centos 暫停centos虛擬機器
vrish resume centos 恢復centos虛擬機器
virsh reboot centos 重新啟動centos虛擬機器
virsh edit centos 編輯centos虛擬機器
virsh vncdisplay centos vnc顯示
--------------------------------------分割線 --------------------------------------
相關文章