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

nghiên cứu hệ thống máy ảo mã nguồn mở openvz

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 (1.38 MB, 97 trang )


ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƢỜNG ĐẠI HỌC CÔNG NGHỆ


Lê Thanh Tú



NGHIÊN CỨU HỆ THỐNG MÁY ẢO
MÃ NGUỒN MỞ OPENVZ





KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY
Ngành: Công nghệ thông tin








HÀ NỘI - 2010


ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƢỜNG ĐẠI HỌC CÔNG NGHỆ




Lê Thanh Tú



NGHIÊN CỨU HỆ THỐNG MÁY ẢO
MÃ NGUỒN MỞ OPENVZ





KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY
Ngành: Công nghệ thông tin


Cán bộ hƣớng dẫn: TS. Nguyễn Trí Thành





HÀ NỘI - 2010

LỜI CẢM ƠN
Trƣớc tiên, em muốn gửi lời cảm ơn sâu sắc đến Tiến sĩ Nguyễn Trí Thành,
ngƣời đã tận tình hƣớng dẫn em trong suốt quá trình thực hiện khóa luận.
Em xin gửi lời cảm ơn chân thành và sâu sắc tới các thầy, cô tại trƣờng Đại học
Công Nghệ đã dạy dỗ và tận tình chỉ bảo cho em trong suốt quá trình học tập tại

trƣờng. Những kiến thức mà thầy cô truyền đạt sẽ là vốn quý báu cho chúng em bƣớc
vào tƣơng lai.
Tôi xin cảm ơn tập thể sinh viên K51CHTTT Trƣờng Đại học Công Nghệ đã
ủng hộ và khuyến khích tôi trong quá trình nghiên cứu và thực hiện khóa luận này.
Cuối cùng, con xin cảm ơn chân thành và biết ơn vô hạn tới gia đình, những
ngƣời có công sinh thành, nuôi dƣỡng, những ngƣời luôn kịp thời động viên và giúp
đỡ vƣợt qua những khó khăn trong cuộc sống.
Mặc dù đã cố gắng hoàn thành luận văn trong phạm vi và khả năng cho phép
nhƣng chắc chắn sẽ không tránh khỏi những thiếu sót. Em rất mong nhận đƣợc sự góp
ý chân thành của thầy cô các bạn để em hoàn thiện khóa luận của mình.


Hà Nội, ngày 10 tháng 5 năm 2010
Sinh viên
Lê Thanh Tú

TÓM TẮT
Nội dung của khóa luận chủ yếu là tìm hiểu về hệ thống máy ảo mã nguồn mở
OpenVZ. Đầu tiên khóa luận trình bày về bài toán ảo hóa và những lợi ích mà công
nghệ ảo hóa mang lại. Đồng thời cũng giới thiệu một số hệ thống máy ảo đang đƣợc sử
dụng rộng rãi trên thế giới.
Để tìm hiểu OpenVZ khóa luận đi sau vào việc cài đặt cũng nhƣng quản trị hệ
thống máy ảo mã nguồn mở này. Việc sử dụng các tính năng của OpenVZ sẽ cho thấy
những đặc điểm của OpenVZ hay cụ thể hơn là những điểm nổi bật đƣợc thể hiện qua
hoạt động thực tế của phần mềm.
Từ việc sử dụng thực tế và tham khảo các tài liệu liên quan luận văn cũng đã đƣa
ra nhƣng so sánh, đánh giá hiệu quả của phần mềm OpenVZ so với các phần mềm
nguồn mở miễn phí và phần mềm bản quyền khác nhƣ Xen, VirtualBox, VMWare. Một
điều khá quan trọng mà khóa luận chỉ ra rằng ảo hóa là một giải pháp tiết kiệm mà hiệu
quả cho các doanh nghiệp ở Việt Nam trong đó OpenVZ là một giải pháp điển hình.


MỤC LỤC
LỜI CẢM ƠN 3
TÓM TẮT 4
MỤC LỤC 5
DANH MỤC CÁC BẢNG 8
DANH MỤC CÁC HÌNH VẼ 9
BẢNG KÝ HIỆU VIẾT TẮT 10
LỜI MỞ ĐẦU 11
CHƢƠNG 1. GIỚI THIỆU BÀI TOÁN ẢO HÓA VÀ Ý NGHĨA CỦA NÓ 1
1.1. Bài toán ảo hóa máy chủ lƣu trữ của các Doanh nghiệp 1
1.1.1. Dùng chung máy chủ, chia sẻ tài nguyên 1
1.1.2. Máy chủ riêng tại các trung tâm dữ liệu 1
1.1.3. Sử dụng máy chủ riêng ảo (Virtual Private Server) 2
1.1.4. Bài toán ảo hóa máy chủ lƣu trữ 3
1.2. Ý nghĩa của bài toán ảo hóa 3
1.2.1. Tận dụng hiệu quả tài nguyên của hệ thống 3
1.2.2. Đáp ứng nhu cầu lƣu trữ dữ liệu 5
1.2.3. Giảm chi phí quản lý hệ thống 5
1.2.4. Tiết kiệm năng lƣợng và giảm ô nhiễm môi trƣờng 6
CHƢƠNG 2. CÁC ỨNG DỤNG ẢO HÓA PHỔ BIẾN 7
2.1. Ảo hóa máy chủ 7
2.1.1. Ảo hóa hệ điều hành 7
2.1.2. Mô phỏng phần cứng 8
2.1.3. Ảo hóa song song 9
2.1.4. Ảo hóa lƣu trữ 10
2.2. Vai trò của phần cứng 11
CHƢƠNG 3. HỆ THỐNG MÁY ẢO OPENVZ 12
3.1. Cài đặt OpenVz 12
3.1.1. Cài đặt và cấu hình hệ điều hành chủ trên máy tính 12

