本文主要記錄在vmware中使用kvm實現巢狀虛擬化的過程。
實驗環境:win10主機系統 + vmwareworkstation14 + ubuntu18.04 + ubuntu16.04
參考文章:
vmware+ubuntu+kvm+vnc虛擬機器安裝配置
vmware上基於ubuntu的kvm安裝和ubuntu的巢狀安裝
ubuntu14.04+kvm配置虛擬機器橋接(bridge)
qemu 使用的映象檔案:qcow2 與 raw
kvm/qemu橋接網路設定及kvm資料
虛擬化之kvm virsh常用命令篇
目錄結構:
配置kvm虛擬化環境(ubuntu18.04)
使用kvm建立虛擬機器(ubuntu16.04)
配置橋接網路
問題與收穫
1.1虛擬機器配置
在vmware workstation的虛擬機器ubuntu18.04中,先將u不同怒18.04關機,然後再虛擬機器的處理器選擇裡邊將**」intel vt-x/ept或amd-v/rvi**」選中;網路介面卡修改為橋接模式。
驗證ubuntu18.04是否支援虛擬化:grep vmx /proc/cpuinfo
1.2 kvm安裝
一般在ubuntu中都有kvm的支援,也就是說可以通過預設的安裝軟體進行安裝,在ubuntu中的預設的安裝軟體是apt-get,一般新安裝的系統的apt-get的知識庫還沒有更新,建議先更新然後再檢視是否有現成的安裝包。
apt-get update #更新apt-get
apt-cache search kvm | grep kvm #檢視是否具有現成的安裝包
apt-get install qemu-kvm #安裝kvm以及qemu的安裝
lsmod | grep kvm
#kvm是核心中的乙個模組,所以安裝完成之後需要檢視核心是否載入了kvm模組
dpkg -l | grep qemu #檢視qemu相關的包是否安裝完成
1.3安裝虛擬機器管理軟體
kvm和qemu是用於虛擬化的軟體,虛擬機器管理軟體用於高效的對相應的虛擬化的軟體進行使用以及相應虛擬機器的管理。
libvirt和virsh的安裝。
apt-cache search libvirt | grep libvirt
apt-get install libvirt-bin
apt-cache search virtin | grep virtin
apt-get install virtinst #我看另乙個教程上用的是virt-manager
virtinst - programs to create and clone virtual machines2.1建立虛擬磁碟
qemu-img create -f qcow2 ubuntu16.qcow2 10g
使用qcow給系統安裝分配虛擬磁碟;如果沒有這項的話,在ubuntu16.04安裝的時候會提示安裝空間大小為0b。
2.2編輯虛擬機器配置檔案
ubuntu14
f5b8c05b-9c7a-3211-49b9-2bd635f7e2aa
1048576
1048576
1hvm // 配置虛擬機器的啟動方式
// 如果為虛擬機器安裝系統,那麼配置此選項
// 虛擬機器的系統已經安裝完成,啟動系統配置此選項
destroy
restart
destroy
/usr/bin/kvm
// 用於安裝系統的虛擬磁碟
//修改為ubuntu16.qcow2的位址
// 配置系統的iso檔案的路徑(絕對路徑)
//修改為ubuntu16的映象位址
// 宿主機的橋接網路的名稱
// 這個位址是虛擬機器的實體地址
// vnc遠端連線的控制
說明:
2.3啟動虛擬機器
virsh create ubuntuxx.xml
2.4檢視ubuntu16
使用virt-viewer監視ubuntu16
apt-get install virt-viewer
命令列直接使用 virt-viewer
為了能使得後面虛擬機器的安裝能被宿主機(ubuntu18.04)所在區域網的其他機器訪問,所以需要在宿主機(ubuntu18.04)配置橋接網路,這樣虛擬機器通過橋接網路就可以分配到宿主機(ubuntu18.04)所在區域網的ip位址了,那麼虛擬機器也就可以被訪問了。
配置kvm的網路有2種方法。
其一,預設方式為使用者模式網路(usermode networking),資料報由nat方式通過主機的介面進行傳送。
其二,使用橋接方式(bridged networking),外部的機器可以直接聯通到虛擬機器,就像聯通到你的主機一樣。
所以,其實我認為不是一定要配置橋接網路的。但是為了了解大致內容,學習一下。
在本文中,此部分應該在ubuntu18.04中進行,不要誤以為在ubuntu16.04。
3.1宿主機網路配置
首先:要停止網路服務
sudo /etc/init.d/networking stop
其次:修改網路配置檔案
sudo gedit /etc/network/inte***ces
最後:重新啟動網路服務便可
sudo /etc/init.d/networking restart
3.2本人最後使用的網路配置檔案
auto lo
iface lo inet loopback
auto br0
iface br0 inet dhcp
bridge_ports ens33 #不知道為什麼突然出現了ens33這個東西
bridge_stp off
bridge_fd 0
dns-nameserver 202.98.98.68 #為什麼是這個...
3.3檢視是否配置成功
ifconfig #檢視是否配置成功,所以怎樣算是成功了?
1.明明已經安裝了qemu-kvm但是找不到模組:
could not access kvm kernel module
how to fix error 『could not access kvm kernel module』 in proxmox, virtualizor, solusvm, redhat, centos and ubuntu
沒有開啟cpu虛擬化:intel vt-x/ept或amd-v/rvi
2.一些命令:
apt-cache search...
sudo lsb_release -a #檢視ubuntu的發行版本。
3.橋接網路
ubuntu下使用qemu安裝虛擬機器並配置橋接網路
kvm/qemu橋接網路設定
4.掛載
在windows作業系統中,
掛載通常是指給磁碟分割槽(包括被虛擬出來的磁碟分割槽)分配乙個碟符。
這個操作可以通過「計算機管理」中的「磁碟管理」來進行。
第三方軟體,如磁碟分割槽管理軟體、虛擬磁碟軟體等,通常也附帶掛載功能。
在linux作業系統中,
掛載是乙個非常重要的功能,使用非常頻繁。
它指將乙個裝置(通常是儲存裝置)掛接到乙個已存在的目錄上。
KVM虛擬化巢狀
關於虛擬化有這樣一種使用場景,我們有一台物理伺服器a,在此a上,我們使用kvm作為hypervisor虛擬出各類作業系統,比如有虛擬機器a b c,若此時我們將a b和c作為乙個集群部署了openstack,那麼a b c上也需要安裝kvm或者其他的hypervisor,當然,對於openstack...
proxmox巢狀虛擬化
參考 1 讓proxmox ve支援巢狀虛擬化 注意除了proxmox grub需要載入相關模組的巢狀虛擬化以及proxmox物理機開啟cpu虛擬化外,還需設定proxmox虛擬機器cpu為host,或者kvm64並加上vmx 針對intel cpu flag echo options kvm in...
kvm虛擬化的巢狀
巢狀虛擬化是指在虛擬化的客戶機中執行乙個hypervisor,從而再虛擬化執行乙個客戶機。巢狀虛擬化不僅包括相同hypervisor的巢狀 如kvm巢狀kvm xen巢狀xen等 也包括不同hypervisor的相互巢狀 如kvm巢狀巢狀xen等 根據巢狀虛擬化的概念可知,其不僅包括兩層巢狀 如kv...