透過您的圖書館登入
IP:18.221.129.19
  • 學位論文

虛擬化系統研究與實作

Study and Implementation of Virtualization Systems

指導教授 : 鍾宜玲

摘要


虛擬化技術受現代資訊產業廣泛使用,開發者需要虛擬化切換不同專案的開發環 境,測試者需要虛擬化測試軟體在不同環境的執行狀況,實際執行時透過虛擬化可以更 有效運用資源,還能透過虛擬化增加服務可靠度、加快部署速度。例如每個人每天都會 使用到各種軟體服務,但軟體服務可能會因硬體損毀而中斷服務,透過虛擬化技術將軟 體服務安裝在虛擬機器內更方便備份整個系統、維持系統環境一致、方便在硬體損毀後 直接將虛擬環境轉移到另一個正常硬體上執行,保持軟體服務高可用性。又例如 Python 的開發者會遇到不同版本的 Python 與不同版本的第三方套件就容易產生相容性問題, 透過容器的虛擬化能讓不同版本的軟體共存。透過容器與虛擬機器讓每個軟體都在獨立 的環境內執行,能夠快速開發、測試、部署軟體。 本篇論文討論虛擬化技術的演進,從沒有虛擬化的時代開始介紹,當時礙於硬體效 能不足難以實現,僅有提出虛擬化的概念。隨著電腦硬體迅速發展,開始出現各種虛擬 化技術與裝置,從小範圍的虛擬光碟機、虛擬硬碟、虛擬網卡、虛擬交換器,到能執行 完整作業系統的虛擬機器與 2013 年開始由 Docker 發揚光大的容器技術,介紹它們的功 用,以及發展這些技術解決了什麼問題。 本論文主要比較虛擬機器與容器兩種虛擬化方案的差別,分別以微軟的 Hyper-V 與 Docker Inc.的 Docker 為例,介紹他們優點與缺點,並且實際利用虛擬機器與容器改善了 兩個原有的系統。一個是原本透過紙本報名與紙本考試的電資學院會考,改由在網頁報 名與線上使用選擇題作答,能自動批改與評分的考試系統,利用虛擬機器的特性提供考 試系統穩定的執行環境。另一個是重做一個給學生寫 C 語言的線上程式設計考試系統, 原系統在執行學生寫的程式時,學生的程式跟考試系統在同一個環境執行,會影響到考 試系統運作,萬一有人上傳了不善的內容,不只危害考試系統,還可能危害同一個網路 內的電腦。本論文利用容器虛擬化的隔離執行解決了執行未知程式造成環境不安全,容 易危害整個系統的問題。

關鍵字

微服務 虛擬化 虛擬機器 容器

並列摘要


This paper discusses the evolution of virtualization technology. With the rapid development of computer hardware, various virtualization technologies and devices have begun to appear, from virtual CD-ROM drives, virtual hard disks, virtual network cards, virtual switches, to those capable of running a complete operating system. Virtual machines and container technologies that have been promoted by Docker since 2013, introduce their functions, and what problems these technologies have solved. This paper mainly compares the differences between the two virtualization solutions of virtual machines and containers. Taking Microsoft's Hyper-V and Docker Inc.'s Docker as examples, introducing their advantages and disadvantages, and actually using virtual machines and containers to improve the two principles. One is the electronic college exam, which originally used paper registration and paper exams, instead of using multiple-choice questions to answer on the web and online, which can automatically mark and score the exam system, using the characteristics of the virtual machine to provide a stable execution environment for the exam system . The other is to redo an online programming test system written in C language for students. When the original system executes the program written by the student, the student's program and the test system are executed in the same environment, which will affect the operation of the test system, in case someone Uploading improper content not only harms the examination system, but may also harm computers on the same network. This paper uses the Docker container to solve the problem of unsafe environment caused by the execution of unknown programs and easy to harm the entire system.

並列關鍵字

Microservice Virtual machine Container Hype-V Docker

參考文獻


(1) John von Neumann. (1945). First Draft of a Report on the EDVAC.
(2) 吳燦銘、胡昭民(2018)。計算機概論-數位趨勢與創新。博碩文化出版。
(3) 平山毅、中島倫明(2017)。圖解雲端技術
出版。
(4) Abraham Silberschatz, Peter Baer Galvin, Greg Gagne. (2014). 作業系統精論。東華出

延伸閱讀


國際替代計量