3.1.2. Cài đặt phần mềm OpenVZ 13
3.1.3. Cấu hình mục khởi động ( Boot loader) 15
3.1.4. Thiết lập các thông số khác 15
3.1.5. Cài đặt các công cụ 17
3.1.6. Cài đặt mẫu hệ điều hành 17
3.2. Thao tác trên máy chủ ảo (VPS) 19
3.2.1. Tạo và cấu hình máy chủ ảo mới 19
3.2.2. Cấu hình máy chủ ảo 21
3.2.3. Khởi động, dừng, khởi động lại và truy vấn trạng thái của VPS 23
3.2.4. Xoá VPS 25
3.2.5. Chạy các lệnh trong VPS 26
3.3. Quản lý template 26
3.3.1. Vòng đời bản mẫu 26
3.3.2. Danh mục các mẫu 27
3.3.3. Làm việc với VPS 28
3.4. Quản lý tài nguyên 29
3.4.1. Tài nguyên tham số điều khiển là gì? 29
3.4.2. Quản lý hạn ngạch đĩa 30
3.4.3. Quản lý chia sẻ CPU 39
3.4.4. Quản lý các tham số hệ thống 41
3.4.5. Quản lý cấu hình tài nguyên VPS 48
3.5. Các tác vụ nâng cao trên OpenVZ 51
3.5.1. Xác định số tài khoản VPS bởi định danh của tiến trình 51
3.5.2. Thay đổi thời gian hệ thống từ VPS 51
3.5.3. Truy cập các thiết bị từ bên trong VPS 53
3.5.4. Cơ chế chia sẻ mạng trong giữa máy chủ vật lý gốc và các VPS 56
3.5.5. Chuyển cạc mạng tới VPS 62
3.5.6. Bật VPN cho VPS 63
3.5.7. Tải mô đun iptables 64
3.5.8. Khởi động lại VPS 65

3.5.9. Chuyển VPS từ máy chủ vật lý gốc này sang máy chủ vật lý khác 66
3.5.10. Chuyển máy chủ vật lý gốc thành một VPS 70
3.5.11. Sao lƣu một VPS đang hoạt động với tiện ích vzdump 75
CHƢƠNG 4. SO SÁNH OPENVZ VÀ MỘT SỐ MÁY ẢO KHÁC TRÊN LINUX
80
4.1. Về mặt sử dụng công nghệ 80
4.2. Về mặt hiệu năng 80
4.3. Về khả năng mở rộng 80
4.4. Kết luận 82
KẾT LUẬN 83
PHỤ LỤC 84
TÀI LIỆU THAM KHẢO 85


DANH MỤC CÁC BẢNG
Bảng 1. Các tham số điều khiển 30
Bảng 2. Các tham số hạn ngạch đĩa 32
Bảng 3. Thông số hạn ngạch đĩa cho từng VPS 34
Bảng 4. Tham số tài nguyên CPU 39
Bảng 5. Tham số sơ cấp 42
Bảng 6. Tham số thứ cấp 43
Bảng 7. Tham số phụ trợ 44
Bảng 8. Các cấp độ vi phạm 50
Bảng 9. Các công nghệ mà các phần mềm ảo hóa sử dụng 80
Bảng 10. Đánh giá hiệu năng của các phần mềm ảo hóa 80


DANH MỤC CÁC HÌNH VẼ
Hình 1. Sơ đồ ứng dụng Virtual Private Server 2
Hình 2. Hệ thống gồm 3 server 4

Hình 3. Hệ thống chỉ có một máy chủ đƣợc ảo hóa thành 3 máy ảo 5
Hình 4. Phân vùng ổ đĩa khi cài hệ điều hành chủ 13
Hình 5. Mô hình dạng sao đối với các VPS sử dụng Venet 56
Hình 6. Mô hình mạng thiết bị Ethernet ảo và Bridge ảo 59
Hình 7. Biểu đồ thể hiện lƣu lƣợng trung bình trên một máy ảo 81
Hình 8. Biểu đồ thể hiện tổng lƣu lƣợng các máy ảo 82


BẢNG KÝ HIỆU VIẾT TẮT
STT
Kí hiệu
Chú giải cho kí hiệu sử dụng
1
DN
Doanh nghiệp
2
VPS
Máy chủ ảo (Virtual Private Server)
3
CNTT
Công nghệ thông tin
4
HN
Máy chủ vật lý gốc (Hardware node)
5
OS
Hệ điều hành (Operating System)


LỜI MỞ ĐẦU

Theo hãng nghiên cứu thị trƣờng Gartner, ảo hóa cùng vi xử lý đa lõi, điện toán
"đám mây", điện-toán-mọi-nơi và mạng xã hội ảo sẽ là 5 công nghệ làm thay đổi hoàn
toàn ngành công nghiệp CNTT từ nay đến năm 2012. Cũng theo một nghiên cứu mới đây,
hãng này xếp công nghệ ảo hóa vào vị trí công nghệ chiến lƣợc số 1 trong năm 2010.
Ngày nay xu hƣớng ảo hóa máy chủ đã trở thành xu hƣớng chung của hầu hết các
doanh nghiệp trên toàn thế giới. Những khó khăn trong thời kỳ khủng hoảng khiến cho
các doanh nghiệp phải tìm mọi cách để giảm thiểu chi phí. Ảo hóa đƣợc coi là một
công nghệ giúp các doanh nghiệp cắt giảm chi tiêu hiệu quả với khả năng tận dụng tối
đa năng suất của các thiết bị phần cứng. Việc áp dụng công nghệ ảo hóa máy chủ
nhằm tiết kiệm không gian sử dụng, nguồn điện và giải pháp tỏa nhiệt trong trung tâm
dữ liệu. Ngoài ra việc giảm thời gian thiết lập máy chủ, kiểm tra phần mềm trƣớc khi
đƣa vào hoạt động cũng là một trong những mục đích chính khi ảo hóa máy chủ. 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. Khi việc quản lí các máy riêng lẻ trở nên dễ dàng
hơn, trọng tâm của CNTT có thể chuyển từ công nghệ sang dịch vụ. Hiện nay, các "đại
gia" trong giới công nghệ nhƣ Microsoft, Oracle, Sun… đều nhập cuộc chơi ảo hóa
nhằm giành thị phần lớn trong lĩnh vực này với "gã khổng lồ" VMWare. Do đó, trên
thị trƣờng có rất nhiều sản phẩm để các doanh nghiệp có thể lựa chọn và ứng dụng.
Ảo hóa là một lĩnh vực rất rộng với nhiều ứng dụng, trong luận văn này giới
thiệu một trong những công nghệ đƣợc sử dụng phổ biến đó là công nghệ ảo hóa hệ
điều hành. Đây là một phƣơng pháp lý tƣởng cho các máy chủ Web, nó tạo ra sự linh
động trong việc sao lƣu dự phòng, hỗ trợ việc triển khai phần mềm hay hệ điều hành
một cách nhanh chóng và đồng bộ.
Trong khuôn khổ của luận văn tốt nghiệp với đề tài “Nghiên cứu hệ thống máy
ảo mã nguồn mở OpenVZ” em xin đƣa ra những nghiên cứu của mình về phần mềm
này với phƣơng pháp ảo hóa mà phần mềm sử dụng đó là phƣơng pháp ảo hóa hệ điều
hành. Nội dung khóa luận gồm 4 chƣơng:
 Chƣơng 1: Giới thiệu về bài toán ảo hóa và ý nghĩa của nó: Giới thiệu về bài
