實操乾貨 KVM命令管理虛擬機器與效能優化

2021-09-11 12:56:35 字數 3100 閱讀 7255

kvm命令管理虛擬機器

1、kvm基本功能管理

簡要介紹kvm中經常使用的基本功能管理命令(centos7.4是宿主機中安裝的虛擬機器);

1)、virsh -h #檢視命令幫助

2)、ls /etc/libvirt/qemu #檢視kvm的配置檔案存放目錄(虛擬機器系統例項配置檔案的檔名為.xml)

3)、virsh list #檢視虛擬機器狀態;只檢視執行的虛擬機器狀態

4)、virsh list --all #檢視所有虛擬機器狀態;包括執行的與關閉的

5)、virsh shutdowncentos7.4 #虛擬機關機

6)、virsh start centos7.4 #虛擬機器開機

7)、virsh create /etc/libvirt/qemu/centos7.4.xml #通過配置檔案啟動虛擬機器系統例項

8)、virsh suspend centos7.4 #掛起虛擬機器

9)、virsh resume centos7.4 #恢復虛擬機器

10)、virsh autostartcentos7.4 #配置虛擬機器例項伴隨宿主機自動啟動;此命令會建立/etc/libvirt/qemu/autostart/目錄,目錄內容為開機自動啟動的系統

11)、vvirsh dumpxml centos7.4 > /etc/libvrit/qemu/test01.xml #匯出虛擬機器配置

12)、virsh undefine centos7.4 #刪除虛擬機器;刪除虛擬機器之前需要關閉虛擬機器,配置檔案會被刪除,但磁碟檔案不會被刪除

13)、virsh definecentos7.4.xml #重新定義虛擬機器;需要通過備份檔案重新定義虛擬機器,將匯出的test01.xml重新命名為centos7.4.xml

14)、vim /etc/libvirt/qemu/centos7.4.xml #通過其配置檔案修改其配置資訊,如:記憶體大小、磁碟大小

15)、virsh edit centos7.4 #等同於開啟配置檔案修改

2、kvm檔案管理

通過檔案管理可以檢視、修改、複製虛擬機器的內部檔案。

(1)、轉換raw格式磁碟檔案至qcow2格式

(2)、修改centos7.4的xml配置檔案

virsh edit centos7.4

(3)、yum安裝libgusetfs-tools後產生的命令列工具可直接讀取qcow2格式的磁碟檔案

3、虛擬機器快照

virsh start centos7.4

virsh snapshot-create centos7.4 #建立快照

virsh snapshot-current centos7.4 #檢視快照版本資訊

virsh snapshot-list centos7.4 #檢視快照資訊

virsh snapshot-revert centos7.4 1533807764 #恢復虛擬機器至1533807764

virsh snapshot-delete centos7.4 1533807829 #刪除快照

kvm效能優化kvm為什麼要調優: 效能的耗損是關鍵。kvm採用全虛擬化技術,全虛擬化要有乙個軟體來模擬硬體層,固有一定的耗損,特別是i/o,因此需要優化。 1、cpu優化 要考慮cpu的數量問題,所有guestcpu的總數目不超過物理機cpu的總數即可。 2、記憶體優化

、ksm(相同頁合併)開啟ksm會將相同的記憶體合併 記憶體分配的最小單位是 page(頁面),預設大小是4kb。可以將host機內容相同的記憶體合併,以節省記憶體的使用,特別是在虛擬機器作業系統都一樣的情況下,肯定會有很多內容相同的記憶體值,開啟了ksm,則會將這些記憶體合併為乙個,當然這個過程會有效能損耗,所有開啟與否,需要考慮使用場景。

2)、對記憶體設定限制

如果我們有多個虛擬機器,為了防止某個虛擬機器無節制地使用記憶體資源,導致其他虛擬機器無法正常使用,就需要對記憶體的使用進行限制。

virsh memtune centos7.4 #檢視虛擬機器centos7.4記憶體限制

3、大頁後端記憶體

cat /proc/meminfo #檢視記憶體資訊,無可用大頁

echo 25000 > /proc/sys/vm/nr_hugepages #指定大頁需要的記憶體頁面數,臨時生效;(sysctl -w vm.nr_hugepages=25000 #永久生效)

cat /proc/meminfo | grep hugepage

關閉虛擬機器,編輯虛擬機器xml配置檔案使用大頁來分配記憶體

virsh destroy centos7.4

vim /etc/libvirt/qemu/centos7.4.xml

mount -t hugetlbfs /dev/hugepages/ #掛載hugetlbfs檔案系統

systemctl restart libvirtd.service #重啟服務

virsh start centos7.4 #開啟虛擬機器

3、i/o優化

在實際的生產環境中,為了公尺麵過度消耗磁碟資源而對其他的虛擬機器造成影響,我們希望每台虛擬機器對磁碟資源的消耗是可控的,比如多個虛擬機器往硬碟中寫資料,誰可以優先寫,就可以調整i/o的權重weight,權重越高寫入磁碟的優先順序越高。 對磁碟i/o控制方式有兩種方式: 1)、在整體中的權重,範圍在100~1000. 2)、限制具體的i/o.

virsh blkiotune centos7.4 #檢視當前虛擬機器權重狀態

virsh blkiotune centos7.4 --weight 500 #通過命令修改權重為500

4、系統優化工具tuned/tuned-admtuned是服務端程式,用來監控和收集系統各個元件的資料,並依據資料提供的資訊動態調整系統設定,達到動態優化系統的目的。 tuned-adm是客戶端程式,用來和tuned打交道,用命令列的管理方式和配置tuned/tuned-adm,提供了一些預先配置的優化方案可直接使用。

yum install tuned -y

service tuned start #啟動服務

tuned-adm active #檢視當前優化方案

tuned-adm list

kvm虛擬機器管理

原創博文 安裝配置kvm web管理kvm kvm系統安裝 kvm轉殖 快照 kvm虛擬機器管理 系統自動化安裝 kvm自動化安裝centos例項 使用本地iso映象,使用本地ks自動化安裝指令碼 centos7 mini,ks kvname centos7.3 qemu img create f ...

KVM虛擬機器管理

定義新的儲存池 virsh pool define as spool4lj dir home lj spool4lj virsh pool build spool4lj 建立池子 virsh pool list all 檢視池子列表 virsh pool start spool4lj 開啟池子 vi...

kvm虛擬機器儲存管理

1 kvm 的儲存虛擬化是通過儲存池 storage pool 和卷volume 來管理的。2 storage pool 是宿主機上可以看到的一片儲存空間,可以是多種型 3 volume 是在 storage pool 中劃分出的一塊空間,宿主機將 volume 分配給虛擬機器,volume 在虛擬...