《深度實踐KVM:核心技術、管理運維、性能優化與項目實施》在中國運維領域將具有“劃時代”的重要意義:第一,作者團隊是國內的KVM技術專家、虛擬化技術專家和運維專家,是國內第一批研究并將KVM應用到大規模生產環境的人;第二,書中的所有知識、經驗和案例都來自金山、盛大等國內一線互聯網公司,這些公司的業務規模巨大,生產環境復雜;第三,從核心技術、管理運維、性能優化、項目實施等多個維度系統、深入講解KVM虛擬化技術的工作原理、應用方法和技術生態,并針對生產環境中的各種難題給出了解決方案;第四,本書內容得到了來自金山、盛大、阿里、獵豹移動、觸控科技、英特爾、浪潮等大型IT企業的數十位VP和運維專家的高度認可,并聯袂推薦。
《深度實踐KVM:核心技術、管理運維、性能優化與項目實施》共20章,分為五篇:
第一篇(1~8章):虛擬化技術選型及KVM虛擬機技術,詳細介紹了虛擬化技術的選型,KVM的CPU和內存虛擬化技術、磁盤虛擬化技術、網絡虛擬化技術以及這些技術的生產環境應用場景,物理機轉虛擬機,KVM的桌面虛擬化實踐。
第二篇(9~10章)開源分布式文件系統在KVM中的應用,詳細講解了常見的開源分布式文件系統在KVM環境中的使用,重點講解比較熱的Ceph文件系統,包括配置、使用及常見故障處理。
第三篇(11~13章):開源的虛擬化管理平臺在生產環境的實踐經驗,重點講解了OpenStack、OpenNebula在生產環境的實踐與故障處理,還有oVirt、CloudStack、Convirt、WebVirtMgr等幾個管理平臺的架構和理念。
第四篇(14~21章):KVM虛擬化項目的實施及經驗系統講解了業務性能評估、壓力模型建立、虛擬機性能測試、宿主機基準測試、業務測試環境測試驗證、單機虛擬化技術、集群虛擬化技術、虛擬化正式環境上線等一套完整的虛擬化項目實施過程。
第五篇(第22章)KVM虛擬化的典型案例講解了KVM虛擬化過程中比較典型的一些案例,針對案例中的問題給出了解決思路和方法,方便讀者在碰到類似的問題時找到解決方案。
國內KVM專家和運維專家多年大規模生產環境實踐經驗總結,國內數十位運維專家鼎力支持和推薦
從核心技術、管理運維、性能優化、項目實施等多個維度系統、深入講解KVM虛擬化技術的工作原理、應用方法和技術生態,并針對生產環境中的各種難題給出了解決方案
目前,國內新一代的公有云底層采用的都是KVM,據筆者了解,國內原來一些采用Xen的公有云也逐步在向KVM遷移。許多企業的私有云項目招標中,已經明確要求使用KVM。在全球范圍內,OpenStack就是云建設的標準,而當前OpenStack底層默認就是KVM。經過幾年的快速發展,KVM技術已經非常成熟穩定,在任何Linux發行版中,KVM都是標配。虛擬化已經成為一項必備的技術技能,而學習Linux就必須學習KVM。
為什么寫這本書
2009年,當虛擬化在互聯網業內鮮有使用時,我們虛擬化小組在國內已經在生產環境率先開始KVM虛擬化技術的探索。通過實施虛擬化,我們幾年內為公司節省了上億元的運營成本,幫助公司多個處于生命周期末的游戲項目實現扭虧為盈。
當時,KVM還是一個小眾產品,國內文檔較少,我們只能通過鉆研國外的英文資料甚至閱讀源代碼來學習。RedHat是KVM的重要支持者,因此與其公司RHEL系統同源的CentOS成為了研究KVM的重要資料。從當時剛發布的CentOS 5.5版本開始,我們一路追隨CentOS系統的升級,每有一個版本發布,我們都要測試評估新的KVM虛擬化特性,然后逐步在生產環境部署,這樣的工作方法一直持續到最新的CentOS 6.6及CentOS 7.1。這也是我們小組人員快速成長的一個階段,我們對KVM技術的熱愛一直保持了下來,我們在周圍普及KVM技術的熱情一直沒有改變。
時至今日,KVM經過幾年的快速發展,已經成為了最炙手可熱的虛擬化引擎,國內新一代的公有云全部選擇了KVM。而與KVM如火如荼的發展形成鮮明對比的是中文資料依然匱乏,尤其是介紹實踐經驗的資料。在我們周圍和各種技術論壇上,經常碰到一些運維工程師,在實施一個KVM虛擬化項目時,不知道從哪里開始;也碰到對KVM技術感興趣的運維人員在重復問一些相近的問題。于是,我們幾個人萌生了一個想法,為什么不把我們的KVM項目運維實踐經驗一一記錄下來,分享給大家。與此同時,我們也猶豫過,因為有許多問題我們也并未完全理解。但是,經過認真思考后的我們認為,即便在這種情況下,我們幾年積累下來的實踐經驗對于想要了解和學習KVM虛擬化技術的工程師來說也是非常有意義的,畢竟實踐更能檢驗真理。回想當初自己遇到問題的時候,我們也得到了一些論壇朋友、圈內專家的熱心解答。互聯網精神崇尚開放,這更加堅定了我們創作此書的決心。我們愿意將自己對KVM技術的理解和認識,以及在KVM虛擬化中解決問題的思路和方法分享出來,讓大家少走一些我們走過的彎路,同時能夠與所有運維工程師共同學習提升!
本書特色
本書是KVM一線項目運維實踐經驗總結,在KVM CPU、內存、網絡、磁盤方面擁有豐富的技術積累,在KVM虛擬化開源分布式與商業存儲、KVM桌面虛擬化方面有的大量實踐,我們還會指出踩過的“技術坑”,這些都是彌足珍貴的經驗。
本書對Linux系統和虛擬化有一定了解,但是對KVM不了解或者是了解不多,而準備在測試或者生產環境部署KVM虛擬化的讀者,本書會介紹虛擬化項目如何評估、如何逐步實施,并介紹相關的技術與運維實踐,希望對讀者的生產環境虛擬化實施有所幫助。
對于正在做KVM虛擬化日常運維的讀者,本書有相應的技術、實踐經驗、問題案例分享,便于這些讀者碰到相似的問題時查詢或者找到解決思路。
本書面向的讀者
KVM已經是Linux系統的標配,是Linux的必備技能,希望本書對廣大Linux從業者能夠有所幫助。
本書適用于以下讀者:
Linux系統工程師。
從事Linux虛擬化開發的程序員。
虛擬化工程師。
IDC機房管理員。
有志于從事虛擬化的在校大學生。
如何閱讀本書
本書分為五篇。
第一篇(第1~8章),介紹虛擬化選型及KVM虛擬機技術。實施虛擬化可帶給我們哪些收益,虛擬化引擎選擇,KVM虛擬化相關的CPU、內存、磁盤、網絡技術及生產環境應用場景,物理機轉虛擬機,KVM桌面虛擬化實踐。
第二篇(第9~10章),介紹開源分布式文件系統在KVM虛擬化的應用。介紹一些常見的開源分布式文件系統如何在KVM環境使用,重點詳細介紹最近一兩年比較熱的Ceph文件系統,包括配置、使用和常見故障處理。
第三篇(第11~13章),介紹開源的虛擬化管理平臺在生產環境的實踐經驗。重點介紹OpenStack、OpenNebula在生產環境的實踐及故障處理,還有oVirt、CloudStack、Convirt、WebVirtMgr幾個管理平臺的架構和理念。
第四篇(第14~21章),介紹KVM虛擬化項目實施經驗,涵蓋業務性能評估、壓力模型建立、虛擬機性能測試、宿主機基準測試、業務測試環境測試驗證、單機虛擬化技術、集群虛擬化技術、虛擬化正式環境上線等一套完整的虛擬化項目實施過程。
第五篇(第22章),介紹KVM虛擬化過程中比較典型的一些案例。主要介紹一些在生產環境中的案例及解決思路、方法,方便讀者碰到類似的問題時找到解決方案。
根據本書內容,我們給出如下閱讀建議:
如果是剛準備開始實施虛擬化的讀者,請從頭開始閱讀本書。
如果對分布式文件系統在虛擬化中的應用感興趣的讀者,可以閱讀第二篇的內容。
如果對虛擬化管理平臺使用感興趣的讀者,可以閱讀第三篇的內容。
如果是對虛擬化技術有一定了解,但是對不知道如何實施虛擬化的讀者,建議閱讀第四篇的內容。
如果在虛擬化實施碰到問題,需要尋找解決方法的讀者,可以閱讀第五篇的內容。
資源和勘誤
由于時間緊張,筆者水平有限,書中難免有錯誤和不足之處,筆者運營著一個微信訂閱號,名字為“KVM虛擬化實踐”,訂閱號為“kvm_virt”二維碼為:
歡迎讀者掃描關注,“KVM虛擬化實踐”會定時發布筆者對KVM虛擬化新的認識和經驗總結。也歡迎讀者通過這個微信訂閱號和筆者交互,書中的勘誤和更新也會通過這個訂閱號發布。
致謝
感謝盛大游戲高級總監陳桂新,盛大游戲副總監、G云COO馮禎旺對我們的支持,我們四個人都曾經或者現在在盛大游戲虛擬化小組工作,桂總、馮總一路上支持我們,堅定地支持我們沿著KVM的方向前進,即使中間碰到多次挫折。回首看,我們堅持了下來,也很高興我們這些年的成果終于開花結果,孵化出了G云,一款專門針對游戲行業物理機和云主機的混合云。
感謝金山西山居運維總監赫寶生對本書寫作的鼓勵和支持。感謝金山西山居運維架構師劉宇對本書的幫助和建議。
感謝曾經在盛大游戲虛擬化小組工作過的劉曉光、秦潔、楊樹林,感謝現在還在盛大游戲虛擬化小組工作的夏學峰、閆強,這本書也是我們所有人的經驗總結。
感謝盛大游戲網絡技術負責人、G云網絡架構師蘇永華,金山西山居資深網絡工程師李正奇在網絡方面的支持和幫助。
感謝金山西山居資深系統工程師、Zabbix權威專家薛群在宿主機監控方面的幫助。
特別感謝金山西山居高級系統工程師趙斌,提供了部分虛擬化生產環境實踐案例及測試結果。
感謝盛大游戲資深工程師楊帆、季青、武文對我們在服務器知識方面的支持和幫助。
感謝國內頂尖的數據庫專家葉金榮在本書成書過程中的支持和協助。
感謝機械出版社的楊福川和高婧雅,福川兄出版了一系列互聯網技術圖書,在認識福川兄之前,我們已經購買了多本福川兄出版的書,和福川兄的合作是我們的夢想。相信隨著時間的推移,會有更多的人認識到福川兄對中國互聯網技術巨大的貢獻。高婧雅編輯的專業、細致、認真、耐心令我們非常敬佩,和高婧雅合作的大半年內,我們受益匪淺,很感謝、很慶幸有機會和楊兄、高編輯合作。
致我們的家人
感謝我的舅舅、舅媽、表哥、表姐,你們對我的人生觀影響很大;感謝我的父親、母親,是你們一直在默默支持我;感謝我妻子和女兒一直以來的理解和支持,你們是我的動力。
——肖力,2015年6月
感謝父母辛苦的培養,沒有你們就沒有今天的我。感謝老婆在我一無所有的時候默默陪在我的身邊,還有可愛的兒子,你們是我一直前進的動力。
——汪愛偉,2015年6月
感謝生我養我的父親母親,這些年,你們辛苦了,兒子長大了,你們卻老了。感謝所有一路和我走過來的人,你們的支持和信任,給了我前進的勇氣和力量。感謝相信我,愿意和我一路走下去的人,無論明天怎樣,我都希望一路有你。
——楊俊俊,2015年6月
參與這本書的寫作對我來說非常榮幸,首先要感謝肖力等前輩傳授經驗并耐心支持,其次還要感謝家人對我業余時間不能陪伴的理解!
——趙德祿,2015年6月
肖力,資深運維專家,擁有15年運維經驗,就職于金山西山居,擔任系統運維經理,曾就職于盛大游戲,在運維圈有極大的影響力。國內最頂尖的KVM專家之一,從2009年開始研究KVM技術,是國內較早在生產環境大規模實踐KVM的人之一,積累了非常豐富的經驗。
熱衷于技術傳播,一直在無私地為運維領域的發展做貢獻,維護有微信訂閱號“KVM虛擬化實踐”,分享了大量KVM和運維領域的干貨內容,同時還運營著多個運維相關的微信群。此外,他還是華章“運維前線”系列圖書的總策劃,無償地在組織大量愿意無私分享經驗的運維工程師們來參與寫作。
汪愛偉,資深運維專家,安居客資深系統工程師,曾就職于阿里云、UCloud、盛大游戲等知名互聯網公司。對KVM技術有深入的研究,在虛擬化集群方面有豐富的生產環境經驗,擅長KVM虛擬化項目的實施和運維。
楊俊俊,資深虛擬化技術專家和運維工程師,就職于盛大,擔任盛大游戲公有云“G云”運維負責人和Intel聯合實驗室技術負責人,曾任職51。com,精通虛擬化項目的評估與實施,精通開源分布式文件系統在生產環境的運維與實踐。
趙德祿,資深運維工程師和虛擬化工程師,就職于攜程,擔任高級云平臺運維工程師,曾就職于盛大游戲,擔任資深虛擬化工程師。精通KVM、OpenStack、OpenvSwitch、桌面虛擬化等技術,在生產環境下的實踐經驗非常豐富。
本書贊譽
前 言
第一篇 KVM技術詳解與實踐
第1章 企業虛擬化選型與KVM介紹
1.1 KVM的前世今生
1.2 KVM與常用企業級虛擬化產品的PK
1.3 判斷企業是否適合使用KVM的標準
1.4 本章小結
第2章 開始自己的第一臺虛擬機
2.1 服務器BIOS設置
2.2 宿主機CentOS 6.5、CentOS 7系統安裝與配置技巧
2.3 第一臺虛擬機安裝
2.4 本章小結
第3章 CPU、內存虛擬化技術與應用場景
3.1 NUMA技術與應用
3.1.1 KVM虛擬機NUMA調優
3.1.2 CPU綁定操作方法
3.2 CPU熱添加與應用
3.3 CPU host-passthrough 技術與應用
3.4 CPU Nested 技術與配置方法
3.5 KSM技術與應用
3.6 內存氣球技術詳解與應用
3.7 內存限制技術與應用
3.8 巨型頁內存技術與應用
3.9 本章小結
第4章 網絡虛擬化技術與應用場景
4.1 半虛擬化網卡技術詳解
4.1.1 半虛擬化網卡的配置
4.1.2 全虛擬化網卡、半虛擬化網卡性能比較
4.1.3 全虛擬化網卡、半虛擬化網卡的應用場景
4.2 MacVTap和vhost-net技術原理與應用
4.2.1 MacVTap技術與應用
4.2.2 vhost_net技術
4.3 網卡的中斷與多隊列
4.4 網卡PCI Passthrough技術
4.5 SR-IVO虛擬化技術
4.6 虛擬化軟件交換機Open vSwitch的安裝與配置
4.6.1 Open vSwitch安裝
4.6.2 Open vSwitch典型配置
4.7 多網卡綁定與建橋
4.8 本章小結
第5章 KVM磁盤虛擬化技術與應用場景
5.1 磁盤虛擬化方式性能比較與應用場景
5.1.1 QEMU磁盤虛擬化方式概述
5.1.2 IDE與Virtio性能比較測試
5.2 Virtio磁盤緩存方式詳解、性能比較與應用場景
5.2.1 磁盤緩存詳解
5.2.2 緩存方式的性能比較測試
5.2.3 緩存方式的應用場景
5.3 磁盤鏡像格式
5.3.1 QEMU支持的磁盤鏡像格式
5.3.2 裸設備使用
5.3.3 KVM虛擬機鏡像管理利器guestfish
5.3.4 raw、qcow2、裸盤、lvm性能比較
5.3.5 磁盤鏡像格式的應用場景
5.4 文件系統塊對齊
5.4.1 什么是塊對齊
5.4.2 塊對齊與塊不對齊性能比較
5.4.3 生產環境如何配置塊對齊
5.5 SSD在KVM虛擬化中的使用實踐
5.5.1 SSD原理與寫放大
5.5.2 SSD在KVM中的使用
5.5.3 Flachcache配置與性能測試
5.5.4 DM-cache配置
5.5.5 LVM cache配置與性能測試
5.5.6 生產環境中SSD使用要點
5.6 本章小結
第6章 KVM虛擬機的資源限制
6.1 哪些場景要做虛擬機的資源限制
6.2 使用CGroups
6.3 KVM虛擬機CPU資源限制配置
6.4 KVM虛擬機網絡資源限制
6.5 KVM虛擬機磁盤資源限制
6.6 本章小結
第7章 物理機轉虛擬機實踐
7.1 哪些應用場景適合做物理機轉虛擬機
7.2 P2V的技術實施方案
7.3 Windows系統物理機轉虛擬機的操作方法
7.3.1 WinPE的制作方法
7.3.2 Windows系統P2V操作方法
7.4 Linux物理服務器轉換虛擬機操作
7.5 使用virt-p2v工具進行P2V轉換
7.6 P2V經驗總結
7.7 關于V2V
7.8 本章小結
第8章 KVM桌面虛擬化實踐
8.1 桌面虛擬化簡介及Spice協議
8.2 桌面虛擬化實踐經驗
8.3 本章小結
第二篇 分布式文件系統
第9章 幾種常見開源文件系統在KVM中的應用
9.1 演示環境基礎配置
9.2 DRBD在KVM中的應用
9.2.1 DRBD介紹
9.2.2 DRBD搭建方法及在KVM中的應用
9.2.3 DRBD在KVM虛擬化中的優化方案
9.3 GlusterFS在KVM虛擬化中的應用
9.3.1 GlusterFS介紹
9.3.2 GlusterFS集群搭建與使用
9.3.3 GlusterFS在KVM虛擬化中的應用
9.3.4 GlusterFS在KVM虛擬化中的優化方案
9.4 Sheepdog在KVM中的應用
9.4.1 Sheepdog介紹
9.4.2 Sheepdog搭建方法及在KVM中的應用
9.5 MooseFS在KVM中的應用
9.5.1 MooseFS介紹
9.5.2 MFS搭建方法及在KVM虛擬化中的應用
9.6 本章小結
第10章 Ceph在KVM虛擬化中的應用與故障處理
10.1 Ceph簡介
10.2 Ceph部署方法及在KVM中的應用
10.2.1 使用ceph-deploy工具部署Ceph
10.2.2 掛載CephFS
10.2.3 通過Librbd方式使用Ceph RBD
10.2.4 使用內核方式掛載并使用Ceph RBD
10.3 CRUSH算法介紹及調優方法
10.3.1 CRUSH算法介紹
10.3.2 CRUSH算法調優方法
10.4 多角度評估Ceph在KVM虛擬化環境中的應用
10.5 Ceph生產環境搭建案例
10.5.1 使用CephFS集中備份虛擬機
10.5.2 使用Librbd將虛擬機運行在Ceph RBD
10.5.3 在CephFS上創建qcow2文件作為云硬盤
10.6 Ceph常見故障處理
10.6.1 Ceph集群監控狀態檢查
10.6.2 Ceph常見錯誤提示的含義與處理方法
10.7 本章小結
第三篇 KVM虛擬化管理平臺
第11章 利用OpenStack管理KVM
11.1 OpenStack搭建
11.1.1 OpenStack簡介
11.1.2 控制節點的安裝
11.1.3 計算節點的安裝
11.2 OpenStack實用技巧
11.2.1 RabbitMQ Cluster搭建
11.2.2 利用Haproxy和Keepalived實現控制節點高可用
11.2.3 冷遷移虛擬機的方法
11.3 本章小結
第12章 利用OpenNebula管理KVM
12.1 OpenNebula架構
12.1.1 OpenNebula架構介紹
12.1.2 OpenNebula組件介紹
12.2 在KVM中使用OpenNebula
12.2.1 在CentOS 6.5上快速搭建OpenNebula
12.2.2 使用OpenNebula創建第一臺KVM虛擬機
12.2.3 使虛擬機硬盤創建在宿主機本地硬盤上
12.3 OpenNebula常見故障處理
12.4 本章小結
第13章 其他管理平臺介紹
13.1 ConVirt管理平臺介紹
13.1.1 ConVirt的理念
13.1.2 ConVirt的架構
13.2 CloudStack管理平臺介紹
13.3 oVirt管理平臺介紹
13.4 WebVirtMgr管理平臺介紹
13.5 如何選擇管理平臺
13.6 本章小結
第四篇 KVM虛擬化項目實施
第14章 業務性能評估與壓力模型建立
14.1 Linux 系統性能數據采集原則與方法
14.2 Linux 系統壓力模型建立
14.3 Windows系統性能數據采集原則與方法
14.4 Windows 系統壓力模型建立
14.5 本章小結
第15章 宿主機選型與基礎性能測試
15.1 宿主機CPU選型原則
15.2 宿主機內存選型注意事項
15.3 宿主機硬盤選型
15.4 RAID卡選型
15.5 服務器網卡選型
15.6 宿主機性能基準測試實踐
15.7 本章小結
第16章 虛擬機鏡像制作、配置與測試
16.1 Windows虛擬機制作方法
16.1.1 Windows鏡像制作
16.1.2 Windows虛擬機sysprep初始化封裝
16.2 Linux鏡像制作方法
16.2.1 RHEL/CentOS鏡像制作方法
16.2.2 Ubuntu、Debian虛擬機配置注意點
16.3 虛擬機自動配置IP的實現辦法
16.3.1 通過DHCP給虛擬機配置IP
16.3.2 通過Libvirt實現虛擬機自動配置IP
16.3.3 筆者生產環境虛擬機IP自動配置的方法
16.4 虛擬機鏡像測試
16.5 本章小結
第17章 單機虛擬化技術與生產環境實踐
17.1 單機虛擬化技術與應用場景
17.1.1 單機虛擬化的優勢和劣勢
17.1.2 單機虛擬化技術
17.1.3 單機虛擬化應用場景
17.2 單機虛擬化生產環境注意點
17.2.1 單機虛擬化災備與應急方案
17.2.2 單機虛擬化生產環境部署實踐
17.3 本章小結
第18章 KVM虛擬化集群技術與應用場景
18.1 虛擬化集群設計思路與架構
18.2 虛擬化集群的實施流程與技術方案
18.3 虛擬化集群搭建
18.3.1 計算節點配置與管理
18.3.2 網絡設計與配置
18.3.3 虛擬機遷移管理
18.3.4 虛擬化集群的備份與恢復
18.4 Dell EqualLogic存儲的管理實踐經驗
18.5 本章小結
第19章 業務遷移到虛擬化環境流程
19.1 性能評估與測試環境測試
19.2 上線前的檢查工作
19.3 小規模部署及逐步切換到虛擬化環境
19.4 本章小結
第20章 宿主機自動化運維管理
20.1 Puppet簡介與安裝部署
20.2 利用Puppet管理宿主機的運維架構設計
20.3 利用Puppet配置宿主機初始化操作
20.4 利用Puppet管理宿主機配置與更新
20.5 利用Puppet推送宿主機的非一致性配置
20.6 本章小結
第21章 虛擬化監控、報警與應急響應方案
21.1 虛擬化監控內容
21.1.1 宿主機CPU監控要點
21.1.2 宿主機內存監控注意點
21.1.3 宿主機網絡監控注意點
21.1.4 宿主機磁盤監控注意點
21.1.5 宿主機層面監控虛擬機的方法
21.2 監控軟件Cacti、Zabbix
21.2.1 用Cacti監控宿主機
21.2.2 用Zabbix監控宿主機
21.3 應急方案
21.3.1 應急方案制定注意要點
21.3.2 單機虛擬化應急方案
21.3.3 集群虛擬化應急方案
21.4 本章小結
第五篇 KVM虛擬化典型案例
第22章 生產環境問題案例與分析
22.1 游戲在虛擬機上非常慢的案例
22.2 虛擬機流量過高引起網絡風暴的案例一
22.3 虛擬機流量過高引起網絡風暴的案例二
22.4 其他生產環境問題案例
22.4.1 共享存儲集群虛擬機遷移故障案例
22.4.2 宿主機異常關機后虛擬機無法啟動案例
22.4.3 宿主機使用CentOS 5.6系統問題案例
22.4.4 Windows虛擬機網絡閃斷、不通問題案例
22.4.5 Windows 7虛擬機只能使用2個CPU案例
22.4.6 生產環境非常奇怪的一個案例
22.4.7 U盤在虛擬機上掛載問題案例
22.4.8 HP ILO4固件Bug引起宿主機重啟案例
22.4.9 一次機房斷電引起的問題案例
22.4.10 CPU綁定問題案例
22.4.11 生產環境存儲故障導致50個虛擬機丟失案例
22.4.12 生產環境Ubuntu虛擬機故障問題案例
22.5 本章小結
附錄 筆者推薦的KVM學習資料