Tải bản đầy đủ (.pdf) (36 trang)

xây dựng n computing với xen hypervisor

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.02 MB, 36 trang )

LỜI CẢM ƠN
Chúng em xin chân thành cảm ơn khoa Công Nghệ Thông Tin, Trƣờng Đại
Học Công Nghiệp TP. Hồ Chí Minh đã hỗ trợ tạo nhiều điều kiện thuận lợi cho
chúng em trong quá trình học tập cũng nhƣ quá trình thực hiện đồ án chuyên
ngành này.
Chúng em xin cảm ơn đến thầy cô trong tổ Công Nghệ Thông Tin đã tận
tình giảng dạy, trang bị cho chúng em những kiến thức cần thiết trong suốt quá
trình học tập và nghiên cứu tại trƣờng.
Cuối cùng chúng em xin cảm ơn đến thầy Nguyễn Hòa đã tận tình hƣớng
dẫn, truyền đạt cho em những kiến thức quý báu và giúp đỡ chúng em trong quá
trình thực hiện đồ án này.
Mặc dù chúng em đã nổ lực hết sức để hoàn thành tốt đồ án của mình
nhƣng vẫn không thể nào tránh khỏi những sai sót, rất mong nhận đƣợc ý kiến
đóng góp của thầy cô và các bạn để bài báo cáo đồ án này đƣợc hoàn thiện hơn.
Xin chân thành cảm ơn!

DANH MỤC CÁC TỪ VIẾT TẮT
HDD : Hard Disk Drive
RAM : Random Access Memory
CPU : Central Processing Unit
VMM : Virtual Machine Monitor
PV : Paravirtualization
HVM : Full Virtualization
CNTT : Công nghệ thông tin
DANH MỤC CÁC SƠ ĐỒ, HÌNH
Hình 1: Mô hình thực hiện 2
Hình 2: Cấu trúc Xen cơ bản 7
Hình 3: Kiến trúc cơ bản của Hypervisor. 8
Hình 4: Cấu trúc của Monolithic Hypervisor 10
Hình 5: Cấu trúc Microkernelized Hypervisor 11
Hình 6: Thay đổi tên và IP của Dom0 và DomU 14


Hình 7: Thay đổi file /etc/netwok/interfaces 15
Hình 8: Kiểm tra Xen (Dom0) bằng lệnh 15
Hình 9: Xem thƣ mục bằng lệnh ls /mnt/ 16
Hình 10: Chỉnh sửa tập tin hệ thống 176
Hình 11: Cấu hình mạng cho DomU1 17
Hình 12: Tập tin cấu hình domain cho dom-U1 18
Hình 13: Kiểm tra bằng lệnh: xm list 18
Hình 14: Đăng nhập vào máy ảo 19
Hình 15: Cấu hình card mạng trong file /etc/network/interfaces 20
Hình 16: Kiểm tra cấu hình trong Dom-0 21
Hình 17: Cấu hình trong /etc/network interfaces trong domu1 21
Hình 18: Khởi động lại domu1 và kiểm tra bằng lệnh route -n 22
Hình 19: Kiểm tra kết nối giữa dom0 và domu1 23
Hình 20: Kiểm tra cấu hình máy có hỗ trợ phƣơng pháp HVM Guest hay không 23
Hình 21: Tạo file cấu hình cho máy ảo Win XP 24
Hình 22: Quá trình cài đặt Win XP 25
Hình 23: Chọn Accept để tiếp tục cài đặt 25
Hình 24: Tiếp tục quá trình cài đặt 26
Hình 25: Thiết lập địa chỉ IP, Gateway và DNS cho máy ảo 25
Hình 26: Khởi động lại máy ảo winxp và kiểm tra kết nối đến Dom0 27
Hình 27: Kiểm tra kết nối bằng lệnh ping 27

MỤC LỤC

1. MỤC TIÊU ĐỀ TÀI 1
2. MÔ HÌNH THỰC HIỆN 2
3. PHƢƠNG PHÁP VÀ MÔI PHƢỜNG THỰC HIỆN 3
3.1 Phƣơng pháp 3
3.2 Môi trƣờng thực hiện 4
4. GIỚI THIỆU VỀ CÔNG NGHỆ ẢO HÓA VÀ XEN HYPERVISOR 4