toán ảo hóa máy chủ lƣu trữ của các doanh nghiệp, chƣơng này cũng đề cập tới
việc sử dụng máy chủ riêng ảo. Đồng thời cũng đƣa ra ý nghĩa của bài toán ảo

hóa đối với các doanh nghiệp
 Chƣơng 2: Các ứng dụng ảo hóa phổ biến: Trình bày về các phƣơng pháp ảo
hóa đƣợc sử dụng phổ biến trong thời điểm hiện tại nhƣ ảo hóa hệ điều hành,
mô phỏng phần cứng, ảo hóa song song. Đồng thời cũng đƣa ra vai trò của phần
cứng trong việc ứng dụng công nghệ ảo hóa
 Chƣơng 3: Hệ thống máy ảo OpenVZ: Đây là chƣơng trong tâm trình bày về
cách cài đặt, sử dụng các công cụ của phần mềm hay nói cách khác là quản trị
OpenVZ với các tác vụ cụ thể.
 Chƣơng 4: So sánh OpenVZ và một số máy ảo khác trên Linux: Đƣa ra
những so sánh về công nghệ và hiệu năng của OpenVZ với một số máy ảo đƣợc
sử dụng phổ biến nhƣ VMWare, Xen, VirtualBox.



1

CHƢƠNG 1. GIỚI THIỆU BÀI TOÁN ẢO HÓA VÀ Ý NGHĨA
CỦA NÓ
1.1. Bài toán ảo hóa máy chủ lƣu trữ của các Doanh nghiệp
Hiện nay hầu hết các doanh nghiệp (DN) đều có website riêng trên Internet. Chi
phí cho hosting (lƣu trữ) website và giữ chỗ tên miền đƣợc rất nhiều Doanh nghiệp
quan tâm, nhƣng vẫn chƣa tìm ra giải pháp có lợi nhất. Có 3 cách lƣu trữ web phổ biến
hiện nay.
1.1.1. Dùng chung máy chủ, chia sẻ tài nguyên
Để giảm tối đa chi phí đầu tƣ, nhiều Doanh nghiệp vừa và nhỏ chọn giải pháp
thuê Shared Hosting (lƣu trữ chia sẻ). Ƣu điểm của giải pháp này là tiết kiệm chi phí
thuê dịch vụ và Doanh nghiệp không cần phải có nhân viên CNTT chuyên nghiệp
riêng để quản lý hosting vì máy chủ (server) đã đƣợc nhà cung cấp quản lý. Tùy vào
trình độ kỹ thuật, kinh nghiệm nhà cung cấp mà chất lƣợng cũng nhƣ sự bảo mật cho
server chung khác nhau. Nhƣợc điểm của giải pháp này là Doanh nghiệp phải chia sẻ

tài nguyên hệ thống server chung với nhiều tài khoản của cá nhân khác hoặc Doanh
nghiệp khác, nguy cơ bị hack rất cao. Chẳng hạn, trên cùng 1 server vật lý đang chứa 4
website A, B, C, D của 4 Doanh nghiệp; nếu website A bị tấn công thì có thể làm toàn
bộ server quá tải và dĩ nhiên các website B, C, D cũng không thể truy cập đƣợc nữa.
1.1.2. Máy chủ riêng tại các trung tâm dữ liệu
Dedicated Server (máy chủ riêng) đƣợc coi là giải pháp tối ƣu cho việc vận hành
website, hệ thống e-mail và các giải pháp trực tuyến khác của Doanh nghiệp. Ƣu thế
của giải pháp này là Doanh nghiệp sử dụng độc lập một hệ thống riêng, không chia sẻ
với ai và đặc biệt sức tải của server có thể mở rộng vô hạn (dựa vào những công nghệ
cho phép kết hợp khả năng điện toán của nhiều server nhƣ công nghệ clustering, điện
toán lƣới…), không hạn chế việc cài đặt những phần mềm đặc thù cho một số ngành
nghề đặc biệt. Tuy nhiên, với Doanh nghiệp nhỏ và vừa, đây lại là giải pháp có một số
hạn chế nhất định nhƣ chi phí thuê hệ thống server và chi phí bản quyền phần mềm
nhƣ hệ điều hành, chƣơng trình điều khiển khá cao, và cần có đội ngũ IT chuyên
nghiệp riêng để tự quản trị và vận hành server vì nhà cung cấp sẽ giao quyền truy xuất
cao nhất (Root Access) của server cho Doanh nghiệp tự quản lý. Ngoài ra Doanh
nghiệp có điều kiện tài chính và kỹ thuật có thể tự mua server rồi thuê dịch vụ Co-
Location (đặt chỗ) để đặt server ngay tại trung tâm dữ liệu (data center) của nhà cung

2

cấp để khai thác. Giải pháp này tận dụng đƣợc cơ sở hạ tầng, mạng trục có sẵn của nhà
cung cấp.
Các nhà cung cấp server tại Việt Nam hiện nay cũng đã đƣa ra nhiều lựa chọn
hơn cho khách hàng khi lựa chọn các cấu hình server khác nhau, phù hợp với khả năng
tài chính cũng nhƣ nhu cầu thực tế. Server đặt tại các data center trong nƣớc hiện nay
là lựa chọn ƣu tiên vì tốc độ truy xuất và hỗ trợ trực tiếp cao hơn so với việc thuê các
server ở nƣớc ngoài.

