一 使用KVM的原因
云計算(云存儲任连、云計算蒙具、軟件定義網(wǎng)絡(luò)站叼、openstack等技術(shù))測試需要搭建分布式節(jié)點争群,在作小型實驗環(huán)境的時候,使用虛擬機模擬硬件環(huán)境可以減少成本大年,也更方便管理换薄,可以更快幫助新手入門。
virtual box是一個跨平臺虛擬化軟件翔试,也有很多用戶轻要,但是在選型過程中,發(fā)現(xiàn)經(jīng)常性報錯垦缅,認為不是很穩(wěn)定冲泥,不適合新手入門;而KVM是linux內(nèi)核的一部分,也是目前事實上的開源虛擬化標準解決方案凡恍,比如openstack底層就默認使用KVM做虛擬化志秃。
二 環(huán)境信息
cpu:Intel(R) Core(TM) i7-6500U CPU @ 2.50GHz //4core
mem:total 7686,swap 7935
os:Linux promote.cache-dns.local 3.10.0-957.el7.x86_64
三 KVM介紹
Kernel-based Virtual Machine,基于內(nèi)核的虛擬機嚼酝。
開源浮还,linux core 2.6 之后集成在linux內(nèi)核中,是內(nèi)核模塊的一部分闽巩;
性能钧舌,主板級別訪問穩(wěn)定;
穩(wěn)定涎跨,目前共有云環(huán)境70%的市場洼冻;
四 KVM安裝
- 查看CPU是否支持VMX
grep -E -o 'vmx|svm' /proc/cpuinfo
如下結(jié)果表示CPU支持VMX虛擬化:
- 打開VMX虛擬化
BIOS虛擬化開關(guān)
開機進入 BIOS,通常在【secruity】設(shè)置項下隅很,將 【Virtualization Technology】(不同主板可能叫法不一樣撞牢,就是虛擬化技術(shù)的意思)設(shè)置為【enabled】。VMX模式
modprobe kvm
lsmod|grep kvm
如下結(jié)果表示KVM模塊已經(jīng)加載:
如下結(jié)果表示CPU支持未打開叔营,參考上一步普泡,打開BIOS虛擬化開關(guān):
- 安裝libvirt管理工具
yum install -y qemu-kvm
yum install -y libvirt-bin
yum install -y virt-manager
- 創(chuàng)建鏡像池路徑
選擇磁盤可用空間較大的掛載點,同常選擇【/home】路徑
- 創(chuàng)建鏡像池路徑
mkdir /home/iso;
mkdir /home/data
- 下載系統(tǒng)鏡像
cd /home/iso;
wget http://mirrors.neusoft.edu.cn/centos/7.6.1810/isos/x86_64/CentOS-7-x86_64-Minimal-1810.iso
- 創(chuàng)建磁盤鏡像
見下文第六部分
五 虛擬網(wǎng)絡(luò)配置(暫使用默認網(wǎng)絡(luò)配置)
- 增加虛擬網(wǎng)卡
brctl addbr cent-virt
ifconfig cent-virt 192.168.100.1/24
ip link set cent-virt up
- NAT虛擬網(wǎng)絡(luò)
- Bridge虛擬網(wǎng)絡(luò)
- 網(wǎng)絡(luò)配置文件
<network>
<name>centos-nat</name>
<uuid>e64eeef7-9be3-4db2-9cc0-2e2cddd966e9</uuid>
<forward mode='nat'/>
<bridge name='cent-virt' stp='on' delay='0'/>
<mac address='52:54:00:c7:19:22'/>
<ip address='192.168.100.1' netmask='255.255.255.0'>
<dhcp>
<range start='192.168.122.2' end='192.168.122.254'/>
</dhcp>
</ip>
</network>
六 使用GUI進行虛擬機管理
- 創(chuàng)建
- 啟動virt
virt-manager
- 創(chuàng)建磁盤鏡像
[Edit]-->[Connection details]审编,選擇[Storage]
KVM_Manager_05.png
點擊左下角[+]創(chuàng)建硬盤鏡像池
KVM_Manager_06.png
[Forward]選擇硬盤鏡像池的掛載路徑
KVM_Manager_07.png
選擇[第四節(jié)]中創(chuàng)建的磁盤鏡像池路徑 /home/data
點擊[Volume]右側(cè)[+]創(chuàng)建磁盤鏡像
KVM_Manager_08.png
命名、設(shè)置磁盤空間
KVM_Manager_09.png -
開始創(chuàng)建虛擬機
KVM_Manager_02.png
選擇本地媒介安裝歧匈,點擊[Foreard]
-
從系統(tǒng)鏡像存放路徑中選擇之前下載的鏡像文件 /home/iso/CentOS-7-x86_64-Minimal-1810.iso
KVM_Manager_03.png -
設(shè)置內(nèi)存和CPU資源垒酬,此處根據(jù)需要設(shè)定
KVM_Manager_04.png -
選擇已存在的磁盤鏡像
KVM_Manager_10.png -
命名、網(wǎng)絡(luò)選擇
**默認(NAT網(wǎng)絡(luò))
KVM_Manager_11.png
- 安裝
-
選擇安裝[Install CentOS 7]
KVM_Install_01.png -
語言選擇[Englisg]
KVM_Install_02.png - 安裝設(shè)置[SYSTEM]
KVM_Install_03.png
[SYSTEM]-->[INSTALLATION DESTINATION]
KVM_Install_04.png
[SYSTEM]-->[NETWORK & HOST NAME]
note:這一步?jīng)]有操作正確件炉,虛擬機啟動之后無法連接網(wǎng)絡(luò)
answer:[open]虛擬機勘究,用root用戶執(zhí)行以下命令
ifup /etc/sysconfig/network-scripts/ifcfg-eth0
-
開始安裝、設(shè)置root密碼**
KVM_Install_06.png
等待安裝結(jié)束
-
起停
KVM_Start_01.png
- 開啟
選中虛擬機斟冕,點擊運行口糕,或者右擊虛擬機選擇[run] - 停止
選中虛擬機,點擊停止磕蛇,或者右擊虛擬機選擇[shutdown]
- 克隆
-
右擊虛擬機選擇[clone]景描;
KVM_Clone_01.png -
按照提示進行,注意磁盤鏡像選擇的位置秀撇;
KVM_Clone_02.png - 修改克隆機的IP超棺,并重啟網(wǎng)絡(luò)服務(wù)
- 添加磁盤
- 按照前述步驟 創(chuàng)建磁盤鏡像,假設(shè)鏡像名為:newdisk.qcow2
- 關(guān)閉虛擬機
- 修改配置文件 /etc/libvirt/qemu/[vm-name].xml
添加到devices
<disk type='file' device='disk'>
<driver name='qemu' type='qcow2'/>
<source file='/home/data/newdisk'/>
<target dev='vdb' bus='virtio'/>
</disk>
- 添加內(nèi)存
七 無GUI虛擬機管理
- 創(chuàng)建磁盤鏡像
#virsh vol-create --pool [pool-name] --file [configuration-name]
- 創(chuàng)建虛擬機
#virt-install
- 起停虛擬機
- 啟動虛擬機
#virsh start [vm-name]
virsh start CentOS7.0-01
- 停止虛擬機
#virsh shutdown [vm-name]
virsh shutdown CentOS7.0-01
- 克隆虛擬機
#virt-clone -o [origin-vm-name] -n [new-vm-name] -f [new-vm-disk-img-file]
irt-clone -o CentOS7.0-01 -n CentOS7.0-02 -f /home/data/CentOS7.0-02.qcow2
- 添加硬盤資源
#qemu-img create -f [raw\qcow2] [file-path] [size]
qemu-img create -f qcow2 /home/data/osd.qcow2 50g