4.1 Tìm hiểu về ảo hóa 4
4.1.1 Thành phần của hệ thống ảo hóa 5
4.1.2 Giới thiệu về kiến trúc của hệ thống ảo hóa 5
4.2 Tìm hiểu về xen hypervisor 6
4.2.1 Lịch sử của Xen hypervisor 6
4.2.2 Tìm hiểu về công nghệ Xen 6
4.2.3 Kiến trúc Xen Hypervisor 7
4.2.4 Phân loại 9
5. ƢU ĐIỂM VÀ NHƢỢC ĐIỂM CỦA XEN HYPERVISOR 11
6. HIỆN THỰC MÔ HÌNH 11
6.1 Yêu cầu phần cứng 12
6.2 Các bƣớc cài đặt và thiết lập Xen Hypervisor (Dom0) 12
6.2.1 Cài đặt Xen Hypervisor 12
6.2.2 Cấu hình bộ nạp khởi động để khởi động Dom0 13
6.2.3 Cấu hình mạng cho Xen (Dom0) 14
6.3 Xây dựng DomU 15
6.3.1 Xây dựng PV Guest (Dom-U1) 15
6.3.2 Cấu hình hệ thống mạng giữa Dom-0 và Dom-U1 19
6.3.3 Tạo máy ảo bằng phƣơng pháp HVM Guest 23
7. HẠN CHẾ VÀ HƢỚNG PHÁT TRIỂN 29
8. KẾT LUẬN 30
9. TÀI LIỆU THAM KHẢO 32


Đồ án chuyên ngành GVHD: Ths Nguyễn Hòa


Trang: 1
SVTH: Nguyễn Thị Lụa
Nguyễn Thị Lệ Chi


1. MỤC TIÊU ĐỀ TÀI
Ngày nay, khi đất nƣớc ta đã tham gia hội nhập vào thế giới chúng ta bắt
buộc phải tuân theo luật chơi chung của toàn cầu, tuy nhiên điều băn khoăn nhất
của các CEO chính là chi phí đầu tƣ về bản quyền phầm mềm
Chiếm khá lớn trong chi phí đầu tƣ hạ tầng công nghệ thông tin phải kể
đến chi phí mua máy tính cá nhân và phần mềm bản quyền. Đối với doanh nghiệp,
nếu ngân sách đầu tƣ ban đầu cho hạ tầng CNTT eo hẹp và có sự gia tăng nhanh
chóng về nhu cầu sử dụng nhiều máy tính. Hãy tƣởng tƣợng 1 doanh nghiệp
khoảng 10 máy thì chi phí bản quyền sẽ cỡ trên 60 triệu, một con số không nhỏ
dành cho các doanh nghiệp còn non trẻ của chúng ta. Hay với các trƣờng học, nhu
cầu trang bị các phòng máy để đƣa công nghệ thông tin vào lớp học đang là vấn
đề cấp thiết hiện nay khi mà đa phần các trƣờng học công lập đều còn hạn chế
trang bị các phòng máy hay áp dụng thực sự công nghệ thông tin vào giảng dạy.
Đây cũng là vấn đề lớn đối với ngành giáo dục khi mà ngân sách giành cho ngành
giáo dục còn hạn chế.
Ngoài ra, xu thế phát triển các thiết bị công nghệ trên toàn cầu ngày càng
mạnh, nên các máy tính ngày nay càng ngày càng mạnh hơn. Nhƣng đôi lúc công
việc văn phòng thì chỉ yêu cầu: Word, Excel, duyệt Web, check mail… hay tại các
thƣ viện, phòng thực hành trong các trƣờng học thì chỉ yêu cầu sử dụng Word,
Excel và một số phần mềm cơ bản khác. Với những nhu cầu đó thì không cần đến
một máy tính có cấu hình mạnh nhƣng chúng ta lại trang bị một máy tính có cấu
hình cao thì thật lãng phí.
Do đó, việc áp dụng công nghệ ảo hóa (virtualization) có thể là giải pháp
tốt nhất giúp giải quyết đƣợc bài toán về chi phí đầu tƣ ban đầu về phần cứng,
phần mềm cũng nhƣ tận dụng nguồn tài nguyên còn dƣ thừa trong từng doanh
nghiệp, trƣờng học cũng nhƣ trong từng hộ gia đình.
Ảo hóa đƣợc coi là một công nghệ giúp các doanh nghiệp, trƣờng học cắt
giảm chi phí trang bị phần cứng (máy vật lý) bằng việc tận dụng tối đa năng suất
của các thiết bị phần cứng. Ảo hóa có thể cải thiện khả năng phục hồi sự cố một

Đồ án chuyên ngành GVHD: Ths Nguyễn Hòa