Hình 1. Sơ đồ ứng dụng Virtual Private Server

Nguồn:
1.1.3. Sử dụng máy chủ riêng ảo (Virtual Private Server)
Virtual Private Server (VPS) là một công nghệ rất mới tại Việt Nam. Có thể hiểu
VPS nhƣ một giải pháp dung hòa giữa Shared Hosting và Dedicated Server theo cả
nghĩa chi phí và cách thức vận hành. VPS hoạt động với phần tài nguyên đƣợc chia sẻ
theo từng phân vùng khác nhau trên một Hardware Node (máy chủ vật lý gốc) nhƣng
hoàn toàn độc lập nhƣ một Dedicated Server, có hệ điều hành và trình quản trị riêng,
không chịu ảnh hƣởng của các VPS khác cùng Hardware Node và ngƣợc lại. Doanh
nghiệp sử dụng VPS cũng có quyền cao nhất (Root Access) để quản trị hệ thống một

3

cách toàn diện nhất, tùy ý cài đặt, vận hành các phần mềm bất kỳ lên VPS, trong khi
đây là điều bị hạn chế, thậm chí cấm kỵ đối với dịch vụ Shared Hosting, hình 1 ở trên
mô phỏng sơ đồ ứng dụng máy chủ riêng ảo.
Với đặc điểm trên, VPS trở thành giải pháp phù hợp hơn cho Doanh nghiệp vừa
và nhỏ, nổi bật ở khả năng tiết kiệm chi phí (thƣờng là 1/2 so với Dedicated Server).
Một ƣu điểm lớn nữa của VPS là khi muốn nâng cấp tài nguyên hoặc gặp sự cố mà hệ
thống cần tái tạo (Reload) lại hệ điều hành thì có thể thực hiện rất nhanh mà hoàn toàn
không mất thời gian cài đặt lại từ đầu. Các nguy cơ về hacking đƣợc giảm tối đa, nhất
là các Doanh nghiệp không có đội ngũ IT riêng có thể thuê nhà cung cấp quản trị VPS
cho mình và có thể khóa hết các đƣờng truy cập nhạy cảm, chỉ mở vào từ Hardware
Node của nhà cung cấp.
Công nghệ VPS đƣợc phát triển từ khá lâu trên thế giới và chia thành nhiều hệ
khác nhau (có phí và miễn phí) nhƣ: SWsoft Virtuozzo (Linux/Windows), OpenVZ
(Linux), Linux-Vserver (Linux), VMWare (Windows), MS Virtual Server (Windows),
FreeVPS (Linux), freeBSD Jail (freeBSD)… Tại Việt Nam hiện nay chƣa có nhiều
công ty cung cấp giải pháp này vì nhu cầu của doanh nghiệp chƣa cao.
1.1.4. Bài toán ảo hóa máy chủ lƣu trữ
Các doanh nghiệp muốn tiết kiệm chi phí và nâng cao hiệu quả đầu tƣ cho hệ

thống máy chủ nên bài toán đặt ra ở đây là lựa chọn một giải pháp hoàn chỉnh đảm bảo
đƣợc các yêu cầu của doanh nghiệp đối với hệ thống máy chủ lƣu trữ của mình. Giải
pháp đƣợc lựa chọn trong 3 giải pháp trên đó là sử dụng máy chủ riêng ảo (VPS).
1.2. Ý nghĩa của bài toán ảo hóa
1.2.1. Tận dụng hiệu quả tài nguyên của hệ thống
Ngày nay, hệ thống máy chủ ở các trung tâm dữ liệu thƣờng hoạt động với 10
hoặc 15% tổng hiệu suất. Nói cách khác, 85% hoặc 90% công suất của máy không
đƣợc dùng đến. Tuy nhiên, một máy chủ dùng chƣa hết công suất vẫn chiếm diện tích
sử dụng và hao tổn điện năng, vì vậy chi phí hoạt động của một máy không đƣợc sử
dụng đúng mức có thể gần bằng với chi phí khi chạy hết công suất. Nhƣ vậy, quả thật
là đang lãng phí các tài nguyên của cả hệ thống. Hãy xem điều gì sẽ xảy ra? Với sự
không ngừng cải tiến các đặc điểm hoạt động của phần cứng máy tính, máy tính trong
năm tới sẽ có công suất gấp đôi máy tính của năm nay (đây là tƣơng lai có thể thấy
trƣớc đƣợc). Hiển nhiên, phải có một cách nào đó hữu hiệu hơn để công suất của làm

4

việc của máy tƣơng ứng với tỷ lệ sử dụng và đó là những gì mà ảo hóa có thể làm
đƣợc – bằng việc dùng một phần cứng duy nhất để hỗ trợ cùng một lúc nhiều hệ thống.
Ứng dụng ảo hóa, các công ty có thể nâng cao đáng kể hiệu suất sử dụng phần cứng và
sử dụng vốn hiệu quả hơn. Vì vậy, đây chính là lý do tại sao ảo hóa giúp nâng cao
công suất của máy tính lại khiến mọi ngƣời quan tâm đến vậy.
Ví dụ hệ thống đang có 3 Server đƣợc mô phỏng nhƣ hình 2 có sức mạnh nhƣ
nhau với vai trò : 1 server chạy Domain Controller, 1 server chạy DNS ,1 server chạy
Web Server.

Hình 2. Hệ thống gồm 3 server
Nguồn: />Admin-c%E1%BA%A7n-quan-t%C3%A2m-%C4%91%E1%BA%BFn-
%E1%BA%A2o-H%C3%B3a?s=005993230b25705697c41a2bc881c51c
Có thể nhận thấy rằng hệ thống đang không tận dụng hết hiệu năng của ba máy

chủ của mình, chúng chỉ chạy ở mức 30% thậm chí ít hơn đối với DNS Server. Giả sử
mua một máy chủ phiến mỏng Blade của IBM có công năng mạnh hơn một trong ba
máy chủ trên. Và hệ thống sử dụng công nghệ ảo hóa để tạo ra 03 máy ảo trên máy
chủ Blade này giống nhƣ mô phỏng ở hình 3. Nhƣ vậy các với một máy chủ mạnh hơn
một chút so với mô hình cũ hệ thống đã tiết kiệm đƣợc chi phí cho việc đầu tƣ máy
chủ cũng nhƣ điện năng, chi phí vận hành bảo dƣỡng.

