i
..
ĐẠI HỌC THÁI NGUYÊN
TRƢỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
NGUYỄN VIỆT DŨNG
ẢO HÓA MÁY CHỦ VÀ ỨNG DỤNG TẠI
TRƢỜNG CAO ĐẲNG SƢ PHẠM THÁI NGUYÊN
Chuyên ngành: Khoa học máy tính
Mã số: 60.48.01
LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH
Ngƣời hƣớng dẫn khoa học: TS. Phạm Thế Quế
THÁI NGUYÊN - 2013
Số hóa bởi Trung tâm Học liệu
http://lrc.tnu.edu.vn
i
LỜI CAM ĐOAN
Luận văn này do tôi độc lập nghiên cứu và thực hiện dưới sự hướng dẫn trực
tiếp của thầy giáo TS. Phạm Thế Quế
Các ý tưởng và kết quả nghiên cứu của các tác giả khác được sử dụng trong
luận văn này đều được trích dẫn và liệt kê đầy đủ trong phần tài Tiệu tham khảo
Tôi hoàn toàn chịu trách nhiệm về lời cam đoan này.
Thái Nguyên, ngày 15 tháng 9 năm 2013
Tác giả luận văn
Nguyễn Việt Dũng
Số hóa bởi Trung tâm Học liệu
http://lrc.tnu.edu.vn
ii
LỜI CẢM ƠN
Tôi xin được gửi lời cảm ơn sâu sắc tới thầy Phạm Thế Quế đã tận tình
hướng dẫn tôi trong suốt quá trình thực hiện luận văn này.
Tôi xin cám ơn tập thể các thầy giáo, cô giáo của Đại học Công nghệ thông
tin & truyền thông - Đại học Thái Nguyễn và Viện Công nghệ thông tin- Truyền
thông đã trang bị cho tôi những kiến thức nền tảng cần thiết.
Tôi xin cám ơn gia đình và bạn bè đã hỗ trợ và động viên để tôi có thể hoàn
thành luận văn này.
Mặc dù đã có nhiều cố gắng trong quá trình thực hiện, luận văn chắc chắn
vẫn còn nhiều thiếu sót. Tôi rất mong nhận được những ý kiến đóng góp của mọi
người về nội dung luận văn để có thể tiếp tục phát triển hướng nghiên cứu này
trong tương lai.
Thái Nguyên, ngày 15 tháng 9 năm 2013
Tác giả luận văn
Nguyễn Việt Dũng
Số hóa bởi Trung tâm Học liệu
http://lrc.tnu.edu.vn
iii
MỤC LỤC
LỜI CAM ĐOAN........................................................................................................................... i
LỜI CẢM ƠN ................................................................................................................................ ii
MỤC LỤC ..................................................................................................................................... iii
THUẬT NGỮ ............................................................................................................................... vi
DANH MỤC HÌNH VẼ............................................................................................................. vii
MỞ ĐẦU ......................................................................................................................................... 1
Chƣơng 1. TỔNG QUAN VỀ ẢO HOÁ MÁY CHỦ .............................................3
1.1. Khái niệm ảo hóa máy chủ ...................................................................................3
1.2. Các thành phần của một hệ thống ảo hóa.............................................................5
1.2.1. Tài nguyên vật lý (host machine / host hadware) .............................................5
1.2.2. Các phần mềm ảo hóa (virtual software) ..........................................................5
1.2.3. Máy ảo (virtual machine) ..................................................................................6
1.2.4. Hệ điều hành khách(guest operating system) ...................................................6
1.3. Giới thiệu các kiến trúc & các mức độ ảo hóa .....................................................6
1.4. Các kiến trúc ảo hóa .............................................................................................7
1.4.1. Kiến trúc ảo hóa Hosted-based .........................................................................7
1.4.2. Kiến trúc ảo hóa Hypervisor-based ...................................................................8
1.4.3. Kiến trúc ảo hóa Hybrid ..................................................................................11
1.5. Các mức độ ảo hóa .............................................................................................12
1.5.1. Ảo hóa toàn phần - Full Virtualization ...........................................................12
1.5.2. Paravirtualization - Ảo hóa song song .............................................................................. 13
1.5.3. Ảo hóa hệ điều hành............................................................................................................ 15
1.5.4. Ảo hóa ứng dụng ................................................................................................................ 16
1.6. Ưu điểm, nhược điểm của ảo hoá máy chủ ........................................................................ 17
1.6.1. Ưu điểm................................................................................................................................ 17
1.6.2. Nhược điểm ......................................................................................................................... 18
1.7. An toàn, bảo mật khi triển khai ảo hóa máy chủ ................................................................. 19
1.7.1. Giải quyết sự cố ................................................................................................................... 19
1.7.2. Vấn đề bảo mật .................................................................................................................... 19
Số hóa bởi Trung tâm Học liệu
http://lrc.tnu.edu.vn
iv
CHƢƠNG 2. CÔNG NGHỆ ẢO HOÁ MÁY CHỦ VỚI VMWARE ESX SERVER .20
2.1. Một số công nghệ ảo hoá máy chủ .....................................................................20
2.1.1. Công nghệ ảo hoá Virtuozzo Containers của Parallels ...................................20
2.1.2. Công nghệ ảo hoá XenServer của Citrix .........................................................22
2.1.3. Công nghệ ảo hoá Hyper - V của Microsoft ...................................................24
2.2. Cấu trúc Vmware Esx Server .............................................................................27
2.2.1. Hệ điều hành điều khiển (Console Operating System) ..................................29
2.2.2. Vmkernel (lõi điều khiển chính) .....................................................................29
2.2.3. The ESX Boot Process (Qúa trình khởi động máy chủ ESX) ........................30
2.2.4. Phần cứng ảo (HardwareVirtualization) .........................................................31
2.2.5. Tính năng Của ESX Server .............................................................................31
Chƣơng 3. XÂY DỰNG MÔ HÌNH ỨNG DỤNG ẢO HÓA MÁY CHỦ TẠI
TRƢỜNG CAO ĐẲNG SƢ PHẠM THÁI NGUYÊN ...................................................... 38
3.1. Giới thiệu về trường Cao đẳng Sư phạm Thái Nguyên .....................................38
3.2. Nhu cầu sử dụng & hiện trạng hệ thống thông tin của trường Cao đẳng Sư
phạm Thái Nguyên ....................................................................................................38
3.2.1. Nhu cầu sử dụng..............................................................................................38
3.2.2. Hiện trạng hệ thống thông tin trường Cao đẳng Sư phạm Thái Nguyên ........40
3.3. Giải pháp triển khai ứng dụng ảo hóa máy chủ vào hệ thống thông tin trường
Cao đẳng Sư phạm Thái Nguyên ..............................................................................42
3.3.1. Mục tiêu giải pháp ...........................................................................................42
3.3.2. Mô hình giải pháp triển khai ...........................................................................42
3.4. Yêu cầu...............................................................................................................44
3.5. Triển khai hệ thống ...........................................................................................45
3.5.1. Cài đặt Vmware ESX Server ..........................................................................45
3.5.2. Cấu hình mạng cho máy chủ ESX Server .......................................................46
3.5.3. Quản lý từ xa bằng VM vSphere client ...........................................................49
3.5.4. Khởi tạo máy ảo ..............................................................................................50
3.5.5 . Quản lý và theo dõi các máy ảo .....................................................................56
Số hóa bởi Trung tâm Học liệu
http://lrc.tnu.edu.vn
v
3.5.6. Triển khai các máy chủ cho hệ thống .............................................................59
3.5.7. Đánh giá hiệu quả công tác triển khai hệ thống .............................................68
KẾT LUẬN ..............................................................................................................70
1. Kết quả đạt được ...................................................................................................70
2. Những hạn chế ......................................................................................................70
3. Hướng phát triển ...................................................................................................70
TÀI LIỆU THAM KHẢO ......................................................................................71
Số hóa bởi Trung tâm Học liệu
http://lrc.tnu.edu.vn
vi
THUẬT NGỮ
Console Operating System
Hệ điều hành điều khiển
CPU (Control Proccessing Unit)
Bộ vi xử lý
Distributed Power Manager
Quản lý phân phối điện năng
Full virtualization
Ảo hóa toàn phần
Hardware-Assisted virtualization
Ảo hóa có hỗ trợ của phần cứng
HCL (Hardware Compatibility List)
Danh sách phần cứng tương thích
Hypervisor
Trình điều phối ảo hóa
Hyper-V
Công nghệ ảo hóa Microsoft
Host
Máy chủ, máy lưu trữ
I/O
Vào/Ra
Intel - VT
Công nghệ ảo hóa Intel
ISA (Instruction Set Architecture)
Kiến trúc tập lệnh
Lilo
Bộ nạp khởi động ứng dụng
Live Migration
Di trú nóng
Migration
Sự di trú
OS (Operating System)
Hệ điều hành
Paravitualization
Cận ảo hóa
Para-virtualization
Cận ảo hóa
Single point of failure
Điểm nút sự cố
The ESX Boot Process
Qúa trình khởi động máy chủ ESX
Update Manager
Quản lý nâng cấp
Virtualization
Ảo hóa
Vmkernel
Lõi điều khiển chính
VM (Virtual Machine)
Máy ảo
Số hóa bởi Trung tâm Học liệu
http://lrc.tnu.edu.vn
vii
DANH MỤC HÌNH VẼ
Hình 1.1: Một Server vật lý trong hệ thống ảo hóa .......................................... 3
Hình 1.2: Các thành phần của một hệ thống ảo hóa ......................................... 5
Hình 1.3: Mô hình Hosedt-based ...................................................................... 7
Hình 1.4: Kiến trúc Hypervisor-based ............................................................. 9
Hình 1.5: Kiến trúc Monolithic Hypervisor .................................................... 10
Hình 1.6: Kiến trúc Microkernelized Hypervisor ........................................... 11
Hình 1.7: Kiến trúc ảo hóa Hybrid .................................................................. 12
Hình 1.8: Ảo Hóa Toàn Phần - Full Virtualization ........................................ 13
Hình 1.9: Ảo hóa song song (Paravirtualization)........................................... 14
Hình 1.10: Mô hình Application Streaming của Citrix................................... 16
Hình 2.1: Kiến trúc ảo hoá Virtuozzo Containers........................................... 20
Hình 2.2: Thống kê tình hình sử dụng tài nguyên của các máy ảo trên
cùng hệ thống (Cửa sổ Parallels Management Console) .......... 22
Hình 2.3: Cửa sổ làm việc XenServer............................................................. 23
Hình 2.4: Kiến trúc Hyper - V ........................................................................ 26
Hình 2.5: Cấu trúc của ESX Server. ............................................................... 28
Hình 2.6: Sơ đồ tương tác trong ESX Server .................................................. 28
Hình 2.7: Sơ đồ phân phối card mạng............................................................. 31
Hình 2.8: Sơ đồ hoạt động của VMFS ............................................................ 32
Hình 2.9: Sơ đồ hoạt động của Vmware High Availability ............................ 33
Hình 2.10: Mô hình hoạt động của VMmonitor ............................................. 34
Hình 2.11: Mô hình hoạt động của Vmware Consolidated Backup ............... 35
Hình 2.12: Mô hình hoạt động của DRS ......................................................... 36
Hình 2.13: Mô hình hoạt động của Vmware vsphere data recovery .............. 37
Hình 2.14: Mô hình VirtualCenter Manager ................................................... 37
Hình 3.1: Sơ đồ khái quát hiện trạng hệ thống thông tin của Trường CĐSP
Thái Nguyên.................................................................................... 40
Số hóa bởi Trung tâm Học liệu
http://lrc.tnu.edu.vn
viii
Hình 3.2: Mô hình triển khai ứng dụng ảo hóa máy chủ vào hệ thống thông tin
trường Cao đẳng Sư phạm Thái Nguyên ........................................ 43
Hình 3.3: Màn hình khởi động cài đặt Vmware ESX 5.0 .............................. 45
Hình 3.4: Màn hình nhập mật khẩu quản trị máy chủ ESX ............................ 45
Hình 3.5: Màn hình kết thúc quá trình cài đặt ESX ........................................ 46
Hình 3.6: Màn hình chạy khởi động máy chủ ESX ........................................ 46
Hình 3.7: Màn hình đăng nhập máy chủ ESX ................................................ 47
Hình 3.8: Cấu hình thông số mạng cho máy chủ ESX ................................... 47
Hình 3.9: Cấu hình địa chỉ IP tĩnh, subnet mask và deafault gateway ........... 48
Hình 3.10: Màn hình thoát và lưu các thiết lập thay đổi cho máy chủ ESX .. 48
Hình 3.11: Chương trình Vsphere Client ........................................................ 49
Hình 3.12: Giao diện kết nối Esx Server ........................................................ 50
Hình 3.13: Khởi tạo máy ảo ............................................................................ 50
Hình 3.14: Hộp thoại chọn kiểu cấu hình ....................................................... 51
Hình 3.15: Hộp thoại đặt tên Server ............................................................... 51
Hình 3.16: Hộp thoại chọn nơi lưu trữ ............................................................ 52
Hình 3.17: Hộp thoại chọn hệ điều hành ........................................................ 52
Hình 3.18: Hộp thoại chọn dung lượng ổ cứng .............................................. 53
Hình 3.19: Hộp thoại cấu hình đã chọn .......................................................... 53
Hình 3.20: Kết thúc cấu hình máy ảo.............................................................. 54
Hình 3.21: Khởi động máy ảo ......................................................................... 55
Hình 3.22: Kết nối với image hệ điều hành .................................................... 56
Hình 3.23: Tổng quan hệ thống ...................................................................... 56
Hình 3.24: Hoạt động của máy ảo................................................................... 57
Hình 3.25: Quá trình phân phối tài nguyên tới các máy ảo ............................ 57
Hình 3.26: Sơ đồ quá trình hoạt động của CPU.............................................. 58
Hình 3.27: Tình trạng phần cứng .................................................................... 58
Hình 3.28: Cửa sổ Databases trong Microsoft SQL Server ............................ 59
Số hóa bởi Trung tâm Học liệu
http://lrc.tnu.edu.vn
ix
Hình 3.29: Thực hiện Restore Cơ sở dữ liệu vào Microsoft SQL Server...... 60
Hình 3.30: Cơ sở dữ liệu chạy phần mềm Eduman ........................................ 60
Hình 3.31: Cửa sổ khởi động Eduman trên máy Client .................................. 62
Hình 3.32: Cửa sổ đăng nhập hệ thống ........................................................... 63
Hình 3.33: Cửa sổ làm việc của Eduman với User Admin ............................. 63
Hình 3.34: Đăng nhập phần mềm với user P.Daotao...................................... 64
Hình 3.35: Cài đặt các component cần thiết ................................................... 64
Hình 3.36: Giao diện Mdeamon Mail Server .................................................. 65
Hình 3.37 : Tạo người dùng trong máy chủ mail ............................................ 65
Hình 3.38: Gởi mail từ user1 .......................................................................... 66
Hình 3.39: Kiểm tra thư tại user2.................................................................... 66
Hình 3.40: Cài đặt các component cần thiết ................................................... 67
Hình 3.41: Chọn các component ..................................................................... 67
Hình 3.42: Kiểm tra Web Server..................................................................... 68
Số hóa bởi Trung tâm Học liệu
http://lrc.tnu.edu.vn
1
MỞ ĐẦU
Trong vài thập niên trở lại đây, nhân loại chứng kiến sự phát triển như vũ
bão của ngành CNTT. Có thể nói CNTT hiện nay đã phát triển rất sâu rộng vào mọi
lĩnh vực của cuộc sống. Con người hiện nay sử dụng CNTT để giải trí, giao tiếp &
giải quyết các công việc hàng ngày. CNTT phát triển đã giúp cho trí tuệ nhân loại
được nâng lên một tầm cao mới. Người ta có thể tập hợp được trí tuệ toàn cầu thông
qua các hệ thống mạng xã hội, các hệ thống kết nối mở chạy trên nền mạng Internet.
Cơ sở để thực hiện được những điều đó là các máy chủ được kết nối với nhau trên
mạng Internet. Các máy chủ được sử dụng để cung cấp cho người sử dụng tất cả các
dịch vụ cần thiết từ các ứng dụng phổ biến như Web, Mail, FTP, DNS… đến các
ứng dụng riêng biệt. Ngày nay, không khó để tìm ra một hệ thống máy chủ của một
tổ chức, một doanh nghiệp. Bởi vì đối với nhiều đơn vị, máy chủ là bộ phận thiết
yếu để đảm bảo sự hoạt động và nâng cao hiệu suất của tổ chức.
Mỗi máy chủ thường chỉ phục vụ một dịch vụ duy nhất cho người dùng, vì
thế khi nhu cầu mở rộng các dịch vụ cung cấp tăng lên thì đồng hành với nó là việc
tăng số lượng các máy chủ trong một tổ chức. Một hệ thống máy chủ lớn đòi hỏi
phải mất một chi phí lớn trong việc duy trì hoạt động. Hơn nữa, với sự phát triển rất
nhanh của ngành CNTT hiện nay, các máy tính và máy chủ có dung lượng nhớ và
khả năng xử lý ngày càng lớn hơn và mạnh hơn. Điều đó sẽ gây lãng phí lớn nếu
đầu tư một máy chủ mới chỉ để cung cấp một dịch vụ.
Với xu thế toàn cầu hóa, việc cắt giảm chi phí và tối ưu hóa hệ thống là một
yêu cầu cấp thiết đối với các cơ quan, tổ chức, doanh nghiệp. Có nhiều phương
pháp để thực hiện tối ưu hóa hệ thống máy chủ, trong đó ảo hóa máy chủ là một
trong những phương pháp được nhắc đến rất nhiều trong thời gian gần đây. Ảo hóa
máy chủ là phương pháp có thể áp dụng ở mọi hệ thống máy chủ mà không phát
sinh thêm chi phí đầu tư. Nó là một biện pháp rất tốt trong việc tối ưu hóa hệ thống
với việc hợp nhất các nguồn tài nguyên của máy chủ.
Ảo hóa máy chủ mang lại những lợi ích sau:
Tiết kiệm được chi phí đầu tư, chi phí duy trì hệ thống
Tiết kiệm không gian đặt máy chủ và năng lượng tiêu thụ.
Giảm thời gian khôi phục sự cố.
Số hóa bởi Trung tâm Học liệu
http://lrc.tnu.edu.vn
2
Tạo lập được môi trường kiểm tra chạy thử ứng dụng mà không cần đầu tư
thêm hệ thống mới.
Dễ dàng trong việc mở rộng hệ thống.
Tạo lập sự tương thích đối với việc sử dụng các chương trình cũ.
Ngoài những lợi ích trên, ảo hóa máy chủ là công nghệ có thể cho phép tạo
lập các siêu máy tính (các máy tính với năng lực xử lý không lồ) bằng cách hợp
nhất các hệ thống máy chủ vào một máy logic.
Với những lợi ích cùng khả năng ứng dụng to lớn của công nghệ “Áo hóa
máy chủ”, tôi quyết định chọn đề tài “Ảo hóa máy chủ và ứng dụng tại trường Cao
Đẳng Sư Phạm Thái Nguyên” để làm luận văn cao học của mình, góp phần giúp
tôi học tập nâng cao trình độ chuyên môn, phục vụ cho bản thân và cơ quan nơi tôi
đang công tác.
Số hóa bởi Trung tâm Học liệu
http://lrc.tnu.edu.vn
3
Chƣơng 1
TỔNG QUAN VỀ ẢO HOÁ MÁY CHỦ
1.1. Khái niệm ảo hóa máy chủ
Ảo hóa máy chủ là một công nghệ được ra đời nhằm khai thác triệt để khả
năng làm việc của các phần cứng trong một hệ thống máy chủ. Nó hoạt động như
một tầng trung gian giữa hệ thống phần cứng máy tính và phần mềm chạy trên nó.
Ý tưởng của công nghệ ảo hóa máy chủ là từ một máy vật lý đơn lẻ có thể tạo thành
nhiều máy ảo độc lập. Ảo hóa cho phép tạo nhiều máy ảo trên một máy chủ vật lý,
mỗi một máy ảo cũng được cấp phát tài nguyên phần cứng như máy thật gồm có
Ram, CPU, Card mạng, ổ cứng, các tài nguyên khác và hệ điều hành riêng. Khi
chạy ứng dụng, người sử dụng không nhận biết được ứng dụng đó chạy trên lớp
phần cứng ảo.
Hình 1.1: Một Server vật lý trong hệ thống ảo hóa
Các bộ xử lý của hệ thống máy tính lớn được thiết kế hỗ trợ công nghệ ảo
hoá và cho phép chuyển các lệnh hoặc tiến trình nhạy cảm của các máy ảo có thể
ảnh hưởng trực tiếp đến tài nguyên hệ thống cho hệ điều hành chủ xử lý, sau đó lớp
ảo hóa sẽ mô phỏng kết quả để trả về cho máy ảo. Tuy nhiên không phải tất cả cảc
bộ xử lý đều hỗ trợ ảo hóa. Các bộ xử lý cũ trên máy để bàn không có hỗ trợ chức
Số hóa bởi Trung tâm Học liệu
http://lrc.tnu.edu.vn
4
năng này. Ngày nay hai nhà sản xuất bộ xử lý lớn trên thế giới là Intel và AMD đều
cố gắng tích hợp công nghệ ảo hóa vào trong các sản phẩm của họ. Các bộ xử lý có
ứng dụng ảo hóa thường là Intel VT(Virtual Technology) hoặc AMD Pacifica.
Sử dụng công nghệ ảo hóa đã đem đến cho người dùng sự tiện ích. Việc có
thể chạy nhiều hệ điều hành đồng thời trên cùng một máy tính thuận tiện cho việc
học tập ngiên cứu và đánh giá một sản phẩm hệ điều hành hay một phần mềm tiện
ích nào đó. Nhưng không ngừng lại ở đó, những khả năng và lợi ích của ảo hoá còn
hơn thế và nơi gặt hái được nhiều thành công và tạo nên thương hiệu của công nghệ
ảo hóa đó chính là trong môi trường hệ thống máy chủ ứng dụng và hệ thống mạng.
Ảo hóa máy chủ thực sự không được quan tâm cho đền những năm gần đây.
Do còn nhiều vấn đề về công nghệ và người dùng chưa thực sự quan tâm tới lợi ích
cũng như còn thiếu một đội ngũ am hiểu về công nghệ này nên việc áp dụng nó vào
hệ hệ thống là rất dè dặt. Nhưng khi đối mặt với thực trạng khủng hoảng của nền
kinh tế toàn cầu thì bất kì một cơ quan, tổ chức, doanh nghiệp nào cũng cần chú tâm
để tìm một giải pháp tiết kiệm hơn. Đây cũng là lúc công nghệ ảo hóa tìm được chỗ
đứng vững chắc cho mình trong lĩnh vực công nghệ thông tin trên thế giới.
Hiện nay có nhiều nhà cung cấp các sản phẩm máy chủ và phần mềm điều
khiển chú tâm đầu tư nghiên cứu và phát triển công nghệ này như là HP, IBM,
Microsoft và Vmware. Nhiều dạng ảo hóa được đưa ra và có thể chia thành hai dạng
chính là ảo hóa cứng và ảo hóa mềm. Từ hai dạng trên, sau này mới phát triển thành
nhiều loại ảo hóa có chức năng và cấu trúc khác nhau như VMM-Hypervisor,
VMM, Hybrid…
Ảo hóa cứng còn được gọi là phân thân máy chủ. Dạng ảo hóa này cho phép
tạo nhiều máy ảo trên môt máy chủ vật lý. Mỗi máy ảo chạy hệ điều hành riêng và
được cấp phát các tài nguyên phần cứng như số xung nhịp CPU, ổ cứng và bộ nhớ...
Các tài nguyên của máy chủ có thể được cấp phát động một cách linh động tùy theo
nhu cầu của từng máy ảo. Giải pháp này cho phép hợp nhất các hệ thống máy chủ
cồng kềnh thành một máy chủ duy nhất và các máy chủ trước đây bây giờ đóng vai
trò là máy ảo ứng dụng chạy trên nó.
Ảo hóa mềm còn gọi là phân thân hệ điều hành. Nó thực ra chỉ là sao chép
bản sao của một hệ điều hành chính làm nhiều hệ điều hành con và cho phép các
máy ảo ứng dụng có thể chạy trên nó. Như vậy, nếu hệ điều hành chủ là Linux thì
Số hóa bởi Trung tâm Học liệu
http://lrc.tnu.edu.vn
5
cách ảo hoá này sẽ cho phép tạo thêm nhiều bản Linux làm việc trên cùng máy.
Cách này có ưu điểm là chỉ cần một bản quyền cho một hệ điều hành và có thể sử
dụng cho các máy ảo còn lại. Nhược điểm của nó là không thể sử dụng nhiều hệ
điều hành khác nhau trên cùng một máy chủ.
1.2. Các thành phần của một hệ thống ảo hóa
Một hệ thống ảo hóa bao gồm những thành phần sau:
Tài nguyên vật lý (host machine, host hardware).
Các phần mềm ảo hóa (virtual software) cung cấp và quản lý môi trường
làm việc của các máy ảo.
Máy ảo (virtual machine): Các máy được cài trên phần mềm ảo hóa.
Hệ điều hành: Là hệ điều hành được cài trên máy ảo.
Hình 1.2: Các thành phần của một hệ thống ảo hóa
1.2.1. Tài nguyên vật lý (host machine / host hadware)
Các tài nguyên vật lý trong môi trường ảo hóa cung cấp tài nguyên mà các
máy ảo sẽ sử dụng tới. Một môi trường tài nguyên lớn có thể cung cấp được cho
nhiều máy ảo chạy trên nó và nâng cao hiệu quả làm việc của các máy ảo .Các tài
nguyên vật lý có thể kể đến là là ổ đĩa cứng, ram, card mạng….
1.2.2. Các phần mềm ảo hóa (virtual software)
Lớp phần mềm ảo hóa này cung cấp sự truy cập cho mỗi máy ảo đến tài
nguyên hệ thống. Nó cũng chịu trách nhiệm lập kế hoạch và phân chia tài nguyên
vật lý cho các máy ảo. Phần mềm ảo hóa là nền tảng của một môi trường ảo hóa. Nó
Số hóa bởi Trung tâm Học liệu
http://lrc.tnu.edu.vn
6
cho phép tạo ra các máy ảo cho người sử dụng, quản lý các tài nguyên và cung cấp
các tài nguyên này đến các máy ảo.. Ngoài ra phần mềm ảo hóa còn cung cấp giao
diện quản lý và cấu hình cho các máy ảo.
1.2.3. Máy ảo (virtual machine)
Thuật ngữ máy ảo được dùng chung khi miêu tả cả máy ảo (lớp 3) và hệ điều
hành ảo (lớp 4). Máy ảo thực chất là một phần cứng ảo, một môi trường hay một
phân vùng trên ổ đĩa. Trong môi trường này có đầy đủ thiết bị phần cứng như một
máy thật . Đây là một kiểu phần mềm ảo hóa dựa trên phần cứng vật lý. Các hệ
điều hành khách mà chúng ta cài trên các máy ảo này không biết phần cứng mà nó
nhìn thấy là phần cứng ảo.
1.2.4. Hệ điều hành khách(guest operating system)
Hệ điều hành khách được xem như một phần mềm (lớp 4) được cài đặt trên
một máy ảo (lớp 3) giúp ta có thể sử dụng dễ dàng và xử lý các sự cố trong môi
trường ảo hóa. Nó giúp người dùng có những thao tác giống như đang thao tác trên
một lớp phần cứng vật lý thực sự.
Khi có đủ các thành phần trên, người dùng có thể xây dựng cho mình một hệ
thống ứng dụng ảo hóa. Ngoài việc lựa chọn phần cứng cho thích hợp, người dùng
còn cần cân nhắc xem phải sử dụng phần mềm ảo hóa gì hoặc loại ảo hóa nào. Điều
này rất quan trọng trong việc tối ưu hóa hiệu suất làm việc cho hệ thống.
1.3. Giới thiệu các kiến trúc & các mức độ ảo hóa
Xét về kiến trúc hệ thống, các kiến trúc ảo hóa hệ thống máy chủ có thể chia
thành các dạng dạng chính sau:
Host-based
Hypervisor-based (còn gọi là bare-metal hypervisor, nó được chia nhỏ ra
làm hai loại là Monothic Hypervisor và Microkernel Hypervisor)
Hybrid.
Ngoài ra, tùy theo từng sản phẩm ảo hóa được triển khai (như Vmware,
Microsoft HyperV, Citrix XEN Server) mà mức độ ảo hóa cụ thể sẽ khác nhau. Các
mức độ ảo hóa bao gồm:
Ảo hóa toàn phần (Full-virtualization): Hệ điều hành khách (Các hệ điều
hành cài trên máy chủ ảo) không bị thay đổi, và chúng hoạt động như trên phần
cứng thật sự.
Số hóa bởi Trung tâm Học liệu
http://lrc.tnu.edu.vn
7
Ảo hóa song song (Paravirtualization): Các hệ điều hành khách sẽ bị
thay đổi để hoạt động tốt hơn với phần cứng. Tuy nhiên dạng này thường có
hạn chế là hỗ trợ khá ít các loại hệ điều hành khách.
Ảo hóa Hệ điều hành.
Ảo hóa ứng dụng.
Sau đây ta sẽ đi tìm hiểu chi tiết về các kiến trúc và mức độ ảo hóa máy chủ,
đồng thời xem xét khái niệm Hypervisor là gì.
1.4. Các kiến trúc ảo hóa
1.4.1. Kiến trúc ảo hóa Hosted-based
Còn gọi là kiến trúc hosted hypervisor, kiến trúc này sử dụng một lớp
hypervisor chạy trên nền tảng hệ điều hành, sử dụng các dịch vụ được hệ điều hành
cung cấp để phân chia tài nguyên tới các máy ảo. Nếu ta xem hypervisor này là một
lớp phần mềm riêng biệt, thì các hệ điều hành khách của máy ảo sẽ nằm trên lớp
thứ 3 so với phần cứng máy chủ.
Hình 1.3: Mô hình Hosedt-based
Ta có thể thấy, một hệ thống ảo hóa sử dụng Mô hình Hosted-based được
chia làm 4 lớp hoạt động như sau:
Nền tảng phần cứng: Bao gồm các thiết bị nhập xuất, thiết bị lưu trữ
(Hdd, Ram), bộ vi xử lý CPU, và các thiết bị khác (các thiết bị mạng, vi xử lý
đồ họa, âm thanh…)
Hệ điều hành Host: Hệ điều hành này thực hiện việc liên lạc trực tiếp với
phần cứng, qua đó cung cấp các dịch vụ và chức năng thông qua hệ điều hành này.
Số hóa bởi Trung tâm Học liệu
http://lrc.tnu.edu.vn
8
Hệ thống virtual machine monitor (hypervisor) : Chạy trên nền tảng hệ
điều hành Host, các hệ thống này lấy tài nguyên và dịch vụ do hệ điều hành host
cung cấp, thực hiện việc quản lý, phân chia trên các tài nguyên này.
Các ứng dụng máy ảo: Sử dụng tài nguyên do hypervisor quản lý.
Mối liên lạc giữa phần cứng và trình điều khiển thiết bị trên hệ điều hành
trong kiểu ảo hóa VMM được mô tả như sau :
Bước đầu tiên mô phỏng phần cứng: Lớp ảo hóa hypervisor sẽ tạo ra một
phân vùng trên ổ đĩa cho các máy ảo. Phân vùng này bao gồm các phần cứng ảo
như ổ đĩa, bộ nhớ….
Hypervisor xây dựng mối liên lạc giữa lớp ảo hóa với hệ điều hành: Khi
một máy ảo truy xuất tài nguyên thì lớp hypervisor sẽ thay thế máy ảo đó gởi các
yêu cầu tới hệ điều hành máy chủ để yêu cầu thực hiện,
Khi hệ điều hành nhận được các yêu cầu này. Nó liên lạc với trình điều
khiển thiết bị phần cứng.
Các trình điều khiển thiết bị phần cứng liên lạc đến các phần cứng trên
máy thực.
Quá trình này sẽ xảy ra ngược lại khi có các trả lời từ các phần cứng đến
hệ điều hành chủ.
Một số hệ thống hypervisor dạng Hosted-base có thể kể đến như Vmware
Server,Microsoft Virtual PC, máy ảo Java ..
1.4.2. Kiến trúc ảo hóa Hypervisor-based
Còn gọi là kiến trúc bare-metal hypervisor. Trong mô hình này, lớp phần
mềm hypervisor chạy trực tiếp trên nền tảng phần cứng của máy chủ, không thông
qua bất kì một hệ điều hành hay một nền tảng nào khác. Qua đó, các hypervisor này
có khả năng điều khiển, kiểm soát phần cứng của máy chủ. Đồng thời, nó cũng có
khả năng quản lý các hệ điều hành chạy trên nó. Nói cách khác, các hệ điều hành sẽ
chạy trên một lớp nằm phía trên các hypervisor dạng bare-metal. Hình vẽ sau sẽ
minh họa cụ thể hơn cho vấn đề này:
Số hóa bởi Trung tâm Học liệu
http://lrc.tnu.edu.vn
9
Hình 1.4: Kiến trúc Hypervisor-based
Ta có thể thấy, một hệ thống ảo hóa máy chủ sử dụng nền tảng Bare-metal
hypervisor bao gồm 3 lớp chính:
Nền tảng phần cứng: Bao gồm các thiết bị nhập xuất, thiết bị lưu trữ
(Hdd, Ram), bộ vi xử lý CPU, và các thiết bị khác (các thiết bị mạng, vi xử lý
đồ họa, âm thanh…)
Lớp nền tảng ảo hóa Virtual Machine Monitor (còn gọi là hypervisor),
thực hiện việc liên lạc trực tiếp với nền tảng phần cứng phía dưới, quản lý và phân
phối tài nguyên cho các hệ điều hành khác nằm trên nó.
Các ứng dụng máy ảo: Các máy ảo này sẽ lấy tài nguyên từ phần cứng,
thông qua sự cấp phát và quản lý của hypervisor.
Khi một hệ điều hành thực hiện truy xuất hoặc tương tác tài nguyên phần
cứng trên hệ điều hành chủ thì công việc của một Hypervisor sẽ là:
Hypervisor mô phỏng phần cứng. nó làm cho các hệ điều hành tưởng rằng
mình đang sử dụng tài nguyên vật lý của hệ thống thật.
Hypervisor liên lạc với các trình điều khiển thiết bị
Các trình điều khiển thiết bị phần cứng liên lạc trực tiếp đến phần cứng vật lý.
Mô hình Hypervisor - Base có 2 dạng là Monothic Hypervisor và
Microkernel Hypervisor.
Một số ví dụ về các hệ thống Bare-metal hypervisor như là: Oracle VM,
Vmware ESX Server, IBM's POWER Hypervisor (PowerVM), Microsoft's Hyper-V
(xuất xưởng tháng 6 năm 2008), Citrix XenServer…
Số hóa bởi Trung tâm Học liệu
http://lrc.tnu.edu.vn
10
a. Monolithic Hypervisor
Monolithic Hypervisor là một hệ điều hành máy chủ. Nó chứa những trình
điều khiển (Driver) hoạt động phần cứng trong lớp Hypervisor để truy cập tài
nguyên phần cứng bên dưới. Khi các hệ điều hành chạy trên các máy ảo truy cập
phần cứng thì sẽ thông qua lớp trình điều khiển thiết bị của lớp hypervisor.
Mô hình này mang lại hiệu quả cao, nhưng cũng giống như bất kì các giải
pháp khác, bên cạnh mặt ưu điểm thì nó cũng còn có những nhược điểm. Vì trong
quá trình hoạt động, nếu lớp trình điều khiển thiết bị phần cứng của nó bị hư hỏng
hay xuất hiện lỗi thì các máy ảo cài trên nó đều bị ảnh hưởng và nguy hại. Thêm
vào đó là thị trường phần cứng ngày nay rất đa dạng, nhiều chủng loại và do nhiều
nhà cung cấp khác nhau, nên trình điều khiển của Hypervisor trong loại ảo hóa này
có thể sẽ không thể hỗ trợ điều khiển hoạt động của phần cứng này một cách đúng
đắn và hiệu suất chắc chắn cũng sẽ không được như mong đợi. Một trình điều khiển
không thể nào điều khiển tốt hoạt động của tất cả các thiết bị nên nó cũng có những
thiết bị phần cứng không hỗ trợ. Những điều này cho thấy rằng việc phụ thuộc quá
nhiều vào các loại thiết bị dẫn tới sự hạn chế việc phát triển công nghệ này.
Hình 1.5: Kiến trúc Monolithic Hypervisor
Số hóa bởi Trung tâm Học liệu
http://lrc.tnu.edu.vn
- Xem thêm -