Trang: 2
SVTH: Nguyễn Thị Lụa
Nguyễn Thị Lệ Chi

cách nhanh chóng, thoải mái tải và thử nghiệm phần mềm; tiết kiệm năng lƣợng,
tiết giảm diện tích sử dụng cũng nhƣ không gian cho trung tâm dữ liệu. Công
nghệ mới này sẽ tạo ra những điều mới mẻ trong tƣ duy của các nhà quản lý công
nghệ thông tin về tài nguyên máy tính. Ảo hóa giúp nhiều ngƣời dùng cùng làm
việc một cách độc lập trên một máy tính.
Trên thực tế có rất nhiều phần mền ảo hóa nhƣ VMweare, Xen, vScape,
Microsoft Hyper - v… nhƣng sự hỗ trợ của Xen trong di chuyển trực tiếp máy ảo
từ một host tới host khác cho phép cân bằng khối lƣợng công việc và tránh đƣợc
thời gian chết, khả năng chịu lỗi chống lại lỗi phần mềm qua khởi động và reboot
nhanh chóng
,
khả năng bảo mật những hệ điều hành ảo riêng biệt.
Vì lý do đó nhóm đã chọn đề tài “Xây dựng hệ thống n-computing cho thƣ
viện” để thực hiện đề án chuyên nghành của mình.
Nhƣng vì nhóm làm đề tài này từ đầu chứ không phải đi tiếp từ đồ án 2. Do
đó mục tiêu của nhóm là tìm hiểu về công nghệ ảo hóa, tìm hiểu về Xen
Hypervisor và tiến hành xây dựng một máy tính với nhiều máy ảo trong nó bằng
việc áp dụng Xen Hypervisor.
2. MÔ HÌNH THỰC HIỆN

Hình 1: Mô hình thực hiện
Đồ án chuyên ngành GVHD: Ths Nguyễn Hòa



Trang: 3
SVTH: Nguyễn Thị Lụa
Nguyễn Thị Lệ Chi

Trên một máy vật lý sử dụng hệ điều hành Debian, cài đặt phần mềm ảo
hóa Xen Hypervisor để tạo ra Domain-0. Xây dựng hai máy ảo Dom-U1 và
Dom-U2. Cấu hình mạng để giao tiếp giữa máy chủ Dom-0 và các máy ảo
Dom-U. Máy Debian đóng vai trò giám sát máy ảo, cung cấp dịch vụ cho phép
nhiều hệ điều hành Guest thực thi trên cùng phần cứng máy tính một cách đồng
thời.
3. PHƢƠNG PHÁP VÀ MÔI TRƢỜNG THỰC HIỆN
3.1 Phƣơng pháp thực hiện
Dùng hai phƣơng pháp ảo hóa là Full Virtualization (ảo hóa toàn phần) và
Paravirtualization (ảo hóa song song)
 Full Virtualization
Đây là loại ảo hóa mà ta không cần chỉnh sửa hệ điều hành khách
(guest OS) cũng nhƣ các phần mềm đã đƣợc cài đặt trên nó để chạy
trong môi trƣờng hệ điều hành chủ (host OS). Khi một phần mềm chạy
trên guest OS, các đoạn code của nó không bị biến đổi mà chạy trực
tiếp trên host OS và phần mềm đó nhƣ đang đƣợc chạy trên một hệ
thống thực sự.
Trình điều khiển máy ảo phải cung cấp cho máy ảo một “ảnh” của toàn
bộ hệ thống, bao gồm BIOS ảo, không gian bộ nhớ ảo, và các thiết bị
ảo. Trình điều khiển máy ảo cũng phải tạo và duy trì cấu trúc dữ liệu
cho các thành phần ảo (đặc biệt là bộ nhớ), và cấu trúc này phải luôn
đƣợc cập nhật cho mỗi một truy cập tƣơng ứng đƣợc thực hiện bởi
máy ảo.
 Paravirtualization
Là một phƣơng pháp thay vì mô phỏng một môi trƣờng phần cứng

hoàn chỉnh, phần mềm ảo hóa này là một lớp mỏng dồn các truy cập
các hệ điều hành máy chủ vào tài nguyên máy vật lý cơ sở, sử dụng
Đồ án chuyên ngành GVHD: Ths Nguyễn Hòa


Trang: 4
SVTH: Nguyễn Thị Lụa
Nguyễn Thị Lệ Chi