5


Hình 3. Hệ thống chỉ có một máy chủ được ảo hóa thành 3 máy ảo
Nguồn: />Admin-c%E1%BA%A7n-quan-t%C3%A2m-%C4%91%E1%BA%BFn-
%E1%BA%A2o-H%C3%B3a?s=005993230b25705697c41a2bc881c51c
1.2.2. Đáp ứng nhu cầu lƣu trữ dữ liệu
Các trung tâm dữ liệu đang dùng hết dung lƣợng của mình. Trong 20 năm qua,
các tài liệu kinh doanh đã và đang đƣợc chuyển từ dạng giấy tờ sang dạng điện tử. Đây
là quá trình số hóa tài liệu. Sự xuất hiện của Internet đã thúc đẩy nhanh hơn nữa sự
chuyển biến này. Các công ty muốn trao đổi trực tiếp với khách hàng và đối tác qua
Internet. Đƣơng nhiên, việc này thúc đẩy việc các tài liệu kinh doanh đƣợc vi tính hóa.
Trong một thấp kỷ qua, ảnh hƣởng của Internet khiến một số lƣợng lớn các máy chủ
đƣợc đồng loạt đƣa vào sử dụng tại các trung tâm dữ liệu để lƣu trữ hệ thống tài liệu khổng
lồ này và vấn đề của nó là: khả năng lƣu trữ của cac trung tâm dữ liệu này đang cạn kiệt và
sự gia tăng nhanh chóng dữ liệu đòi hỏi phƣơng pháp lƣu trữ dữ liệu mới. Những phƣơng
pháp này thƣờng đƣợc gọi là ảo hóa lƣu trữ, nhƣ có thể đoán đƣợc có nghĩa là việc lƣu trữ
này có khả năng đƣợc xử lý bởi bất kỳ một phần cứng độc lập nào.
Với khả năng host cùng lúc các hệ thống khách trên một máy chủ vật lý duy nhất,
ảo hóa cho phép các công ty nâng cấp trung tâm dữ liệu, do đó cắt giảm chi phí mở
rộng dung lƣợng trung tâm dữ liệu. Đây là lợi ích lớn nhất của ảo hóa, vì chi phí xây
dựng các trung tâm dữ liệu có thể lên tới hàng chục triệu đôla.
1.2.3. Giảm chi phí quản lý hệ thống

Các máy không hoàn toàn tự hoạt động. Mỗi máy chủ đều cần đến sự giám sát và
cung cấp điện của hệ thống quản lý. Các tác vụ quản lý phổ biến của hệ thống bao

6

gồm: giám sát trạng thái của phần cứng; thay thế các chi tiết phần cứng bị lỗi; cài đặt
hệ điều hành và phần mềm ứng dụng; bảo trì và sửa chữa nhanh ứng dụng; quản lý các
tài nguyên máy chủ then chốt nhƣ bộ nhớ và đĩa; và sao lƣu dữ liệu máy chủ sang các
phƣơng tiện lƣu trữ để bảo mật và dự phòng.
Những công việc này đòi hỏi rất nhiều nhân lực. Để thuê những nhân viên quản
trị hệ thống - ngƣời giữ cho các máy có thể hoạt động tốt - không hề rẻ chút nào. Và
không giống nhƣ các lập trình viên, các nhân viên quản trị hệ thống thƣờng làm việc
bên cạnh máy chủ, do họ cần xử lý phần cứng vật lý.
Để kiểm soát sự gia tăng chi phí điều hành, ảo hóa mang lại cơ hội cắt giảm chi
phí quản lý hệ thống bằng việc giảm số lƣợng máy tính cần đƣợc quản trị. Mặc dù,
nhiều công việc liên quan đến quản lý hệ thống (hệ điều hành và ứng dụng, sao lƣu dự
phòng) không thể thay đổi trong một môi trƣờng đƣợc ảo hóa, rất nhiều tác vụ không
cần phải thực hiện nếu các máy chủ vật lý chuyển sang ảo hóa. Nói chung, ảo hóa có
thể giảm thiểu phần lớn các yêu cầu quản lý. Do đó, ảo hóa trở thành sự lựa chọn tuyệt
vời để giải quyết vấn đề tăng chi phí thuê nhân viên điều hành.
1.2.4. Tiết kiệm năng lƣợng và giảm ô nhiễm môi trƣờng
Tác động của cuộc cách mạng xanh khiến các công ty đang tìm cách giảm lƣợng
năng lƣợng tiêu thụ - và một trong số những nơi họ nhận thấy có thể làm đƣợc điều đó
đầu tiên là các trung tâm dữ liệu. Để thấy rõ sự quan tâm của mọi ngƣời đến lƣợng
năng lƣợng tiêu thụ trong các trung tâm dữ liệu, hãy xem xét thực tế sau: “Một cuộc
nghiên cứu do một nhà khoa học thực hiện chỉ ra rằng trong những năm 2000 đến năm
2005, lƣợng năng lƣợng các trung tâm dữ liệu ở Mỹ tiêu thụ tăng đã gấp đôi. Hơn nữa,
nhà khoa học này cũng dự đoán tới cuối thập niên này, lƣợng năng lƣợng tiêu thụ sẽ
tăng 40%. Lƣợng năng lƣợng các máy chủ ở trung tâm dữ liệu tiêu thụ và để làm mát
chiếm khoảng 1,2% tổng năng lƣợng tiêu thụ ở Mỹ. Dựa trên kết quả của cuộc nghiên

cứu, Cơ quan bảo vệ môi trƣờng Hoa Kỳ (EPA) đã thành lập một nhóm làm việc để
xây dựng các tiêu chuẩn cho các kế hoạch và việc tiêu thụ năng lƣợng của máy chủ và
áp dụng các tiêu chí “Ngôi sao năng lƣợng” (ES) mới cho các máy chủ sử dụng năng
lƣợng hiệu quả.
Do chi phí để vận hành các máy tính cùng với thực tế là nhiều máy tính choán hết
trung tâm dữ liệu và đang hoạt động với hiệu suất thấp, khả năng giảm số lƣợng máy
chủ vật lý có thể giúp cắt giảm rất đáng kể tổng chi phí năng lƣợng của các công ty.


