跳到主要內容

簡易檢索 / 詳目顯示

研究生: 陳信宏
Shin-hong Chen
論文名稱: KVM虛擬機器容錯系統實作
The Fault Tolerant KVM implementation
指導教授: 梁德容
Deron Liang
口試委員:
學位類別: 碩士
Master
系所名稱: 資訊電機學院 - 軟體工程研究所
Graduate Institute of Software Engineering
論文出版年: 2014
畢業學年度: 102
語文別: 中文
論文頁數: 53
中文關鍵詞: KVM虛擬機器高可用性容錯
外文關鍵詞: high-availability
相關次數: 點閱:9下載:0
分享至:
查詢本校圖書館目錄 查詢臺灣博碩士論文知識加值系統 勘誤回報
  • 隨著虛擬化技術廣泛性的使用,一台實體機器不再只用於架設一個伺服器,而是將實體機器虛擬成數台虛擬機器來架設多個伺服器,於是製造伺服器的廠商會想將虛擬化技術直接安裝於自家生產的伺服器上來作為統包方案,來增加產品的附加價值,但是虛擬化會衍生出單點故障的問題,即是實體機器故障影響所有執行於其上的虛擬機器,使得可用性下降,只要製造伺服器的廠商可以使用高可用性虛擬機器當成他們的統包方案,就可以提升更多產品的附加價值,於是可以看出高可用性虛擬機器的重要,但是目前商品化的高可用性虛擬機器僅有VMware一家,即是說廠商要繳昂貴的權利金給VMware來換取授權,於是我們實作高可用性虛擬機器於KVM開源虛擬機器專案,做到效能比的上VMware,使這些尋找高可用性虛擬機器統包方案的廠商有一個低成本方案的選擇。


    With the extensive use of virtualization technology, a single physical machine is no longer just set up as a single server. Instead, single physical machine is virtualized into several virtual machines to host multiple servers. So the manufacturers of server want to install virtualization solution on their products as a turnkey solution to increase the added value of products. However, virtualization will derive a single point of failure problem that is a physical machine failure affects all virtual machines running on it. This decreases the availability of virtualization. It can improve lots of value for the server product as long as the manufacturers of server use high-availability virtual machine as their turnkey solutions. So we can see the importance of high-availability virtual machine. Currently there is only VMware which has commercial high-availability virtual machine product. The manufacturers of server need to pay expensive royalties to VMware to get authorization. Here we implement a highly available virtual machines in KVM virtual machine open source project that achieves comparable performance of VMware, so the manufacturers of server looking for these high-availability virtual machine turnkey solution has a choice of a low-cost highly available virtual machine solution.

    摘要 iii Abstract iv 目錄 v 圖目錄 vii 表目錄 viii 第一章 緒論 1 1-1 研究背景 1 1-2 研究動機 3 1-3 論文主要貢獻 4 1-4 論文架構 4 第二章 相關研究 6 2-1 背景知識 6 2-1-1 libvirt 6 2-1-2 QEMU 7 2-1-3 KVM 7 2-1-4 Fault-tolerance 11 2-2相關研究 11 2-2-1 VMware 11 2-2-2 Citrix XenServer 14 2-2-3 RHEL HA and RHEV 14 第三章 系統設計 15 3-1 使用情境 15 3-1-1 使用者使用情境 15 3-1-2 系統使用情境 16 3-1-3 Failure model 25 3-2 系統架構模型 25 3-3 系統運作細節 28 第四章 實驗環境與測量 31 4-1 實驗目的 31 4-2 實驗環境 31 4-3實驗運行結果 36 第五章 結論 42 第六章 未來研究方向 43 參考文獻 44

    [1] R. P. Goldberg, "Survey of virtual machine research," Computer, vol. 7, pp. 34-45, 1974.
    [2] G. J. Popek and R. P. Goldberg, "Formal requirements for virtualizable third generation architectures," Communications of the ACM, vol. 17, pp. 412-421, 1974.
    [3] K. Dooley, Designing large scale LANS: " O'Reilly Media, Inc.", 2001.
    [4] W.-C. Feng, "Making a case for efficient supercomputing," Queue, vol. 1, p. 54, 2003.
    [5] R. H. Enterprise. Red Hat Enterprise Virtualization versus VMware vSphere competitive pricing review. Available: http://www.redhat.com/rhecm/rest-rhecm/jcr/repository/collaboration/jcr:system/jcr:versionStorage/bf98e6aa0a0526015c417bbf385e69cf/3/jcr:frozenNode/rh:resourceFile
    [6] Is the Hypervisor Market Expanding or Contracting? Available: http://www.aberdeen.com/Aberdeen-Library/8157/%20%20AI-hypervisor-server-virtualization.aspx
    [7] D. Perez-Botero, J. Szefer, and R. B. Lee, "Characterizing hypervisor vulnerabilities in cloud computing servers," presented at the Proceedings of the 2013 international workshop on Security in cloud computing, 2013.
    [8] KVM: Main Page. Available: http://www.linux-kvm.org/page/Main_Page
    [9] D. Petrovic and A. Schiper, "Implementing virtual machine replication: A case study using xen and kvm," in Advanced Information Networking and Applications (AINA), 2012 IEEE 26th International Conference on, 2012, pp. 73-80.
    [10] High Availability for Citrix XenServer. Available: http://support.citrix.com/servlet/KbServlet/download/21018-102-664364/High%20Availability%20for%20Citrix%20XenServer.pdf
    [11] VMware. (2012). vSphere Availability. Available: http://pubs.vmware.com/vsphere-50/topic/com.vmware.ICbase/PDF/vsphere-esxi-vcenter-server-501-availability-guide.pdf
    [12] libvirt: The virtualization API. Available: http://libvirt.org/index.html
    [13] QEMU. Available: http://wiki.qemu.org/Main_Page
    [14] KVM kernel module api. Available: https://www.kernel.org/doc/Documentation/virtual/kvm/api.txt
    [15] KVM initialization. Available: http://www.linux-kvm.org/page/Initialization
    [16] Linux Programmer's Manual : unix - sockets for local interprocess communication. Available: http://man7.org/linux/man-pages/man7/unix.7.html
    [17] QEMU/Monitor. Available: http://en.wikibooks.org/wiki/QEMU/Monitor
    [18] Linux Programmer's Manual : socket - create an endpoint for communication. Available: http://man7.org/linux/man-pages/man2/socket.2.html
    [19] I. P. Egwutuoha, D. Levy, B. Selic, and S. Chen, "A survey of fault tolerance mechanisms and checkpoint/restart implementations for high performance computing systems," The Journal of Supercomputing, vol. 65, pp. 1302-1326, 2013.
    [20] C.-L. Fang, D. Liang, F. Lin, and C.-C. Lin, "Fault tolerant web services," Journal of Systems Architecture, vol. 53, pp. 21-38, 2007.
    [21] Datastore. Available: http://pubs.vmware.com/vi3/sdk/ReferenceGuide/vim.Datastore.html
    [22] HA-Lizard open source High Availability Software for Citrix XenServer. Available: http://www.halizard.com/
    [23] Virtualization and High Availability. Available: https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/6/html/High_Availability_Add-On_Overview/ch-virt.html
    [24] RED HAT ENTERPRISE VIRTUALIZATION: HIGH AVAILABILITY. Available: http://www.redhat.com/f/pdf/rhev/DOC057_RHEVM_High_Availablility_20090828.pdf
    [25] Upstart Intro, Cookbook and Best Practise. Available: http://upstart.ubuntu.com/cookbook/#respawn
    [26] Upstart. Available: http://upstart.ubuntu.com/
    [27] Linux Programmer's Manual : kill - send signal to a process. Available: http://man7.org/linux/man-pages/man2/kill.2.html
    [28] (2009). KnowThyUbuntu. Available: https://help.ubuntu.com/community/KnowThyUbuntu
    [29] C.-D. Lu, "Scalable diskless checkpointing for large parallel systems," University of Illinois at Urbana-Champaign, 2005.
    [30] FIVE NINES: CHASING THE DREAM? Available: http://www.continuitycentral.com/feature0267.htm
    [31] Linux User's Manual : pidstat - Report statistics for Linux tasks. Available: http://man7.org/linux/man-pages/man1/pidstat.1.html

    QR CODE
    :::