您好,登錄后才能下訂單哦!
這篇文章主要介紹在Ubuntu 18.04 LTS上如何使用 KVM 配置無(wú)頭虛擬化服務(wù)器,文中介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!
我在 Ubuntu 18.04 LTS 服務(wù)器上測(cè)試了本指南,但是它在其它的 Linux 發(fā)行版上也可以使用,比如,Debian、CentOS、RHEL 以及 Scientific Linux。這個(gè)方法完全適合哪些希望在沒(méi)有任何圖形環(huán)境的 Linux 服務(wù)器上,去配置一個(gè)簡(jiǎn)單的虛擬化環(huán)境。
基于本指南的目的,我將使用兩個(gè)系統(tǒng)。
KVM 虛擬化服務(wù)器:
宿主機(jī)操作系統(tǒng) – 最小化安裝的 Ubuntu 18.04 LTS(沒(méi)有 GUI)
宿主機(jī)操作系統(tǒng)的 IP 地址:192.168.225.22/24
訪客操作系統(tǒng)(它將運(yùn)行在 Ubuntu 18.04 的宿主機(jī)上):Ubuntu 16.04 LTS server
遠(yuǎn)程桌面客戶端:
操作系統(tǒng) – Arch Linux
首先,我們先檢查一下我們的系統(tǒng)是否支持硬件虛擬化。為此,需要在終端中運(yùn)行如下的命令:
$ egrep -c '(vmx|svm)' /proc/cpuinfo
假如結(jié)果是 zero (0)
,說(shuō)明系統(tǒng)不支持硬件虛擬化,或者在 BIOS 中禁用了虛擬化。進(jìn)入你的系統(tǒng) BIOS 并檢查虛擬化選項(xiàng),然后啟用它。
假如結(jié)果是 1
或者 更大的數(shù),說(shuō)明系統(tǒng)將支持硬件虛擬化。然而,在你運(yùn)行上面的命令之前,你需要始終保持 BIOS 中的虛擬化選項(xiàng)是啟用的。
或者,你也可以使用如下的命令去驗(yàn)證它。但是為了使用這個(gè)命令你需要先安裝 KVM。
$ kvm-ok
示例輸出:
INFO: /dev/kvm existsKVM acceleration can be used
如果輸出的是如下這樣的錯(cuò)誤,你仍然可以在 KVM 中運(yùn)行訪客虛擬機(jī),但是它的性能將非常差。
INFO: Your CPU does not support KVM extensionsINFO: For more detailed results, you should run this as rootHINT: sudo /usr/sbin/kvm-ok
當(dāng)然,還有其它的方法來(lái)檢查你的 CPU 是否支持虛擬化。更多信息參考接下來(lái)的指南。
如何知道 CPU 是否支持虛擬技術(shù)(VT)
接下來(lái),安裝 KVM 和在 Linux 中配置虛擬化環(huán)境所需要的其它包。
在 Ubuntu 和其它基于 DEB 的系統(tǒng)上,運(yùn)行如下命令:
$ sudo apt-get install qemu-kvm libvirt-bin virtinst bridge-utils cpu-checker
KVM 安裝完成后,啟動(dòng) libvertd 服務(wù)(如果它沒(méi)有啟動(dòng)的話):
$ sudo systemctl enable libvirtd$ sudo systemctl start libvirtd
所有的虛擬機(jī)文件和其它的相關(guān)文件都保存在 /var/lib/libvirt/
下。ISO 鏡像的默認(rèn)路徑是 /var/lib/libvirt/boot/
。
首先,我們先檢查一下是否有虛擬機(jī)。查看可用的虛擬機(jī)列表,運(yùn)行如下的命令:
$ sudo virsh list --all
示例輸出:
Id Name State----------------------------------------------------
正如上面的截屏,現(xiàn)在沒(méi)有可用的虛擬機(jī)。
現(xiàn)在,我們來(lái)創(chuàng)建一個(gè)。
例如,我們來(lái)創(chuàng)建一個(gè)有 512 MB 內(nèi)存、1 個(gè) CPU 核心、8 GB 硬盤(pán)的 Ubuntu 16.04 虛擬機(jī)。
$ sudo virt-install --name Ubuntu-16.04 --ram=512 --vcpus=1 --cpu host --hvm --disk path=/var/lib/libvirt/images/ubuntu-16.04-vm1,size=8 --cdrom /var/lib/libvirt/boot/ubuntu-16.04-server-amd64.iso --graphics vnc
請(qǐng)確保在路徑 /var/lib/libvirt/boot/
中有一個(gè) Ubuntu 16.04 的 ISO 鏡像文件,或者在上面命令中給定的其它路徑中有相應(yīng)的鏡像文件。
示例輸出:
WARNING Graphics requested but DISPLAY is not set. Not running virt-viewer.WARNING No console to launch for the guest, defaulting to --wait -1 Starting install...Creating domain... | 0 B 00:00:01Domain installation still in progress. Waiting for installation to complete.Domain has shutdown. Continuing.Domain creation completed.Restarting guest.
我們來(lái)分別講解以上的命令和看到的每個(gè)選項(xiàng)的作用。
–name
:這個(gè)選項(xiàng)定義虛擬機(jī)名字。在我們的案例中,這個(gè)虛擬機(jī)的名字是 Ubuntu-16.04
。
–ram=512
:給虛擬機(jī)分配 512MB 內(nèi)存。
–vcpus=1
:指明虛擬機(jī)中 CPU 核心的數(shù)量。
–cpu host
:通過(guò)暴露宿主機(jī) CPU 的配置給訪客系統(tǒng)來(lái)優(yōu)化 CPU 屬性。
–hvm
:要求完整的硬件虛擬化。
–disk path
:虛擬機(jī)硬盤(pán)的位置和大小。在我們的示例中,我分配了 8GB 的硬盤(pán)。
–cdrom
:安裝 ISO 鏡像的位置。請(qǐng)注意你必須在這個(gè)位置真的有一個(gè) ISO 鏡像。
–graphics vnc
:允許 VNC 從遠(yuǎn)程客戶端訪問(wèn)虛擬機(jī)。
現(xiàn)在,我們?cè)谶h(yuǎn)程桌面系統(tǒng)上使用 SSH 登入到 Ubuntu 服務(wù)器上(虛擬化服務(wù)器),如下所示。
$ ssh sk@192.168.225.22
在這里,sk
是我的 Ubuntu 服務(wù)器的用戶名,而 192.168.225.22
是它的 IP 地址。
運(yùn)行如下的命令找出 VNC 的端口號(hào)。我們從一個(gè)遠(yuǎn)程系統(tǒng)上訪問(wèn)虛擬機(jī)需要它。
$ sudo virsh dumpxml Ubuntu-16.04 | grep vnc
示例輸出:
<graphics type='vnc' port='5900' autoport='yes' listen='127.0.0.1'>
記下那個(gè)端口號(hào) 5900
。安裝任意的 VNC 客戶端應(yīng)用程序。在本指南中,我們將使用 TigerVnc。TigerVNC 是 Arch Linux 默認(rèn)倉(cāng)庫(kù)中可用的客戶端。在 Arch 上安裝它,運(yùn)行如下命令:
$ sudo pacman -S tigervnc
在安裝有 VNC 客戶端的遠(yuǎn)程客戶端系統(tǒng)上輸入如下的 SSH 端口轉(zhuǎn)發(fā)命令。
$ ssh sk@192.168.225.22 -L 5900:127.0.0.1:5900
再?gòu)?qiáng)調(diào)一次,192.168.225.22
是我的 Ubuntu 服務(wù)器(虛擬化服務(wù)器)的 IP 地址。
然后,從你的 Arch Linux(客戶端)打開(kāi) VNC 客戶端。
在 VNC 服務(wù)器框中輸入 localhost:5900
,然后點(diǎn)擊 “Connect” 按鈕。
然后就像你在物理機(jī)上安裝系統(tǒng)一樣的方法開(kāi)始安裝 Ubuntu 虛擬機(jī)。
同樣的,你可以根據(jù)你的服務(wù)器的硬件情況配置多個(gè)虛擬機(jī)。
或者,你可以使用 virt-viewer
實(shí)用程序在訪客機(jī)器中安裝操作系統(tǒng)。virt-viewer
在大多數(shù) Linux 發(fā)行版的默認(rèn)倉(cāng)庫(kù)中都可以找到。安裝完 virt-viewer
之后,運(yùn)行下列的命令去建立到虛擬機(jī)的訪問(wèn)連接。
$ sudo virt-viewer --connect=qemu+ssh://192.168.225.22/system --name Ubuntu-16.04
使用管理用戶接口 virsh
從命令行去管理虛擬機(jī)是非常有趣的。命令非常容易記。我們來(lái)看一些例子。
查看運(yùn)行的虛擬機(jī),運(yùn)行如下命令:
$ sudo virsh list
或者,
$ sudo virsh list --all
示例輸出:
Id Name State---------------------------------------------------- 2 Ubuntu-16.04 running
啟動(dòng)一個(gè)虛擬機(jī),運(yùn)行如下命令:
$ sudo virsh start Ubuntu-16.04
或者,也可以使用虛擬機(jī) id 去啟動(dòng)它。
正如在上面的截圖所看到的,Ubuntu 16.04 虛擬機(jī)的 Id 是 2。因此,啟動(dòng)它時(shí),你也可以像下面一樣只指定它的 ID。
$ sudo virsh start 2
重啟動(dòng)一個(gè)虛擬機(jī),運(yùn)行如下命令:
$ sudo virsh reboot Ubuntu-16.04
示例輸出:
Domain Ubuntu-16.04 is being rebooted
暫停一個(gè)運(yùn)行中的虛擬機(jī),運(yùn)行如下命令:
$ sudo virsh suspend Ubuntu-16.04
示例輸出:
Domain Ubuntu-16.04 suspended
讓一個(gè)暫停的虛擬機(jī)重新運(yùn)行,運(yùn)行如下命令:
$ sudo virsh resume Ubuntu-16.04
示例輸出:
Domain Ubuntu-16.04 resumed
關(guān)閉一個(gè)虛擬機(jī),運(yùn)行如下命令:
$ sudo virsh shutdown Ubuntu-16.04
示例輸出:
Domain Ubuntu-16.04 is being shutdown
完全移除一個(gè)虛擬機(jī),運(yùn)行如下的命令:
$ sudo virsh undefine Ubuntu-16.04$ sudo virsh destroy Ubuntu-16.04
示例輸出:
Domain Ubuntu-16.04 destroyed
關(guān)于它的更多選項(xiàng),建議你去查看 man 手冊(cè)頁(yè):
$ man virsh
以上是“在Ubuntu 18.04 LTS上如何使用 KVM 配置無(wú)頭虛擬化服務(wù)器”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對(duì)大家有幫助,更多相關(guān)知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。