7

CHƢƠNG 2. CÁC ỨNG DỤNG ẢO HÓA PHỔ BIẾN
Một số ứng dụng phổ biến nhất của ảo hóa tập trung xung quanh khái niệm: ảo
hóa là sự trừu tƣợng hóa các tài nguyên vật lý. Thực tế là có nhiều phƣơng pháp ảo
hóa nhƣng hai phƣơng pháp ảo hóa đƣợc ứng dụng nhiều nhất trong các trung tâm dữ
liệu là ảo hóa máy chủ và ảo hóa lƣu trữ. Trong mỗi phƣơng pháp ảo hóa, có cái hay
và phƣơng pháp riêng của mình, mỗi phƣơng pháp đều có ƣu và nhƣợc điểm riêng.
2.1. Ảo hóa máy chủ
Có 3 phƣơng pháp ảo hóa máy chính: ảo hóa hệ điều hành; mô phỏng phần cứng;
và paravirtualization (tạm gọi ảo hóa song song), một khái niệm tƣơng đối mới phân
chia thành các khối lƣợng công việc nhỏ hơn và hoạt động tốt hơn.
2.1.1. Ảo hóa hệ điều hành
Một hệ điều hành đƣợc vận hành ngay trên một hệ điều hành chủ đã tồn tại và có
khả năng cung cấp một tập hợp các thƣ viện tƣơng tác với các ứng dụng, khiến cho
mỗi ứng dụng khác đƣợc hỗ trợ cảm thấy nhƣ đang chạy trên một máy chủ vật lý. Từ
phối cảnh của ứng dụng, nó đƣợc nhận thấy và tƣơng tác với các ứng dụng chạy trên
hệ điều hành ảo, và tƣơng tác với hệ điều hành ảo mặc dù nó kiểm soát tài nguyên hệ
điều hành ảo. Nói chung, không thể thấy các ứng dụng này hoặc các tài nguyên hệ điều
hành đặt trong hệ điều hành ảo khác.
Phƣơng pháp ảo hóa này đặc biệt hữu dụng nếu muốn mang lại cho cộng đồng

ngƣời sử dụng khác nhau các chức năng khác nhau của hệ thống trên một một máy chủ
duy nhất. Đây là một phƣơng pháp lý tƣởng cho các công ty máy chủ Web: Họ sử
dụng ảo hóa container (OS ảo) để khiến cho một trang Web chủ “tin rằng” trang web
này kiểm soát toàn bộ máy chủ. Tuy nhiên, trên thực tế mỗi trang Web chủ chia sẻ
cùng một máy với các trang Web khác, mỗi trang Web này lại có một container riêng.
Ảo hóa hệ điều hành yêu cầu rất ít tài nguyên hệ thống, do đó bảo đảm hầu hết
tài nguyên máy sẵn có cho các ứng dụng chạy trên container. Tuy nhiên, ảo hóa hệ
điều hành vẫn có một số nhƣợc điểm. Nhƣợc điểm đầu tiên và lớn nhất là phƣơng
pháp này thƣờng giới hạn sự lựa chọn hệ điều hành. Sự container hóa nghĩa là các
container cung cấp một hệ điều hành tƣơng tự nhƣ hệ điều hành chủ và thậm chí thống
nhất về phiên bản và các bản vá lỗi.
Có thể tƣởng tƣợng, có thể xảy ra vấn đề nếu muốn chạy các ứng dụng khác nhau
trên các container, do các ứng dụng thƣờng đƣợc chứng thực cho một phiên bản hệ

8

điều hành và các bản vá lỗi. Do đó, ảo hóa hệ điều hành thích hợp nhất với cấu hình
thuần nhất, trong các tình huống này ảo hóa hệ điều hành là sự lựa chọn hoàn hảo.
2.1.2. Mô phỏng phần cứng
Trong phƣơng pháp mô phỏng phần cứng, phần mềm dùng để ảo hóa (thƣờng
đƣợc biết đến là một hypervisor) trình diễn một môi trƣờng phần cứng đƣợc mô phỏng
mà các hệ điều hành khách hoạt động trên đó. Môi trƣờng phần cứng đƣợc mô phỏng
này thƣờng ám chỉ phần mềm điều khiển máy ảo hay VMM (Virtual Machine
Monitor).
VMM tạo ra một môi trƣờng phần cứng đƣợc chuẩn hóa trên đó hệ điều hành
khách cƣ trú và tƣơng tác. Do hệ điều hành máy khách và VMM tạo ra một gói thống
nhất, gói này có thể đƣợc chuyển từ máy này sang máy khác, mặc dù các cấu hình vật
lý của hệ thống mà gói này chạy trên đó có thể khác. Hypervisor cƣ trú giữa VMM và
phần cứng vật lý chuyển yêu cầu tài nguyên từ VMM sang máy chủ vật lý.
Phƣơng pháp ảo hóa này đƣợc hiểu là các ứng dụng chạy trên một hệ điều hành

khách hoàn toàn biệt lập với ít nhất một hệ điều hành khách đang hoạt động, một hệ
điều hành chạy trên mỗi VMM. Các VMM đều lƣu trú trên một hypervisor ảo. Phƣơng
pháp này không chỉ hỗ trợ nhiều hệ điều hành, nó còn hỗ trợ nhiều hệ điều hành khác
nhau. Những hệ điều hành này có thể khác nhau về phiên bản thậm chí là các hệ điều
hành hoàn toàn khác nhƣ Windows và Linux có thể chạy đồng thời trên phần mềm ảo
hóa phần cứng.
Ảo hóa phần cứng đƣợc sử dụng rộng rãi trong ngành phát triển phần mềm và
bảo đảm chất lƣợng (QA - Quality Assurance), vì nó cho phép các hệ điều hành khác
nhau chạy đồng thời trên một máy. Điều này cho phép phát triển song song hoặc thử
nghiệm phần mềm ở nhiều môi trƣờng hệ điều hành khác nhau. Mô phỏng phần cứng
cũng đƣợc dùng để hợp nhất máy chủ, ở đó các môi trƣờng ứng dụng hoặc hệ điều
hành đƣợc copy và chuyển từ nhiều máy chủ vật lý riêng rẽ sang một máy chủ vật lý
duy nhất chạy phần mềm ảo.
Một trong những nhƣợc điểm của việc mô phỏng phần cứng là nó ảnh hƣởng đến
khả năng hoạt dộng của hệ thống điều này khiến cho các ứng dụng trên các máy ảo
chạy chậm hơn bình thƣờng.
Một nhƣợc điểm khác là phần mềm ảo hóa xuất hiện trƣớc hệ điều hành khách
trong một giao diện phần cứng đƣợc tiêu chuẩn hóa (VMM). Hypervisor mang đến
cho VMM một giao diện, sau đó chuyển thành các yêu cầu đối với các tài nguyên vật

