【魚說科技】魚說科技入駐華為云市場,科技擊活文化,文化賦能產業!
898
2025-03-31
2.5 與QEMU/KVM結合的組件
在KVM虛擬化的軟件棧中,毋庸置疑的是KVM內核模塊與QEMU用戶態程序是處于最核心的位置,有了它們就可通過qemu命令行操作實現完整的虛擬機功能,本書中多數的實踐范例正是通過qemu命令行來演示的。然而,在實際的云計算的虛擬化場景中,為了更高的性能或者管理的方便性,還有很多的軟件可以作為KVM虛擬化實施中的組件,這里簡單介紹其中的幾個。
1. vhost-net
vhost-net是Linux內核中的一個模塊,它用于替代QEMU中的virtio-net用戶態的virtio網絡的后端實現。使用vhost-net時,還支持網卡的多隊列,整體來說會讓網絡性能得到較大提高。在6.1.6節中對vhost-net有更多的介紹。
2. Open vSwitch
Open vSwitch是一個高質量的、多層虛擬交換機,使用開源Apache2.0許可協議,主要用可移植性強的C語言編寫的。它的目的是讓大規模網絡自動化可以通過編程擴展,同時仍然支持標準的管理接口和協議(例如NetFlow、sFlow、SPAN、RSPAN、CLI、LACP、802.1ag)。同時也提供了對 OpenFlow 協議的支持,用戶可以使用任何支持 OpenFlow 協議的控制器對 OVS 進行遠程管理控制。Open vSwitch被設計為支持跨越多個物理服務器的分布式環境,類似于VMware的vNetwork分布式vswitch或Cisco Nexus 1000 V。Open vSwitch支持多種虛擬化技術,包括Xen/XenServer、KVM和VirtualBox。在KVM虛擬化中,要實現軟件定義網絡(SDN),那么Open vSwitch是一個非常好的開源選擇。
3. DPDK
DPDK全稱是Data Plane Development Kit,最初是由Intel公司維護的數據平面開發工具集,為Intel x86處理器架構下用戶空間高效的數據包處理提供庫函數和驅動的支持,現在也是一個完全獨立的開源項目,它還支持POWER和ARM處理器架構。不同于Linux系統以通用性設計為目的,它專注于網絡應用中數據包的高性能處理。具體體現在DPDK應用程序是運行在用戶空間上,利用自身提供的數據平面庫來收發數據包,繞過了Linux內核協議棧對數據包處理過程。其優點是:性能高、用戶態開發、出故障后易恢復。在KVM架構中,為了達到非常高的網絡處理能力(特別是小包處理能力),可以選擇DPDK與QEMU中的vhost-user結合起來使用。
4. SPDK
SPDK全稱是Storage Performance Development Kit,它可為編寫高性能、可擴展的、用戶模式的存儲程序提供一系列工具及開發庫。它與DPDK非常類似,其主要特點是:將驅動放到用戶態從而實現零拷貝、用輪詢模式替代傳統的中斷模式、在所有的I/O鏈路上實現無鎖設計,這些設計會使其性能比較高。在KVM中需要非常高的存儲I/O性能時,可以將QEMU與SPDK結合使用。
5. Ceph
Ceph是Linux上一個著名的分布式存儲系統,能夠在維護 POSIX 兼容性的同時加入復制和容錯功能。Ceph由儲存管理器(Object storage cluster對象存儲集群,即OSD守護進程)、集群監視器(Ceph Monitor)和元數據服務器(Metadata server cluster,MDS)構成。其中,元數據服務器MDS僅僅在客戶端通過文件系統方式使用Ceph時才需要。當客戶端通過塊設備或對象存儲使用Ceph時,可以沒有MDS。Ceph支持3種調用接口:對象存儲,塊存儲,文件系統掛載。在libvirt和QEMU中都有Ceph的接口,所以Ceph與KVM虛擬化集成是非常容易的。在OpenStack的云平臺解決方案中,Ceph是一個非常常用的存儲后端。
6. libguestfs
libguestfs是用于訪問和修改虛擬機的磁盤鏡像的一組工具集合。libguestfs提供了訪問和編輯客戶機中的文件、腳本化修改客戶機中的信息、監控磁盤使用和空閑的統計信息、P2V、V2V、創建客戶機、克隆客戶機、備份磁盤內容、格式化磁盤、調整磁盤大小等非常豐富的功能。libguestfs還提供了共享庫,可以在C/C++、Python等編程語言中對其進行調用。libguestfs不需要啟動KVM客戶機就可以對磁盤鏡像進行管理,功能強大且非常靈活,是管理KVM磁盤鏡像的首選工具。
KVM
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。