một kernel đơn để quản lý các Server ảo và cho phép chúng chạy
cùng một lúc (có thể ngầm hiểu, một Server chính là giao diện ngƣời
dùng đƣợc sử dụng để tƣơng tác với hệ điều hành).
Ảo hóa song song đem lại tốc độ cao hơn so với ảo hóa toàn phần và
hiệu quả sử dụng các nguồn tài nguyên cũng cao hơn.
3.2 Môi trƣờng thực hiện
Sử dụng hệ điều hành Debian 6.0.9 Squeeze (64 bit), và phần mềm ảo hóa
XEN Hypervisor để thực hiện vì Debian là một mã nguồn mở và hoàn toàn
miễn phí. Hệ điều hành này tuy ít đƣợc sử dụng nhƣng nó có tính bảo mật cao,
bảo mật trƣớc virus và malware, thích hợp cho máy chủ dung lƣợng cài đặt
nhẹ. Xen cài đặt với những dòng lệnh để thực thi công việc một cách tự động
khi hypervisor boot và nhận những quyền quản lý đặc biệt, truy cập trực tiếp
vào mọi phần cứng vật lý, mặc định. Quản trị viên hệ thống có thể đăng nhập
vào domain0 trong yêu cầu quản lý bất kỳ hệ điều hành guest bổ sung nào.
Hệ thống Xen Hypervisor thực hiện trong Debian 6.0.9 nhằm hoàn thành
đƣợc mục tiêu đề ra.
4. GIỚI THIỆU VỀ CÔNG NGHỆ ẢO HÓA VÀ XEN HYPERVISOR
4.1 Tìm hiểu về ảo hóa
Đối với những ngƣời thƣờng xuyên sử dụng máy tính, đặc biệt là những
ngƣời học tập hay làm việc bên lĩnh vực công nghệ thông tin thì ai cũng nghe
đến các từ nhƣ ổ đĩa ảo, RAM ảo… thiết thực nhất là tạo máy ảo để cài song

song hai hệ điều hành. Nói chung, những điều này đƣợc gọi là ảo hóa.
Ảo hóa là công nghệ đƣợc thiết kế tạo ra 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ừ một máy vật lý có thể tạo ra
nhiều máy ảo độc lập. Mỗi máy ảo đều đƣợc thiết lập một hệ thống riêng rẽ với
hệ điều hành riêng và các ứng dụng riêng.
Đồ án chuyên ngành GVHD: Ths Nguyễn Hòa


Trang: 5
SVTH: Nguyễn Thị Lụa
Nguyễn Thị Lệ Chi

4.1.1 Thành phần của hệ thống ảo hóa
Một hệ thống ảo hóa gồm những thành phần sau:
 Tài nguyên vật lý (host machine, host hardware): Các tài nguyên nhƣ
RAM, ổ đĩa cứng, card mạng….
 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ó 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.
 Virtual machines (Máy ảo): là một môi trƣờng phần mền cho chạy ảo
hóa.
 Hệ điều hành khách: Là hệ điều hành đƣợc cài trên máy ảo nhƣ Ubuntu,
Debian, CentOS, Windows xp, Windows 7…
4.1.2 Giới thiệu về kiến trúc của hệ thống ảo hóa
Gồm 3 kiến trúc cơ bản sau:
 Host-based: 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.
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.
Đồ án chuyên ngành GVHD: Ths Nguyễn Hòa


Trang: 6
SVTH: Nguyễn Thị Lụa
Nguyễn Thị Lệ Chi

 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ý.
 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: Lớp ảo hóa hypervisor chạy song song với hệ điều hành máy chủ.
Tuy nhiên trong cấu trúc ảo hóa này, các máy chủ ảo vẫn phải đi qua hệ điều
hành máy chủ để truy cập phần cứng nhƣng khác biệt ở chỗ cả hệ điều hành
máy chủ và các máy chủ ảo đều chạy trong chế độ hạt nhân.
4.2 Tìm hiểu về xen hypervisor
4.2.1 Lịch sử của Xen hypervisor