9

lý thực trên máy. Nghĩa là hypervisor phải giữ các giao diện cho các tài nguyên của
máy; các tài nguyên này đƣợc gọi là các trình điều khiển thiết bị. Nếu từng lắp đặt
phần cứng mới trên máy tính cá nhân, thì việc phải làm thƣờng xuyên cài đặt một trình
điều khiển thiết bị lên hệ điều hành, do đó phần mềm này và hệ điều hành có thể giao
tiếp. Vấn đề của trình điều khiển thiết bị đối với mô phỏng phần cứng đó là hypervisor
đã có các trình điều khiển và ngƣời sử dụng không thể cài đặt các trình điều khiển mới
(không giống nhƣ trên máy tính cá nhân).
Do đó, nếu một máy có tài nguyên phần cứng và hypervisor không có trình điều

khiển, phần mềm ảo hóa không thể chạy trên máy. Điều này có thể gây vấn đề, đặc
biệt cho các công ty muốn sử dụng các phần cứng mới.
Các công ty cung cấp phần mềm ảo hóa mô phỏng phần cứng gồm có VMWare
(ở hai phiên bản VMWare Server và ESX Server) và Microsoft. Microsoft cung cấp
một sản phẩm đƣợc gọi là Virtual Server. VMWare chỉ hỗ trợ các máy chủ x86, đặc
biệt là Hệ điều hành Microsoft. Phần mềm Virtual Server của Microsoft đƣợc dự đoán
là sẽ bị Hyper-V thay thế, phần mềm này đƣợc biết đến là một phần của Microsoft
Windows Server 2008. Một phần mềm khác đó là Xen, phần mềm thay thế nguồn mở
dựa trên hypervisor.
2.1.3. Ảo hóa song song
Là một phƣơng pháp ảo hóa máy chủ khác. Với phƣơng pháp ảo hóa này, 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ở.
Phƣơng pháp ảo hóa này có hai ƣu điểm. Thứ nhất, giảm chi phí hoạt động do số
lƣợng mã rất ít. Mô phỏng phần cứng chèn toàn một lớp mô phỏng phần cứng giữa hệ
điều hành chủ và phần cứng vật lý. Ngƣợc lại, lớp phần mềm mỏng của
paravirtualization hoạt động giống một cảnh sát giao thông hơn, nó cho phép một hệ
điều hành chủ truy cập các tài nguyên vật lý của phần cứng, đồng thời ngăn không cho
các hệ điều hành chủ khác truy cập các nguồn tài nguyên đó.
Ƣu điểm thứ hai của paravirtualization so với mô phỏng phần cứng là
paravirtualization không giới hạn các trình điều khiển thiết bị trong phần mềm ảo hóa;
thực tế là paravirtualization không hề có các trình điều khiển thiết bị. Thay vào đó, nó
sử dụng các trình điều khiển thiết bị có trong một hệ điều hành chủ, gọi là máy chủ đặc
quyền. Ở đây, khóa luận không đi sâu về mặt kiến trúc, chỉ cần hiểu rằng đây là một
ƣu thế, vì nó cho phép các công ty tận dụng hiệu suất phần cứng các máy chủ, chứ

10

không bị giới hạn phần cứng mà các trình điều khiển phải sẵn có trong phần mềm ảo
hóa này nhƣ trong ảo hóa mô phỏng phần cứng.

Tuy nhiên, phƣơng pháp ảo hóa này cũng có một nhƣợc điểm lớn: Do ít quan
trọng và dồn truy cập vào một phần cứng cơ sở, paravirtualization yêu cầu các hệ điều
hành chủ phải đƣợc thay đổi để tƣơng tác với giao diện paravirtualization. Công việc
này chỉ có thể đƣợc thực hiện khi truy cập mã nguồn của hệ điều hành.
Do đó, nhƣợc điểm này sẽ đƣợc giảm thiểu khi sử dụng các máy chủ có các con
chip mới trong cơ sở hạ tầng sản xuất. Một ví dụ của paravirtualization là một sản
phẩm nguồn mở mới đƣợc gọi là Xen, đƣợc công ty thƣơng mại XenSource bảo trợ.
Xen cũng xuất hiện trong các nguồn phân phối Linux gần đây từ Red Hat và Novell,
và có trong nhiều nguồn phân phối cộng đồng Linux nhƣ Debian và Ubuntu.
XenSource cũng tự bán các sản phẩm dựa trên Xen. Một phần mềm tiềm năng khác là
Virtual Iron, một giải pháp dựa trên Xen.
2.1.4. Ảo hóa lƣu trữ
Số lƣợng các công ty phát triển và lƣu trữ dữ liệu tăng ngày càng nhanh. Do sự
chuyển dịch các chu trình kinh doanh sang các ứng dụng số dựa trên Web, các công ty
đang bị chìm ngập trong biển dữ liệu. Việc tăng quá nhanh dữ liệu đang gây ra vấn đề
cho nhiều công ty.
Thứ nhất, do dung lƣợng lƣu trữ nhỏ, nhiều ứng dụng đã tạo ra quá nhiều dữ liệu
hơn khả năng lƣu trữ vật lý trên một máy chủ. Thứ hai, nhiều ứng dụng, đặc biệt
những ứng dụng dựa trên Internet, có nhiều máy cần truy cập cùng dữ liệu. Tất cả các
dữ liệu trì hoãn trên một máy có thể gây ra sự tắc nghẽn, đó là không đề cập đến nguy
cơ các máy chủ có thể không hoạt động nếu một máy chủ chứa toàn bộ các dữ liệu của
ứng dụng bị hỏng. Cuối cùng, sự bùng nổ các máy mà đã đƣợc nhắc đến trong trong
phần trƣớc của chƣơng này có thể gây ra các vấn đề về sao lƣu; nói cách khác, sao
chép dữ liệu là nhiệm vụ không tƣởng khi có hàng trăm nghìn máy cần đƣợc sao lƣu
dữ liệu.
Vì những lý do này, dữ liệu cũng đƣợc ảo hóa. Các công ty sử dụng phƣơng pháp
lƣu trữ tập trung (lƣu trữ ảo hóa) nhƣ một biện pháp tránh các vấn đề truy cập dữ liệu.
Hơn nữa, chuyển sang lƣu trữ dữ liệu tập trung có thể giúp các công ty CNTT giảm chi
phí và tăng hiệu quả quản lý dữ liệu.


