KVM学习笔记
KVM 全稱是 基于內核的虛擬機(Kernel-based Virtual Machine),它是一個 Linux 的一個內核模塊,該內核模塊使得 Linux 變成了一個 Hypervisor:
- 它由?Quramnet 開發,該公司于 2008年被?Red Hat 收購。
- 它支持?x86 (32 and 64 位), s390, Powerpc 等 CPU。
- 它從 Linux 2.6.20 起就作為一模塊被包含在 Linux 內核中。
- 它需要支持虛擬化擴展的 CPU。
- 它是完全開源的。官網。
?
KVM 是基于虛擬化擴展(Intel VT 或者 AMD-V)的 X86 硬件的開源的 Linux 原生的全虛擬化解決方案。KVM 中,虛擬機被實現為常規的?Linux 進程,由標準?Linux 調度程序進行調度;虛機的每個虛擬 CPU 被實現為一個常規的 Linux 進程。這使得 KMV 能夠使用 Linux 內核的已有功能。但是,KVM 本身不執行任何硬件模擬,需要客戶空間程序通過?/dev/kvm 接口設置一個客戶機虛擬服務器的地址空間,向它提供模擬的 I/O,并將它的視頻顯示映射回宿主的顯示屏。目前這個應用程序是 QEMU。KVM 所支持的功能包括:
- 支持CPU 和 memory 超分(Overcommit)
- 支持半虛擬化I/O (virtio)
- 支持熱插拔 (cpu,塊設備、網絡設備等)
- 支持對稱多處理(Symmetric Multi-Processing,縮寫為?SMP )
- 支持實時遷移(Live Migration)
- 支持 PCI 設備直接分配和?單根I/O 虛擬化 (SR-IOV)
- 支持 內核同頁合并 (KSM?)
- 支持 NUMA (Non-Uniform Memory Access,非一致存儲訪問結構 )
?
KVM工具:
- libvirt:操作和管理KVM虛機的虛擬化 API,使用 C 語言編寫,可以由?Python,Ruby, Perl, PHP, Java 等語言調用。可以操作包括 KVM,vmware,XEN,Hyper-v, LXC 等 Hypervisor。
- Virsh:基于 libvirt 的 命令行工具 (CLI)
- Virt-Manager:基于 libvirt 的 GUI 工具
- virt-v2v:虛機格式遷移工具
- virt-* 工具:包括 Virt-install (創建KVM虛機的命令行工具),?Virt-viewer (連接到虛機屏幕的工具),Virt-clone(虛機克隆工具),virt-top 等
- sVirt:安全工具
?
RedHat 有兩款產品提供 KVM 虛擬化: 1.?Red Hat Enterprise Linux:適用于小的環境,提供數目較少的KVM虛機。最新的版本包括 6.5 和 7.0. 2. Red Hat Enterprise Virtualization?(RHEV):提供企業規模的KVM虛擬化環境,包括更簡單的管理、HA,性能優化和其它高級功能。最新的版本是 3.0.?
為什么需要Libvirt?
Libvirt提供了什么?
?? ? 目前,libvirt 已經成為使用最為廣泛的對各種虛擬機進行管理的工具和應用程序接口(API),而且一些常用的虛擬機管理工具(如virsh、virt-install、virt-manager等)和云計算框架平臺(如OpenStack、OpenNebula、Eucalyptus等)都在底層使用libvirt的應用程序接口。
?
以上摘自:?https://blog.csdn.net/5hongbing/article/details/78424265?locationNum=9&fps=1
轉載于:https://www.cnblogs.com/zjd1396/p/9681082.html
總結
- 上一篇: mysql开启布隆过滤器_海量数据去重之
- 下一篇: 申请鲲鹏920测试机试水+编译nginx