- Từ năm 2002, Xen hypervisor bắt đầu phát triển
- Năm 2004, Xen 1.0 và Xen 2.0
- Năm 2005, Xen Source đƣợc tìm thấy, Xen 3.0 đƣợc phát hành
- Năm 2006, CPU cải tiến cho việc ảo hóa, cho Xen chạy trên hệ điều hành
Linux x86. Lần đầu tiên XenEnterprise phát hành.
- Năm 2007, XenSource đƣợc hệ thống Citrix mua lại
- Năm 2008, Xen đƣợc nhúng vào trong Flash trên máy chủ HP/Dell. Lần
đâu tiên Xen đƣợc nhúng trên máy Laptops
- Năm 2009, hệ thống Xen đƣợc xây dựng
- Hiện nay, đã có phiên bản Xen 4.4.
4.2.2 Tìm hiểu về công nghệ Xen
Xen nằm giữa phần cứng và hệ điều hành cho phép nhiều máy ảo chạy
đồng thời trên một hệ thống vật lý. Trong hệ thống Xen, Xen hypervisor là lớp
phần mềm thấp nhất và ƣu tiên nhất. Lớp này hỗ trợ một hoặc nhiều hệ điều
Đồ án chuyên ngành GVHD: Ths Nguyễn Hòa


Trang: 7
SVTH: Nguyễn Thị Lụa
Nguyễn Thị Lệ Chi

hành guest, ghi lịch trình trên các CPU vật lý. Hệ điều hành guest đầu tiên,
đƣợc gọi trong thuật ngữ Xen là domain0 thực thi một cách tự động khi
hypervisor boot và nhận những quyền quản lý đặc biệt và truy cập trực tiếp
vào mọi phần cứng vật lý mặc định. Quản trị viên hệ thống có thể đăng nhập
vào domain0 trong yêu cầu quản lý bất kỳ hệ điều hành guest bổ sung nào
đƣợc gọi là user domain (domU) trong thuật ngữ Xen.

Hình 2: Cấu trúc Xen cơ bản


Domain0 là rất quan trọng đối với một hệ thống Xen. Chính bản thân Xen
không bao gồm bất kỳ trình điều khiển thiết bị. Tất cả các trình điều khiển thiết
bị đƣợc cung cấp và xử lý bởi Domain0 chạy ở một mức độ đặc quyền cao hơn
so với những guest khác và do đó có thể truy cập phần cứng. Ngoại trừ từ truy
cập vào phần cứng, Domain0 cũng chịu trách nhiệm xử lý công việc hành
chính, ví dụ nhƣ bắt đầu và dừng guest DomainU. Domain0 cung cấp giao diện
ngƣời dùng Xen hypervisor.
DomainU là một miền không có đặc quyền và thƣờng không đƣợc phép thực
hiện bất kỳ hypercalls trực tiếp truy cập vào phần cứng.
4.2.3 Kiến trúc Xen Hypervisor
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
Đồ án chuyên ngành GVHD: Ths Nguyễn Hòa


Trang: 8
SVTH: Nguyễn Thị Lụa
Nguyễn Thị Lệ Chi

đó, 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ó.

Hình 3: Kiến trúc cơ bản của Hypervisor.
Ta có thể thấy, một hệ thống ảo hóa máy chủ sử dụng nền tảng 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ị.
Đồ án chuyên ngành GVHD: Ths Nguyễn Hòa


Trang: 9
SVTH: Nguyễn Thị Lụa
Nguyễn Thị Lệ Chi

 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ý.
4.2.4 Phân loại
Mô hình Hypervisor - Base có 2 dạng là Monothic Hypervisor và
Microkernel Hypervisor.
 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. Ngày nay có rất nhiều phần cứng mới ra đời dẫn đến 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.
Đồ án chuyên ngành GVHD: Ths Nguyễn Hòa


Trang: 10
SVTH: Nguyễn Thị Lụa
Nguyễn Thị Lệ Chi


Hình 4: Cấu trúc của Monolithic Hypervisor

 Microkernelized Hypervisor
Microkernelized Hypervisor là một kiểu ảo hóa giống nhƣ Monolithic
Hypervisor. Điểm khác biệt giữa hai loại này là trong Microkernelized trình
điều khiển thiết bị phần cứng bên dƣới đƣợc cài trên một máy ảo và đƣợc gọi
là trình điều khiển chính, trình điều khiển chính này tạo và quản lý các trình
điều khiển con cho các máy ảo. Khi máy ảo có nhu cầu liên lạc với phần cứng
thì trình điều khiển con sẽ liên lạc với trình điều khiển chính và trình điều
khiển chính này sẽ chuyển yêu cầu xuống lớp Hypervisor để liên lạc với phần
cứng.

Đồ án chuyên ngành GVHD: Ths Nguyễn Hòa


Trang: 11
SVTH: Nguyễn Thị Lụa

Nguyễn Thị Lệ Chi