11

2.2. Vai trò của phần cứng
Mặc dù ảo hóa là một công nghệ phần mềm, tác động của ảo hóa là khiến phần
cứng trở nên càng quan trọng hơn. Đó là do việc tháo dỡ rất nhiều máy chủ và dịch
chuyển các hệ điều hành đến các máy ảo khiến các máy chủ còn lại, những máy mà hỗ
trợ tất cả các máy ảo đó, trở nên quan trọng hơn bao giờ hết.
Mặc dù, các công ty CNTT có thể chấp nhận các máy chủ riêng rẽ trong môi
trƣờng “một ứng dụng, một máy chủ” bị hỏng bởi mỗi lỗi hệ thống sẽ ảnh hƣởng đến
một nhóm ngƣời sử dụng, ảo hóa thì hoàn toàn khác. Mỗi máy chủ hỗ trợ nhiều máy
ảo và nhiều ứng dụng của ngƣời sử dụng. Nếu một máy chủ ảo hóa gặp sự cố, nó sẽ
gây ảnh hƣởng đến nhiều ứng dụng và toàn bộ ngƣời sử dụng các ứng dụng đó.
Phần cứng sẽ chỉ trở nên quan trọng hơn khi một phần cứng mới và sẵn sàng để
ảo hóa xuất hiện trên thị trƣờng. Các nhà sản xuất phần cứng đang tạo ra những khả
năng ảo hóa có tầm quan trọng lớn, vì vậy đừng xem nhẹ tầm quan trọng của phần
cứng trong cấu trúc hạ tầng ảo hóa. Do vậy, khi ứng dụng phần mềm ảo hóa, một tác
động không ngờ là phần cứng mới trở nên ngày càng quan trọng hơn.


12

CHƢƠNG 3. HỆ THỐNG MÁY ẢO OPENVZ
OpenVZ là hệ thống máy ảo sử dụng phƣơng pháp ảo hóa hệ điều hành dựa trên
nhân Linux và hệ điều hành. OpenVZ cho phép một máy chủ vật lý chạy nhiều hành
độc lập gọi là Containers. OpenVZ hỗ trợ nhiều nền tảng vi xử lý hơn là các bản luân
phiên. VMware Server và Xen có thể dùng đƣợc cho dòng x86, AMD 64; còn
OpenVZ đƣợc chấp nhận ở dòng x86, AMD64, Itanium (IA64), PowerPC, và
UltraSPARC. Chú ý là hiện nay chƣa có các kernel (nhân hệ điều hành) PowerPC xây
dựng trƣớc cho Debian, nhƣng OpenVZ đƣợc hỗ trợ trên PowerPC.
3.1. Cài đặt OpenVz

3.1.1. Cài đặt và cấu hình hệ điều hành chủ trên máy tính
a. Lựa chọn hệ điều hành
Có thể chạy OpenVZ trên bất kỳ hệ thống host nào. Có thể lựa chọn Ubuntu,
Fedora Core, RedHat, CentOS, Gentoo hoặc bất kỳ bản phân phối nào khác với mẫu
hệ điều hành (OS template) đi kèm. Khi cài đặt các bản phân phối nên chọn phiên bản
cài cho Server.
b. Phân vùng ổ đĩa
Khi phân vùng cho ổ đĩa không nên chọn phân vùng tự động mà nên chọn chế độ
phân vùng bằng tay và nên thiết lập các phân vùng nhƣ sau
Phân vùng Kích thƣớc phân vùng
/ 2 – 4 GB
swap = 2 lần dung lƣợng bộ nhớ RAM
/vz toàn bộ phần còn lại của đĩa cứng
Tiến hành chia các phân vùng theo nhƣ hình 4 bên dƣới:

13


Hình 4. Phân vùng ổ đĩa khi cài hệ điều hành chủ
Nguồn:
Theo khuyến cáo ở đây nên sử dụng một phân vùng riêng biệt cho các thƣ mục
chứa máy chủ ảo và các bản cài đặt (theo mặc định /vz /private/<veid> ). Lý do làm
nhƣ vậy là nếu muốn sử dụng hạn ngạch đĩa trên OpenVZ, sẽ không thể sử dụng hạn
ngạch đĩa thông thƣờng Linux trên phân vùng đó.
c. Kết thúc cài đặt
Sau khi phân vùng quá trình cài đặt đƣợc tiếp tục tới khi hoàn thành, sau đó tới
phần thiết lập mạng và tƣờng lửa, cần thiết lập đúng địa chỉ IP, submark, default
gateway và DNS hoặc để cấu hình mặc định theo DHCP. Khi cấu hình tƣờng lửa
(Firewall) chọn No Firewall hoăc để chế độ Disable. Sau khi kết thúc quá trình này thì
khởi động lại máy và chuẩn bị cài đặt phần mềm OpenVZ

3.1.2. Cài đặt phần mềm OpenVZ
a. Lựa chọn phương án cài đặt
Trong trƣờng hợp có sẵn tiện ích yum thì nên chƣa chọn phƣơng án này để tiện
cho việc cài đặt và cập nhật thƣờng xuyên. Nếu hệ điều hành không có sẵn tiện ích này
thì chyển sang cài đặt bằng rpm, trong trƣờng hợp này phải tải gói cài đặt của OpenVZ
về và cài bằng tay.

×