Hình 5: Cấu trúc Microkernelized Hypervisor
5. ƢU ĐIỂM VÀ NHƢỢC ĐIỂM CỦA XEN HYPERVISOR
 Ƣu điểm
- Hiệu suất cao tiết kiệm chi phí sản xuất phần cứng, điện năng, không gian
lƣu trữ.
- Tận dụng hiệu quả sức mạnh phần cứng, sử dụng chung nhiều thiết bị
I/O… Bộ vi xử lý sử dụng tăng từ 20% đến 50%.
- Giảm mua sắm thiết bị phần cứng, chi phí quản lí và vật tƣ làm mát.
- Phần cứng độc lập với nhau.
- Triển khai đƣợc nhiều ứng dụng khác nhau (hệ điều hành, phần mềm)
trên 1 máy tính, ít phụ thuộc vào phần cứng.
- Tốt cho việc học tập nghiên cứu.
- Sự an toàn và độ tin cậy
- Sử dụng hiệu quả công suất của phần cứng.
 Nhƣợc điểm
- Các máy tính trong máy ảo phụ thuộc vào máy vật lý, không hoặt động
đƣợc khi máy vật lý hƣ hỏng (single point failure).
- Một số ứng dụng không chạy tốt trên môi trƣờng ảo hóa (database, real-
time application) -> làm giảm hiệu suất hoặt động.
- Công nghệ chƣa hoàn chỉnh -> rủi ro không lƣờng trƣớc.
- Sinh viên CNTT không có hoặc quá ít kiến thức về Xen Virtualization.
6. HIỆN THỰC MÔ HÌNH
Từ mô hình trên, ta thấy máy Debian là máy chính trong hệ thống nó bao gồm
đầy đủ các thiết bị phần cứng, phần mềm, hệ điều hành, tài nguyên…., bao gồm
phần mềm ảo hóa Xen hypervisor hay gọi là Domain-0. Đóng vai trò giám sát
máy ảo, chứa trong nó các máy ảo Dom-U1, Dom-U2….cho phép nhiều hệ điều
hành Guest thực thi trên cùng phần cứng máy tính một cách đồng thời.
Đồ án chuyên ngành GVHD: Ths Nguyễn Hòa



Trang: 12
SVTH: Nguyễn Thị Lụa
Nguyễn Thị Lệ Chi

Máy Debian: chạy hệ điều hành Debian-6.0.9 Squeeze (64 bit), tiến hành cài
đặt các gói cần thiết và cấu hình Xen hypervisor để tạo ra đƣợc Domain-0, tạo các
hệ điều hành guest nhƣ Dom-U1 và Dom-U2.
Domain-0 đã cài đặt và cấu hình thành công ở bƣớc bên dƣới khi kiểm tra
bằng lệnh #sudo xm list.
Quá trình cài đặt và cấu hình Xen hypervisor
6.1 Yêu cầu phần cứng
Máy tính có bộ xử lý CPU hỗ trợ công nghệ ảo hóa thƣờng là Intel
VT (Virtual Technology: VT –x) hoặc AMD Pacifica (AMD-V). Bắt
buộc phải có nếu muốn cài máy ảo dùng phƣơng pháp Full-
Virtualization.
Xen đòi hỏi phần cứng có phân vùng trống an toàn.
Bộ nhớ RAM. Bộ nhớ ảo tùy thuộc vào yêu cầu sử dụng.
Cấu hình mạng:
Mỗi máy ảo có thể cấu hình đến 1 card mạng ảo.
Mỗi card mạng ảo có thể đƣợc cấu hình với 1 địa chỉ MAC tĩnh hoặc động.
6.2 Các bƣớc cài đặt và thiết lập Xen Hypervisor (Dom0)
6.2.1 Cài đặt Xen Hypervisor
- Update hệ điều hành Debian
#apt-get update
- Cài đặt các gói cho Xen Hypervisor
#aptitude install firmware-linux
#aptitude install gcc-multilib
#aptitude install xen-linux-system

#aptitude install xen-qemu-dm
#aptitude install xenwatch
#aptitude install xen-tools
#aptitude install lvm2
#aptitude install bridge-utils
Đồ án chuyên ngành GVHD: Ths Nguyễn Hòa


Trang: 13
SVTH: Nguyễn Thị Lụa
Nguyễn Thị Lệ Chi

#aptitude install debootstrap
#aptitude install openssh-server
#aptitude install vncviewer
- Kiểm tra đã cài đặt thành công hay chƣa
#dpkg-query -l | grep xen
#dpkg-query -l | grep bridge
#dpkg-query -l | grep debootstrap
6.2.2 Cấu hình bộ nạp khởi động để khởi động Dom0
- Thay đổi GRUB để mặc định khởi động xen trong tập tin /etc/default/grub
nhƣ sau :
GRUB_CMDLINE_XEN_DEFAULT= „noreboot console=vga
cpufreq=dom0-kernel dom0_mem=1024M dom0_max_vcpus=2
xsave=1 vesa-mtrr=3‟
GRUB_CMDLINE_XEN= „‟
GRUB_DISABLE_OX_PROBER=true
GRUB_GFXMODE=1024x768
GRUB_GFXPAYLOAD_LINUX=keep
GRUB_INIT_TUNE= „480 440 1‟

GRUB_PRELOAD_MODULES= „vbe vga video_fb‟
- Thay đổi một số thông tin trong tập tin /etc/xen/xend-config.sxp
(network-script network-bridge)
(vif-script vif-bridge)
(dom0-min-mem 512)
(enable-dom0-ballooning yes)
(vncpasswd „‟)
- Thay đổi thứ tự khởi động trong GRUB để khởi động với Xen
#dpkg-divert -divert /etc/grub.d/08_linux_xen rename
/etc/grub.d/20_linux_xen
- Cập nhật lại Grub
Đồ án chuyên ngành GVHD: Ths Nguyễn Hòa


Trang: 14
SVTH: Nguyễn Thị Lụa
Nguyễn Thị Lệ Chi

#update-grub
6.2.3 Cấu hình mạng cho Xen (Dom0)
- Thay đổi file /etc/hosts chứa tên và địa chỉ IP của Dom0 (máy chủ) và các
DomU (máy ảo) mà dự định sẽ thiết lập. Các địa chỉ IP này sẽ đƣợc sử
dụng sau khi cấu hình các máy ảo.

Hình 6: Đặt tên và IP của Dom0 và DomU
- Cấu hình địa chỉ IP cho các card mạng trong máy chủ (Dom0). Viêc cấu
hình card mạng nhằm mục đích khi xây dựng các máy ảo trên máy chủ vậy
lý thì nó có thể trỏ về Domain-O để sử dụng tài nguyên chung. Việc giao
tiếp giữa máy chủ (Dom0) và các máy ảo (DomU) thông qua card bridge
(xenbr0).

Thay đổi file /etc/netwok/interfaces có nội dung nhƣ sau:
Đồ án chuyên ngành GVHD: Ths Nguyễn Hòa


Trang: 15
SVTH: Nguyễn Thị Lụa
Nguyễn Thị Lệ Chi


Hình 7: Thay đổi file /etc/netwok/interfaces
- Reboot lại hệ thống
#reboot
- Kiểm tra Xen (Dom0) bằng lệnh
#xm list

Hình 8: Kiểm tra Xen (Dom0) bằng lệnh
6.3 Xây dựng DomU
Nhóm thực hiện xây dựng domain-U theo 2 phƣơng pháp: Paravirtualization
(PV Guest) và Full-virtualization (HVM Guest)
6.3.1 Xây dựng PV Guest (Dom-U1)
6.3.1.1 Tạo partition cho Dom-U1
- Tạo thƣ mục chứa ảnh đĩa cho Domu1
Đồ án chuyên ngành GVHD: Ths Nguyễn Hòa


Trang: 16
SVTH: Nguyễn Thị Lụa
Nguyễn Thị Lệ Chi

#mkdir /home/lua/xen/domains/domu1

- Tạo root partition cho domu1 bằng cách sử dụng File-backed Virtual
block device
#dd if=/dev/zero of=/home/lua/xen/domains/domu1/disk.img bs=1
seek=6144M count=1
Lệnh trên tạo ra file ảnh đĩa disk.img có dung lƣợng 6Gb lƣu trong thƣ
mục /home/lua/xen/domains/domu1
- Định dạng cho disk.img là ext3
#/sbin/mkfs.ext3 /home/lua/xen/domu1/disk.img
- Tạo swap partition cho domu1
#dd if=/dev/zero of=/home/lua/xen/domains/domu1/swap.img bs=1
seek=256M count=1
- Định dạng cho swap.img là swap
#mkswap /home/lua/xen/domu1/swap.img
- Kiểm tra bằng lệnh
#ls –lsh /home/lua/xen/domains/domu1/
6.3.1.2 Tạo hệ thống file system cho domu1
- Trƣớc tiên ta phải mount root partition của domu1 lên một thƣ mục trên
máy chủ
#mount /home/lua/xen/domu1/disk.img /mnt
- Cài đặt hệ thống tập tin cho domu1 bằng tiện ích debootstrap bằng lệnh
sau
#debootstrap arch amd64 squeeze /mnt
- Sau khi cài đặt thành công trong thƣ mục /mnt chứa các thƣ mục nhƣ sau

Đồ án chuyên ngành GVHD: Ths Nguyễn Hòa


Trang: 17
SVTH: Nguyễn Thị Lụa
Nguyễn Thị Lệ Chi


Hình 9: Nội dung thƣ mục /mnt
6.3.1.3 Cấu hình hệ thống Guest (Domu1)
Chỉnh sửa một số tập tin để hệ thống Guest có cấu hình hợp lệ
- /mnt/etc/fstab là một tập tin cấu hình hệ thống liệt kê tất cả các ổ đĩa có
sẵn và cho biết cách nó sẽ đƣợc khởi tạo hoặc tích hợp vào hệ thống.
#nano /mnt/etc/fstab

Hình 10: Chỉnh sửa tập tin hệ thống
- Chỉnh sửa tên máy trong file /mnt/etc/hostname
Domu1
- Cấu hình mạng trong file /mnt/etc/network/interfaces
#nano /mnt/etc/network/interfaces


Hình 11: Cấu hình mạng cho DomU1
- Cuối cùng phải unmount thƣ mục /mnt bằng lệnh
#umount /mnt
6.3.1.4 Tạo tập tin cấu hình domain cho dom-U1
#nano /etc/xen/domu1.cfg
Đồ án chuyên ngành GVHD: Ths Nguyễn Hòa


Trang: 18
SVTH: Nguyễn Thị Lụa
Nguyễn Thị Lệ Chi



Hình 12: Tập cấu hình domain cho dom-U1

6.3.1.5 Tạo và bắt đầu một DomU
- Tạo domu1 bằng lệnh
#xm create /etc/xen/domu1.cfg
- Kiểm tra bằng lệnh:
#xm list

Hình 13: Kiểm tra bằng lệnh: xm list

- Tắt máy ảo bằng lệnh
#xm shutdown domu1
- Chạy và sử dụng máy ảo
#xm create –c /etc/xen/domu1.cfg
Đăng nhập với quyền root và nhập password cho root. Đã đăng nhập thành
Đồ án chuyên ngành GVHD: Ths Nguyễn Hòa


Trang: 19
SVTH: Nguyễn Thị Lụa
Nguyễn Thị Lệ Chi

công vào máy ảo và sử dụng máy ảo.

Hình 14: Đăng nhập vào máy ảo
6.3.2 Cấu hình hệ thống mạng giữa Dom-0 và Dom-U1
6.3.2.1 Cấu hình trong Dom-0
- Thay đổi trong file /etc/xen/xend-config.sxp, bỏ dấu # trƣớc các dòng
sau:
(network-script network-bridge)
(vif-script vif-bridge)
- Cấu hình card mạng trong file /etc/network/interfaces

Đồ án chuyên ngành GVHD: Ths Nguyễn Hòa


Trang: 20
SVTH: Nguyễn Thị Lụa
Nguyễn Thị Lệ Chi


Hình 15: Cấu hình card mạng trong file /etc/network/interfaces
- Sau đó thiết lập lại card mạng bằng lệnh
# /etc/init.d/networking restart
- Thực hiện lệnh sau
#echo 1 > /proc/sys/net/ipv4/ip_forward
- Tạo một file mới có nội dung nhƣ sau:
#nano /etc/network/if-up.d/dom0-routing
#!/bin/sh
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
exit 0
- Thiết lập quyền thực thi cho file đó:
#chmod 755 /etc/network/if-up.d/dom0-routing
- Khởi động lại dom0
- Kiểm tra bằng lệnh route –n
Đồ án chuyên ngành GVHD: Ths Nguyễn Hòa


Trang: 21
SVTH: Nguyễn Thị Lụa
Nguyễn Thị Lệ Chi



Hình 16: Kiểm tra cấu hình trong Dom-0
6.3.2.2 Cấu hình trong dom-U1
- Thêm 2 dòng sau vào file /etc/network interfaces trong domu1

Hình 17: Cấu hình trong /etc/network interfaces trong domu1
- Khởi động lại domu1 và kiểm tra bằng lệnh
#ifconfig
#route -n

×