Tải bản đầy đủ

Cung cấp tài nguyên cho dịch vụ ảo hóa dựa trên nền tảng máy chủ chia sẻ trong tính toán đám mây

BỘ GIÁO DỤC VÀ ĐÀO TẠO
ĐẠI HỌC ĐÀ NẴNG
***

PHẠM NGUYỄN MINH NHỰT

CUNG CẤP TÀI NGUYÊN CHO DỊCH VỤ ẢO HÓA
DỰA TRÊN NỀN TẢNG MÁY CHỦ CHIA SẺ
TRONG TÍNH TOÁN ĐÁM MÂY

LUẬN ÁN TIẾN SĨ KỸ THUẬT

ĐÀ NẴNG, 2018


BỘ GIÁO DỤC VÀ ĐÀO TẠO
ĐẠI HỌC ĐÀ NẴNG
***

PHẠM NGUYỄN MINH NHỰT


CUNG CẤP TÀI NGUYÊN CHO DỊCH VỤ ẢO HÓA
DỰA TRÊN NỀN TẢNG MÁY CHỦ CHIA SẺ
TRONG TÍNH TOÁN ĐÁM MÂY

CHUYÊN NGÀNH: KHOA HỌC MÁY TÍNH
MÃ SỐ: 62.48.01.01

LUẬN ÁN TIẾN SĨ KỸ THUẬT

Người hướng dẫn khoa học:
1. PGS. TS. LÊ VĂN SƠN
2. PGS. TS. ĐOÀN VĂN BAN

ĐÀ NẴNG, 2018


LỜI CAM ĐOAN
Tôi xin cam đoan: Luận án này là công trình nghiên cứu thực sự của cá nhân tôi,
được thực hiện tại Trường Đại học Bách khoa, Đại học Đà Nẵng dưới sự hướng dẫn
khoa học của PGS.TS. Lê Văn Sơn và PGS.TS. Đoàn Văn Ban.
Các kết quả, những kết luận nghiên cứu được trình bày trong luận án này là trung
thực và chưa từng được công bố ở bất kỳ công trình nào của tác giả khác.
Tôi xin chịu trách nhiệm về những lời cam đoan của tôi.
Nghiên cứu sinh

Phạm Nguyễn Minh Nhựt

i


LỜI CẢM ƠN
Luận án "Cung cấp tài nguyên cho dịch vụ ảo hóa dựa trên nền tảng
máy chủ chia sẻ trong tính toán đám mây " được hoàn thành dưới sự hướng
dẫn tận tình, cùng những yêu cầu nghiên cứu nghiêm túc của PGS.TS. Lê Văn Sơn
và PGS.TS. Đoàn Văn Ban. Các Thầy đã truyền đạt nhiều kiến thức chuyên môn quý
báu cũng như những kinh nghiệm nghiên cứu khoa học trong thời gian nghiên cứu để
viết luận án này. Tôi xin được bày tỏ lòng biết ơn chân thành và sự kính trọng sâu
sắc đối với các Thầy.
Để hoàn thành luận án này, tôi cũng đã tiếp nhận được những kiến thức quý giá,
sự đóng góp ý kiến và quan tâm chân tình từ quý Thầy, Cô trong Khoa Công nghệ


Thông tin, Trường Đại học Bách khoa Đà Nẵng. Quý Thầy, Cô đã tạo mọi điều kiện
thuận lợi cho quá trình học tập, nghiên cứu khoa học, tham gia hội thảo và trao đổi
chuyên môn, tiếp xúc với chuyên gia. Tôi xin chân thành cảm ơn sự quan tâm, động
viên và sự hỗ trợ nhiệt tình tất cả quý Thầy, Cô.
Xin chân thành cảm ơn các tác giả về những tài liệu, bài báo và các công bố nghiên
cứu khoa học mà tôi có sử dụng tham khảo, trích dẫn trong đề tài nghiên cứu này.
Tôi xin cảm ơn bạn bè, đồng nghiệp đã có nhiều động viên và đóng góp ý kiến để luận
án được hoàn chỉnh.
Nghiên cứu sinh

Phạm Nguyễn Minh Nhựt

ii


DANH MỤC VIẾT TẮT
Viết tắt

Dạng đầy đủ

Diễn giải ý nghĩa

API

Application Programming In-

Giao diện lập trình ứng dụng.

terface.
ACO

Ant Colony Optimization.

Tối ưu đàn kiến.

Ant System.

Hệ kiến.

ACS

Ant Colony System.

Hệ đàn kiến.

BW

BandWidth.

Băng thông.

BWAS

Best-Worst Ant System.

Hệ kiến Best-Worst.

CPU

Center Processing Unit.

Đơn vị xử lý trung tâm.

CIS

Cloud Information Service.

Dịch vụ thông tin đám mây.

DC

Data Center

Trung tâm dữ liệu.

Energy Consumption Resource

Cung cấp tài nguyên với mục

Allocation for Virtual Services.

tiêu ràng buộc năng lượng tiêu

AS

ECRAVS

thụ cho dịch vụ ảo hóa.
FFD

Firt Fit Decreasing.

Thuật toán Firt Fit Decreasing

GA

Genetic Algorithm.

Thuật toán Di truyền.

HaaS

Hardware as a Service.

Phần cứng như một dịch vụ.

IaaS

Infrastructure as a Service.

Cơ sở hạ tầng như một dịch vụ.

I/O

Input/Output.

Thiết bị vào/ra.

MDRAVS

Multi-Dimensional

Resource

Cung cấp tài nguyên đa chiều

Allocation for Virtual Services.

cho dịch vụ ảo hóa.

MMAS

Max-Min Ant System.

Hệ kiến Max-Min.

MORA

Multi-Objective Resource Al-

Cung cấp tài nguyên đa mục

location.

tiêu.

NSDV

Năng suất dịch vụ.

Năng suất dịch vụ.

OS

Operation System.

Hệ điều hành.

PSO

Particle Swarm Optimization.

Tối ưu bầy đàn.

PaaS

Platform as a Service.

Nền tảng như một dịch vụ.

PM

Physical Machine.

Máy vật lý.

RBAS

Rank-Based Ant System.

Hệ kiến Rank-Based.

RAM

Random Access Memory.

Bộ nhớ truy xuất ngẫu nhiên.

RaaS

Resource as a Service.

Tài nguyên như một dịch vụ.
iii


Viết tắt

Dạng đầy đủ

Diễn giải ý nghĩa

SaaS

Software as a Service.

Phần mềm như một dịch vụ.

QoS

Quality of Service.

Chất lượng dịch vụ.

SLA

Service Level Agreement.

Thỏa thuận mức dịch vụ.

SA

Simulated Annealing.

Mô phỏng luyện kim.

VM

Virtual Machine.

Máy ảo.

VMM

Virtual Machine Manager.

Bộ giám sát máy ảo.

VMCS

Virtual

Cấu trúc giám sát máy ảo.

Machine

Control

Structure.

iv


DANH MỤC CÁC KÝ HIỆU
Ký hiệu
VS

Diễn giải ý nghĩa
Tập các dịch vụ ảo hóa.

i

Dịch vụ ảo hóa thứ i.

N

Số lượng dịch vụ ảo hóa.

PM

Tập các máy vật lý.

j

Máy vật lý thứ j.

M

Số lượng máy vật lý.

D

Tập các loại tài nguyên.

D

Số loại tài nguyên.

rik

Nhu cầu tài nguyên của dịch vụ ảo hóa thứ i với loại tài nguyên
k.

Q+

Tập số hữu tỷ dương.

R

Tập số thực.

xij

Biến nhị phân, có giá trị 1 nếu dịch vụ ảo hóa i được cấp tài
nguyên từ máy vật lý j và bằng 0 nếu ngược lại.

aik

Biến nhị phân, có giá trị 1 nếu rik là một nhu cầu tất yếu, bằng
0 nếu rik là một nhu cầu tùy biến.

bij

Năng suất dịch vụ của dịch vụ ảo hóa i trên máy vật lý j.

yj

Biến nhị phân, có giá trị 1 nếu máy vật lý j được sử dụng để
cung cấp tài nguyên cho các dịch vụ ảo hóa và có giá trị 0 nếu
ngược lại.

pij

Xác suất để con kiến chọn một dịch vụ ảo hóa i như là dịch
vụ kế tiếp để được cung cấp tài nguyên từ máy vật lý j hiện
hành.

τij

Vệt mùi để con kiến dựa vào đó chọn dịch vụ ảo hóa i như là
dịch vụ ảo hóa kế tiếp để được cung cấp tài nguyên từ máy vật
lý hiện hành j.

τijmax

Vệt mùi cực đại.

τijmin

Vệt mùi cực tiểu.

α, β

Hệ số nhằm làm nổi bật mùi và thông tin heuristic.

VStemp

Tập các dịch vụ ảo hóa hội đủ điều kiện sẽ được chọn để được
cung cấp tài nguyên từ máy vật lý hiện hành j.
v


Ký hiệu

Diễn giải ý nghĩa

ri∗

Vector nhu cầu tất yếu của dịch vụ ảo hóa i.

ri∗∗

Vector nhu cầu tùy biến của dịch vụ ảo hóa i.

Loadj

Tải của máy vật lý hiện hành j.

Cj

Vector năng lực tài nguyên của máy vật lý j.

ηij

Thông tin heuristic.

∆τijbest

Tổng mùi tăng cường được sinh ra từ con kiến có giải pháp tốt
nhất của lần lặp.

ρ
BIN ARY

Độ bay hơi của vệt mùi.
nA

eij
f (S best )
S best
p

best

Ma trận lưu các giải pháp.
Biểu diễn ánh xạ từ dịch vụ ảo hóa i đến các máy vật lý j.
Hàm tính giải pháp tốt nhất.
Giải pháp tốt nhất.
Tham số điều chỉnh biên của vệt mùi.

S best−vong−lap

Giải pháp tốt nhất vòng lặp.

S best−toan−cuc

Giải pháp tốt nhất toàn cục.

P (numLoop)

Xác suất tìm thấy giải pháp của thuật toán Hệ kiến Max-Min
sau numLoop bước lặp.

Ce

Vector tài nguyên thành phần.

cejk
a

Phần tử đơn lẻ của loại tài nguyên k trên máy vật lý j.

C

Vector tài nguyên tổng hợp.

cajk

Phần tử tổng hợp của loại tài nguyên k trên máy vật lý j.

Re

Vector nhu cầu tài nguyên tất yếu thành phần.

R

a

e
rik

Vector nhu cầu tài nguyên tất yếu tổng hợp.
Phần tử nhu cầu tất yếu thành phần loại tài nguyên k của dịch
vụ ảo hóa i.

a
rik

Phần tử nhu cầu tất yếu tổng hợp loại tài nguyên k của dịch
vụ ảo hóa i.

Fe

Vector nhu cầu tùy biến thành phần.

e
fik

Phần tử nhu cầu tùy biến thành phần đối với loại tài nguyên k
của dịch vụ ảo hóa i.

Fa

Vector nhu cầu tài nguyên tùy biến tổng hợp.

a
fik

Phần tử nhu cầu tài nguyên tùy biến tổng hợp đối với loại tài
nguyên k của dịch vụ ảo hóa i.

Q

Vector hệ số bổ sung.

qij

Hệ số bổ sung nhu cầu tùy biến của dịch vụ ảo hóa i đối với
máy vật lý j.
vi


Ký hiệu

Diễn giải ý nghĩa

Pj (uj )

Điện năng tiêu thụ tại máy vật lý j.

Pjmax

Công suất của máy vật lý j tương ứng ở trạng thái sử dụng
tiện ích tài nguyên tối đa.

Pjidle

Công suất của máy vật lý j tương ứng ở trạng thái trạng thái
không hoạt động.

uj

Tổng tiện ích sử dụng của tất cả các loại tài nguyên trên máy
vật lý j.

E(t)

Năng lượng tiêu thụ của M máy vật lý khi cung cấp tài nguyên
cho N dịch vụ ảo hóa trong khoảng thời gian ∆t.

Vp

Vận tốc của partical.

Xp

Vị trí của partical.

t
Fijk

Tổng tài nguyên loại k mà dịch vụ ảo hóa i được cung cấp tài
nguyên từ máy vật lý j.

FjP SO

Làm thích nghi của partical.

EF F D

Năng lượng tiêu thụ của hệ thống khi sử dụng thuật toán FFD.

E



Năng lượng tiêu thụ của hệ thống khi sử dụng thuật toán
ECRAVS-PSO hay thuật toán ECRAVS-SA.

Rj

Tài nguyên còn lại của máy vật lý j khi cung cấp tài nguyên
cho dịch vụ ảo hóa.

R

Giá trị tài nguyên trung bình còn lại của tất cả các máy vật
lý.

E(s0 )

Năng lượng tiêu thụ của giải pháp s0 .

σ(s0 )

Độ lệch chuẩn của giải pháp s0 .

ηijσ

Thông tin heuristic cho mục tiêu cân bằng tải.

ηijE

Thông tin heuristic cho mục tiêu tối thiểu năng lượng tiêu thụ.

E(s

best

)

σ(sbest )
E RoundRobin

Năng lượng tiêu thụ tương ứng với giải pháp tốt nhất toàn cục.
Độ lệnh chuẩn tương ứng với giải pháp tốt nhất toàn cục.
Năng lượng tiêu thụ của hệ thống khi sử dụng thuật toán
RoundRobin.

E M ORA−ACS

Năng lượng tiêu thụ của hệ thống khi sử dụng thuật toán
M ORA − ACS.

vii


MỤC LỤC

Lời cam đoan
i
Lời cảm ơn
ii
Danh mục viết tắt
iii
Danh mục các ký hiệu
v
Mục lục
viii
Danh mục bảng, biểu
xi
Danh mục hình vẽ
xii
Mở đầu
1
Chương 1. Tổng quan và đề xuất bài toán cung cấp tài nguyên cho
dịch vụ ảo hóa
1.1 Hệ thống tính toán đám mây . . . . . . . . . . . . . . . . . . . . . . .
1.1.1 Đặc điểm của hệ thống tính toán đám mây . . . . . . . . . . . .
1.1.2 Mô hình dịch vụ của hệ thống tính toán đám mây . . . . . . . .
1.1.3 Mô hình triển khai của hệ thống tính toán đám mây . . . . . .
1.2 Yêu cầu và thách thức của hệ thống tính toán đám mây . . . . . . . .
1.2.1 Yêu cầu của một hệ thống tính toán đám mây . . . . . . . . . .
1.2.2 Thách thức của một hệ thống tính toán đám mây . . . . . . . .
1.3 Máy ảo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.4 Công nghệ ảo hóa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.4.1 Ảo hóa máy chủ . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.4.2 Ảo hóa tích hợp . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.5 Công cụ mô phỏng hệ thống tính toán đám mây . . . . . . . . . . . . .
1.5.1 Khảo sát các công cụ mô phỏng . . . . . . . . . . . . . . . . . .
1.5.2 Công cụ mô phỏng CloudSim . . . . . . . . . . . . . . . . . . .
1.6 Cung cấp tài nguyên trong hệ thống tính toán đám mây . . . . . . . .
1.6.1 Mô hình cung cấp tài nguyên . . . . . . . . . . . . . . . . . . .
1.6.2 Cung cấp ứng dụng . . . . . . . . . . . . . . . . . . . . . . . . .
1.6.3 Cung cấp máy ảo . . . . . . . . . . . . . . . . . . . . . . . . . .
1.6.4 Cung cấp tài nguyên vật lý . . . . . . . . . . . . . . . . . . . .
1.7 Các nghiên cứu liên quan đến cung cấp tài nguyên cho dịch vụ ảo hóa .
1.7.1 Mô hình hệ thống cung cấp tài nguyên cho dịch vụ ảo hóa . . .
1.7.2 Mô hình cung cấp tài nguyên cho dịch vụ ảo hóa với mục tiêu

6
6
7
7
9
10
10
11
12
13
13
14
15
15
17
19
19
20
21
23
24
24

tối thiểu số lượng máy vật lý được dùng. . . . . . . . . . . . . .
Mô hình cung cấp tài nguyên cho dịch vụ ảo hóa với mục tiêu

25

tối thiểu năng lượng tiêu thụ . . . . . . . . . . . . . . . . . . . .

26

1.7.3

viii


1.7.4

Mô hình cung cấp tài nguyên cho dịch vụ ảo hóa với mục tiêu

cân bằng tải . . . . . . . . . . . . . . . . .
1.8 Mục tiêu và nội dung của luận án . . . . . . . . .
1.8.1 Mục tiêu nghiên cứu của luận án . . . . .
1.8.2 Nội dung nghiên cứu của luận án . . . . .
1.9 Tiểu kết Chương 1 . . . . . . . . . . . . . . . . .
Chương 2. Cung cấp tài nguyên cho dịch vụ ảo hóa

. .
. .
. .
. .
. .
từ

. . .
. . .
. . .
. . .
. . .
nền

. . .
. . .
. . .
. . .
. . .
tảng

chủ chia sẻ đồng nhất
2.1 Mô hình tài nguyên và nhu cầu tài nguyên . . . . . . . . . . . .
2.2 Bài toán MDRAVS . . . . . . . . . . . . . . . . . . . . . . . . .
2.2.1 Phát biểu bài toán MDRAVS . . . . . . . . . . . . . . .
2.2.2 Độ phức tạp bài toán MDRAVS . . . . . . . . . . . . . .
2.3 Đề xuất giải pháp cho bài toán MDRAVS . . . . . . . . . . . .
2.3.1 Giải pháp áp dụng các thuật toán First Fit và Best Fit .
2.3.2 Giải pháp dựa trên thuận toán Tối ưu đàn kiến . . . . .
2.3.2.1 Giới thiệu thuận toán Tối ưu đàn kiến . . . . .
2.3.2.2 Đề xuất thuật toán MDRAVS-MMAS . . . . .
2.3.3 Thực nghiệm và nhận xét . . . . . . . . . . . . . . . . .
2.3.3.1 Phương pháp mô phỏng . . . . . . . . . . . . .
2.3.3.2 Nhận xét kết quả thực nghiệm các thuật toán

. . . .
. . . .
. . . .
. . . .
. . . .
máy
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
First

27
28
28
28
30
32
32
33
33
35
36
36
39
39
41
46
46

Fit*, Best Fit* . . . . . . . . . . . . . . . . . . . . . .
Nhận xét kết quả thực nghiệm các thuật toán MDRAVS-

47

MMAS, First Fit* và Best Fit* . . . . . . . . . . . . .
2.4 Tiểu kết Chương 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Chương 3. Cung cấp tài nguyên cho dịch vụ ảo hóa từ nền tảng máy

49
52

2.3.3.3

chủ
3.1
3.2
3.3
3.4

chia sẻ không đồng nhất
54
Mô hình tài nguyên và nhu cầu tài nguyên . . . . . . . . . . . . . . . . 54
Mô hình năng lượng tiêu thụ . . . . . . . . . . . . . . . . . . . . . . . . 57
Phát biểu bài toán ECRAVS . . . . . . . . . . . . . . . . . . . . . . . . 58
Đề xuất giải pháp cho bài toán ECRAVS . . . . . . . . . . . . . . . . . 59
3.4.1 Giải pháp dựa trên thuật toán Tối ưu bầy đàn . . . . . . . . . . 59
3.4.1.1 Giới thiệu thuật toán Tối ưu bầy đàn . . . . . . . . . . 59
3.4.1.2 Đề xuất thuật toán ECRAVS-PSO . . . . . . . . . . . 60
3.4.2 Giải pháp dựa trên thuật toán Mô phỏng luyện kim . . . . . . . 67
3.4.2.1 Giới thiệu thuật toán Mô phỏng luyện kim . . . . . . . 67
3.4.2.2 Đề xuất thuật toán ECRAVS-SA . . . . . . . . . . . . 68
3.4.3 Thực nghiệm và nhận xét . . . . . . . . . . . . . . . . . . . . . 72
3.4.3.1 Phương pháp mô phỏng . . . . . . . . . . . . . . . . . 72
3.4.3.2 Đặc điểm của các thuật toán FFD, ECRAVS-PSO và
ECRAVS-SA . . . . . . . . . . . . . . . . . . . . . . .
ix

74


3.4.3.3 Kết quả và nhận xét . . . . . . . . . . . . . . . . . . .
3.5 Tiểu kết Chương 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Chương 4. Cung cấp tài nguyên đa mục tiêu cho dịch vụ ảo hóa từ
nền
4.1
4.2
4.3

tảng máy chủ chia sẻ không đồng nhất
Mô hình cân bằng tải . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Phát biểu bài toán MORA . . . . . . . . . . . . . . . . . . . . . . . . .
Giải pháp cho bài toán MORA . . . . . . . . . . . . . . . . . . . . . .
4.3.1 Phương pháp tối ưu Pareto . . . . . . . . . . . . . . . . . . . .
4.3.2 Đề xuất thuật toán MORA-ACS . . . . . . . . . . . . . . . . .
4.3.3 Thực nghiệm và nhận xét . . . . . . . . . . . . . . . . . . . . .
4.3.3.1 Phương pháp mô phỏng . . . . . . . . . . . . . . . . .
4.3.3.2 Đặc điểm của thuật toán Round Robin và MORA-ACS
4.3.3.3 Kết quả thực nghiệm và nhận xét . . . . . . . . . . . .
4.4 Tiểu kết Chương 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Kết luận và hướng phát triển
Danh mục các công trình của tác giả liên quan đến luận án
Tài liệu tham khảo

x

76
78
80
80
82
84
84
85
90
90
92
93
95
96
99
100


DANH MỤC BẢNG, BIỂU

1.1

Đặc tính của một số công cụ mô phỏng hệ thống tính toán đám mây
17

2.1

tiêu biểu. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
số lượng máy vật lý đã sử dụng khi thực hiện các thuật toán First Fit*,

2.2
2.3

Best Fit*. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Thời gian thực hiện các thuật toán First Fit*, Best Fit*. . . . . . . . .
số lượng máy vật lý đã sử dụng khi thực hiện thuật toán MDRAVS-

47
48
50

2.4

MMAS và các thuật toán khác. . . . . . . . . . . . . . . . . . . . . . .
Thời gian thực hiện của thuật toán MDRAVS-MMAS và các thuật toán

3.1
3.2
3.3
3.4

khác. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Đặc tính cấu hình tài nguyên của các loại máy vật lý. . . . . . . . . . .
Đặc tính nhu cầu tài nguyên CPU và RAM của các loại máy ảo. . . . .
Đặc tính nhu cầu tài nguyên BW và DISK của các loại máy ảo. . . . .
Kết quả thực nghiệm của các thuật toán ECRAVS-PSO, ECRAVS-SA

51
73
73
73
76

4.1

và FFD. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Năng lượng tiêu thụ và độ lệch chuẩn của các thuật toán MORA-ACS
và Round Robin.

93

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

xi


DANH MỤC HÌNH VẼ

1.1
1.2
1.3
1.4
1.5

Kiến trúc ảo hóa máy chủ [107]. . . . . . . . . . . . . . . . . . . .
Kiến trúc ảo hóa tích hợp [27]. . . . . . . . . . . . . . . . . . . .
Các thành phần của công cụ mô phỏng CloudSim [14]. . . . . . .
Mô hình cung cấp tài nguyên trong hệ thống tính toán đám mây.
Mô hình cung cấp tài nguyên cho dịch vụ ảo hóa từ nền tảng máy

. . .
. . .
. . .
. . .
chủ

14
15
18
20
24

2.1

chia sẻ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Mục tiêu tối thiểu số lượng máy vật lý được dùng khi cung cấp tài

2.2
2.3

nguyên cho dịch vụ ảo hóa. . . . . . . . . . . . . . . . . . . . . . . . .
Cấu trúc tập tin dữ liệu thực nghiệm. . . . . . . . . . . . . . . . . . .
Đồ thị biểu diễn số lượng máy vật lý đã sử dụng khi thực hiện các thuật

36
47

2.4
2.5

toán First Fit*, Best Fit*. . . . . . . . . . . . . . . . . . . . . . . . . . 48
Đồ thị biểu diễn thời gian thực hiện các thuật toán First Fit*, Best Fit*. 49
Đồ thị biểu diễn số lượng máy vật lý đã sử dụng khi thực hiện thuật

2.6

toán MDRAVS-MMAS và các thuật toán khác. . . . . . . . . . . . . .
Đồ thị biểu diễn thời gian thực hiện thuật toán MDRAVS-MMAS và

3.1
3.2
3.3

các thuật toán khác . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
Tài nguyên của 2 máy vật lý và nhu cầu tài nguyên của 1 dịch vụ ảo hóa. 56
Cấu trúc của particle. . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
Đồ thị biểu diễn thời gian thực hiện các thuật toán ECRAVS-PSO,
76

3.4

ECRAVS-SA và FFD. . . . . . . . . . . . . . . . . . . . . . . . . . . .
Đồ thị biểu diễn năng lượng tiêu thụ khi thực hiện các thuật toán

4.1
4.2

ECRAVS-PSO, ECRAVS-SA và FFD. . . . . . . . . . . . . . . . . . .
Mục tiêu cân bằng tải khi cung cấp tài nguyên cho dịch vụ ảo hóa. . .
Biểu diễn các giải pháp trong không gian giải pháp của bài toán tối ưu

77
83
84

4.3

02 mục tiêu. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Biểu diễn đường cong Pareto trong không gian giải pháp của bài toán

85

4.4

tối ưu 02 mục tiêu. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Đồ thị biểu diễn năng lượng tiêu thụ khi thực hiện thuật toán MORA-

94

4.5

ACS và Round Robin. . . . . . . . . . . . . . . . . . . . . . . . . . . .
Đồ thị biểu diễn độ lệch chuẩn khi thực hiện thuật toán MORA-ACS
và Round Robin.

94

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

xii

51


MỞ ĐẦU
1. Lý do chọn đề tài
Mô hình tính toán đám mây (Cloud Computing) phát triển dựa trên kết quả việc
thích ứng của Internet cũng như những phát triển công nghệ trong các lĩnh vực: tính
toán lưới (Grid Computing), tính toán cụm (Cluster Computing), tính toán tiện ích
(Utility Computing) và tính toán tự động (Automatic Computing). Mục đích của các
hệ thống này là tạo ra một nền tảng tính toán hiệu quả, sử dụng chung các tài nguyên
máy tính được tích hợp thông qua các thiết bị phần cứng, mạng và phần mềm nhằm
nâng cao hiệu suất, khả năng chịu lỗi, đảm bảo tính sẵn sàng về tài nguyên từ các
máy tính đơn lẻ.
Bên cạnh đó, sự phát triển công nghệ ảo hóa (Virtualization Technology) giúp cho
quá trình triển khai hệ thống tính toán đám mây trở nên dễ dàng. Trong kiến trúc
phân tầng của công nghệ ảo hóa, tầng ảo hóa có khả năng phân chia hoặc kết hợp tài
nguyên của nhiều máy chủ vật lý ở tầng bên dưới thành các máy ảo để cung cấp cho
các nhu cầu khác nhau trong đám mây. Hệ thống gồm nhiều máy vật lý được kết nối
với nhau qua các thiết bị mạng để chia sẻ tài nguyên, nhằm cung cấp cho dịch vụ ảo
hóa được gọi là nền tảng máy chủ chia sẻ (Shared Hosting Platform).
Những đặc điểm của hệ thống tính toán đám mây, như: tính linh hoạt, khả năng
truy cập mạng diện rộng, khả năng tổng hợp tài nguyên, dịch vụ cung cấp tự động
theo nhu cầu và có khả năng đo lường,... đã đem lại nhiều lợi ích cho người dùng và
thuận lợi cho nhà cung cấp dịch vụ trên đám mây. Tuy nhiên, những thách thức trong
việc tối ưu hệ thống cần được quan tâm nghiên cứu, như: tiết kiệm tài nguyên và năng
lượng tiêu thụ trong cung cấp tài nguyên, tối ưu các mô hình chi phí, khả năng cân
bằng tải,... là những chủ đề nghiên cứu quan trọng. Đặc biệt, nhu cầu sử dụng các
máy vật lý (Physical Machine) để cung cấp tài nguyên cho dịch vụ ảo hóa (Virtual
Service) tại các trung tâm dữ liệu (Data Center) ngày càng tăng. Điều này, dẫn đến
việc sử dụng tài nguyên các máy vật lý trong các trung tâm dữ liệu tăng, làm tăng
năng lượng tiêu thụ và lượng khí thải CO2 , có thể trở thành mối đe dọa đối với môi
trường sống.
Vì thế, tối ưu trong cung cấp tài nguyên máy vật lý cho dịch vụ ảo hóa từ nền
tảng máy chủ chia sẻ tại các trung tâm dữ liệu, đáp ứng nhu cầu về chất lượng dịch

1


vụ, khả năng cân bằng tải và giảm thiểu tối đa sử dụng tài nguyên vật lý, năng lượng
tiêu thụ là cần thiết. Đó cũng là mục đích chính của đề tài: "Cung cấp tài nguyên
cho dịch vụ ảo hóa dựa trên nền tảng máy chủ chia sẻ trong tính toán
đám mây ".
Hơn nữa, cung cấp tài nguyên cho dịch vụ ảo hóa là bài toán tối ưu tổ hợp
(Combinatorial Optimization Problem), thuộc lớp bài toán NP-đầy đủ. Các thuật
toán để giải lớp bài toán này được chia thành 02 nhóm [53]: các thuật toán chính xác
(Exact Algorithms) và các thuật toán xấp xỉ (Approximation Algorithms). Các thuật
toán chính xác có thể tìm được lời giải tối ưu nhưng thời gian tính toán rất lớn. Ngược
lại, các thuật toán xấp xỉ có thể thực hiện trong thời gian cho chép và lời giải đạt
gần tối ưu. Hiện nay, các thuật toán xấp xỉ người ta thường dùng các tiếp cận: (1)
tìm kiếm heuristic để tìm lời giải đủ tốt; (2) tìm kiếm cục bộ để tìm lời giải tối ưu
địa phương; (3) tìm lời giải gần đúng nhờ các thuật toán mô phỏng tự nhiên (Meta
heuristic). Trong đó, cách tiếp cận (1) và (2) cho lời giải nhanh nhưng không cải thiện
thêm mục tiêu tối ưu. Vì thế, luận án nghiên cứu cách tiếp cận (3), đề xuất các thuật
toán Meta heuristic để giải bài toán đưa ra trong luận án.

2. Đối tượng và phạm vi nghiên cứu
Cung cấp tài nguyên trong hệ thống tính toán đám mây có thể được phân thành
03 lớp bài toán: bài toán cung cấp ứng dụng, bài toán cung cấp máy ảo và bài toán
cung cấp tài nguyên vật lý (máy vật lý) cho dịch vụ ảo hóa để tạo ra các máy ảo cung
cấp cho đám mây. Các lớp bài toán này liên quan đến các đối tượng sử dụng các dịch
vụ trên đám mây như: người dùng, nhà cung cấp dịch vụ SaaS, nhà cung cấp dịch vụ
PaaS và nhà cung cấp cấp dịch vụ IaaS.
Trong phạm vi và đối tượng nghiên cứu, luận án tập trung nghiên cứu mô hình
cung cấp tài nguyên máy vật lý cho dịch vụ ảo hóa để tạo ra các máy ảo, đáp ứng nhu
cầu của nhà cung cấp dịch vụ IaaS. Nghiên cứu các thuật toán Meta Heuristic, như:
thuật toán Tối ưu bầy đàn, thuật toán Tối ưu đàn kiến và thuật toán Mô phỏng luyện
kim nhằm đề xuất các thuật toán để giải bài toán cung cấp tài nguyên cho dịch vụ ảo
hóa.

3. Phương pháp nghiên cứu
3.1 Phương pháp nghiên cứu tài liệu
- Tìm kiếm, thu thập về các công trình nghiên cứu đã được công bố trong các tạp
chí, kỷ yếu hội thảo, báo cáo khoa học, sách đã xuất bản về lĩnh vực cung cấp tài
2


nguyên trong hệ thống tính toán đám mây;
- Trên cơ sở các tài liệu sưu tâp, thực hiện phân tích, tổng hợp và đề xuất bài toán
nghiên cứu. Đồng thời, dựa trên các tài liệu về thuật toán Tối ưu bầy đàn, Tối ưu đàn
kiến và Mô phỏng luyện kim đề xuất các thuật toán cung cấp tài nguyên cho dịch vụ
ảo hóa từ nền tảng máy chủ chia sẻ trong tính toán đám mây.

3.2 Phương pháp thực nghiệm khoa học
- Tạo và lựa chọn dữ liệu thực nghiệm;
- Cài đặt và đánh giá các thuật toán đề xuất trên tập dữ liệu thực nghiệm. Sử
dụng công cụ mô phỏng hệ thống tính toán đám mây CloudSim để triển khai thử
nghiệm, phân tích và đánh giá hiệu suất của các thuật toán đề xuất.

4. Ý nghĩa thực tiễn
- Xây dựng mô hình cung cấp tài nguyên vật lý cho dịch vụ ảo hóa từ nền tảng
máy chủ chia sẻ để tạo ra các máy ảo và đề xuất các thuật toán có độ phức tạp trong
thời gian đa thức để giải, góp phần nâng cao hiệu suất cung cấp tài nguyên của lớp
dịch vụ IaaS trong hệ thống tính toán đám mây.
- Luận án có thể được sử dụng làm tài liệu tham khảo cho sinh viên, người đọc
quan tâm về vấn đề cung cấp tài nguyên cho dịch vụ ảo hóa và nghiên cứu các phương
pháp Meta heuristic, phương pháp xấp xỉ để giải các bài toán tối ưu.

5. Đóng góp chính của luận án
(1) Dựa trên mô hình hệ thống cung cấp tài nguyên cho dịch vụ ảo hóa của Mark
Stillwell [100] và đặc tính tài nguyên của máy vật lý, nhu cầu tài nguyên của dịch vụ
ảo hóa từ [99] trong nền tảng máy chủ chia sẻ đồng nhất để đề xuất mô hình toán
học cho vấn đề cung cấp tài nguyên cho dịch vụ ảo hóa từ nền tảng máy chủ chia sẻ
đồng nhất (Homogeneous Shared Hosting Platform) với mục tiêu tối thiểu số lượng
máy vật lý được dùng. Áp dụng thuật toán Hệ kiến Max-Min (Max-Min Ant SystemMMAS)[105], đề xuất thuật toán MDRAVS-MMAS để ước lượng và so sánh với thuật
toán Firt Fit, Best Fit [63], [72] thông qua 02 thước đo: số lượng máy vật lý cần dùng
và thời gian thực hiện thuật toán. Kết quả thực nghiệm nhận thấy rằng: thuật toán đề
xuất MDRAVS-MMAS cho giá trị hàm mục tiêu tốt hơn (tức là, số lượng máy vật lý
cần dùng ít hơn) thuật toán First Fit, Best Fit. Độ phức tạp của thuật toán đề xuất
thực hiện trong thời gian đa thức.

3


(2) Dựa trên mô hình hệ thống cung cấp tài nguyên cho dịch vụ ảo hóa của Mark
Stillwell [100], đặc tính tài nguyên của máy vật lý và nhu cầu tài nguyên của dịch
vụ ảo hóa từ [101] trong nền tảng máy chủ chia sẻ không đồng nhất cùng với việc
cải tiến mô hình năng lượng tiêu thụ của Eugen Feller [36] để đề xuất mô hình toán
học cho vấn đề cung cấp tài nguyên từ nền tảng máy chủ chia sẻ không đồng nhất
(Heterogeneous shared hosting platform) với mục tiêu tối thiểu năng lượng tiêu thụ của
hệ thống. Cải tiến thuật toán Tối ưu bầy đàn (Particle Swarm Optimization-PSO)[31]
để đề xuất thuật toán ECRAVS-PSO và áp dụng thuật toán Mô phỏng luyện kim
(Simulated Annealing-SA) [59] để đề xuất thuật toán ECRAVS-SA để giải bài toán.
Các thuật toán đề xuất được so sánh với thuật toán với thuật toán Firt Fit Decreasing
(FFD) [101] thông qua 02 thước đo: năng lượng tiêu thụ và thời gian thực hiện thuật
toán. Kết quả thực nghiệm nhận thấy rằng: 02 thuật toán đề xuất ECRAVS-PSO và
ECRAVS-SA cho giá trị hàm mục tiêu tốt hơn (tức là, năng lượng tiêu thụ ít hơn)
thuật toán FFD. Độ phức tạp của các thuật toán thực hiện trong thời gian đa thức.
(3) Trên cơ sở mô hình hệ thống, mô hình tài nguyên và nhu cầu tài nguyên của
bài toán cung cấp tài nguyên từ nền tảng máy chủ chia sẻ không đồng nhất (trong
đóng góp (2)), xây dựng mô hình toán học cho việc cung cấp tài nguyên đa mục tiêu
cho dịch vụ ảo hóa, gồm: mục tiêu cân bằng tải trên các máy vật lý và mục tiêu tối
thiểu năng lượng tiêu thụ của hệ thống. Áp dụng thuật toán Hệ đàn kiến (Ant Colony
System - ACS)[28] để đề xuất thuật toán MORA-ACS nhằm ước lượng bài toán và so
sánh với thuật toán Round Robin [79] thông qua 03 thước đo: năng lượng tiêu thụ, độ
lệch chuẩn và thời gian thực hiện thuật toán. Kết quả thực nghiệm nhận thấy rằng:
thuật toán đề xuất MORA-ACS cho giá trị hàm mục tiêu tốt hơn (tức là, năng lượng
tiêu thụ ít hơn và khả năng cân bằng tải tốt hơn) thuật toán Round Robin. Độ phức
tạp của thuật toán thực hiện trong thời gian đa thức.

7. Bố cục luận án
Ngoài phần mở đầu và kết luận, nội dung của luận án được tổ chức gồm có 04
chương với cấu trúc như sau:
- Chương 1: Tổng quan và đề xuất bài toán cung cấp tài nguyên cho dịch vụ ảo
hóa. Chương này trình bày kết quả nghiên cứu tổng quan về các vấn đề nghiên cứu
trong luận án. Cụ thể: tìm hiểu các khái niệm, đặc điểm, yêu cầu, công nghệ và các
mô hình trong hệ thống tính toán đám mây. Thông qua việc phân tích, đánh giá các
công trình liên quan về lĩnh vực cung cấp tài nguyên trong đám mây, nêu ra một số
vấn đề tồn tại và đề xuất nội dung nghiên cứu. Bên cạnh đó, nội dung của chương còn

4


trình bày kết quả đánh giá các công cụ mô phỏng hệ thống tính toán đám mây thông
dụng hiện nay. Qua đó, nhận thấy CloudSim là môi trường phù hợp để triển khai thực
nghiệm mô phỏng nhằm đánh giá thuật toán giải các bài toán trong phạm vi nghiên
cứu của luận án.
- Chương 2: Cung cấp tài nguyên cho dịch vụ ảo hóa từ nền tảng máy chủ chia
sẻ đồng nhất. Dựa trên mô hình hệ thống cung cấp tài nguyên cho dịch vụ ảo hóa do
Mark Stillwell [100] và đặc tính tài nguyên của máy vật lý, nhu cầu tài nguyên của
dịch vụ ảo hóa từ [99] trong nền tảng máy chủ chia sẻ đồng nhất. Trên cơ sở đó, đề
xuất mô hình toán học của việc cung cấp tài nguyên đa chiều cho dịch vụ ảo hóa từ
nền tảng máy chủ chia sẻ đồng nhất với mục tiêu tối thiểu số lượng máy vật lý cần
dùng. Áp dụng thuật toán First Fit, Best Fit và đề xuất thuật toán MDRAVS-MMAS
để giải và đánh giá thông qua nhiều kịch bản thực nghiệm trên dữ liệu được tạo ra
bằng phương pháp xác suất ngẫu nhiên.
- Chương 3: Cung cấp tài nguyên cho dịch vụ ảo hóa từ nền tảng máy chủ chia
sẻ không đồng nhất. Dựa trên mô hình hệ thống cung cấp tài nguyên cho dịch vụ ảo
hóa do Mark Stillwell [100] đề xuất và đặc tính tài nguyên của máy vật lý, nhu cầu
tài nguyên của dịch vụ ảo hóa từ [101] trong nền tảng máy chủ chia sẻ không đồng
nhất của. Qua đó, xây dựng mô hình bài toán cung cấp tài nguyên đa chiều cho dịch
vụ ảo hóa từ nền tảng máy chủ chia sẻ không đồng nhất với mục tiêu tối thiểu năng
lượng tiêu thụ của hệ thống. Đề xuất thuật toán ECRAVS-PSO và ECRAVS-SA để
giải. Các thuật toán được thực thi trên môi trường mô phỏng đám mây CloudSim với
dữ liệu thực nghiệm được thu thập từ các đám mây thực tế.
- Chương 4: Cung cấp tài nguyên đa mục tiêu cho dịch vụ ảo hóa từ nền tảng máy
chủ chia sẻ không đồng nhất. Dựa trên mô hình hệ thống, đặc tính tài nguyên và nhu
cầu tài nguyên được trình bày ở Chương 3, chương này đề xuất mô hình bài toán cung
cấp tài nguyên đa mục tiêu cho dịch vụ ảo hóa từ nền tảng máy chủ chia sẻ không
đồng nhất. Các mục tiêu tối ưu gồm: mục tiêu tối thiểu năng lượng tiêu thụ và mục
tiêu cân bằng tải trên các máy vật lý. Đề xuất thuật toán MORA-ACS để giải và đánh
giá trên môi trường mô phỏng đám mây CloudSim với dữ liệu thực nghiệm được thu
thập từ các đám mây thực tế.
Các kết quả của luận án được công bố trong 07 công trình khoa học được đăng
trong các hội nghị và tạp chí chuyên ngành trong và ngoài nước. Trong đó, có 01 bài
đăng trong kỷ yếu hội thảo quốc gia, 02 bài đăng trong các tạp chí chuyên ngành
trong nước, 02 bài đăng trong tạp chí quốc tế và 02 bài đăng tại các hội thảo quốc tế
chuyên ngành.

5


Chương 1.
TỔNG QUAN VÀ ĐỀ XUẤT BÀI TOÁN CUNG
CẤP TÀI NGUYÊN CHO DỊCH VỤ ẢO HÓA
Chương này trình bày kết quả nghiên cứu tổng quan về hệ thống tính toán đám
mây, các mô hình áp dụng trong hệ thống tính toán đám mây, công nghệ ảo hóa và
máy ảo, các đặc điểm cũng như một số thách thức khi triển khai đám mây. Thông
qua việc phân tích, đánh giá các công trình liên quan về lĩnh vực cung cấp tài nguyên
trong đám mây, nêu ra một số vấn đề tồn tại của mô hình cung cấp tài nguyên cho
dịch vụ ảo hóa từ nền tảng máy chủ chia sẻ. Từ đó, đề xuất nội dung cải tiến mô hình
cũng như bài toán nghiên cứu. Bên cạnh đó, nội dung của chương còn trình bày kết
quả đánh giá các công cụ mô phỏng hệ thống tính toán đám mây thông dụng hiện nay.
Nhận thấy rằng, CloudSim là công cụ phù hợp để triển khai thực nghiệm mô phỏng
và đánh giá các thuật toán đề xuất trong luận án.

1.1. Hệ thống tính toán đám mây
Hệ thống tính toán đám mây (Cloud Computing) phát triển dựa trên kết quả việc
thích ứng của Internet cũng như những tiến bộ kỹ thuật, công nghệ trong lĩnh vực
ảo hóa, tính toán lưới, tính toán tiện ích, tính toán cụm và tính toán tự động. Theo
Rajkumar Buyya [117]: đám mây là một loại hệ thống tính toán song song và phân
tán, gồm một tập các máy tính thực được kết nối với nhau và các máy ảo để cung cấp
động tài nguyên tính toán hợp nhất dựa trên thỏa thuận đàm phán về cung cấp dịch
vụ giữa nhà cung cấp và người dùng.
Có nhiều định nghĩa về mô hình của hệ thống tính toán đám mây được đề xuất
trong những năm qua. Tuy nhiên, đến nay vẫn chưa có định nghĩa chuẩn, trong đó
Peter Mell và Tim Grance [73] định nghĩa mô hình hệ thống tính toán đám mây như
sau: một mô hình cho phép việc truy cập mạng một cách rộng rãi, tiện lợi và theo nhu
cầu nhằm chia sẻ tài nguyên tính toán (ví dụ: mạng, máy chủ, thiết bị lưu trữ, các ứng
dụng và dịch vụ) và có thể được cấp phát nhanh với khả năng tối thiểu các nỗ lực quản
lý, cung cấp dịch vụ. Mô hình đám mây gồm có 5 đặc điểm chính, 3 mô hình dịch vụ
và 4 mô hình triển khai.

6


1.1.1. Đặc điểm của hệ thống tính toán đám mây
Theo Peter Mell và Tim Grance [73], 05 đặc điểm chính của đám mây, gồm: truy
cập mạng diện rộng, dịch vụ cung cấp tự động theo nhu cầu, tổng hợp tài nguyên,
tính co dãn nhanh và dịch vụ có thể đo lường.
- Truy cập mạng diện rộng: các dịch vụ trong hệ thống tính toán đám mây có
sẵn trên Internet. Do đó, nó có thể truy cập từ bất kỳ thiết bị nối mạng nào, như:
máy tính xách tay, điện thoại di động, máy tính để bàn,...
- Dịch vụ cung cấp tự động theo nhu cầu: người dùng có thể thuê tài nguyên
từ các nhà cung cấp đám mây. Điều này có thể thực hiện bằng việc sử dụng giao diện
lập trình ứng dụng (Applicaton Programming Interface - API) mà nhà cung cấp đám
mây cung cấp thông qua Internet.
- Tổng hợp tài nguyên: tài nguyên đám mây được cung cấp bởi các nhà cung
cấp đám mây, được lưu trữ trên cơ sở hạ tầng đám mây và có khả năng chia sẻ giữa
nhiều người dùng. Cấu trúc bên trong của cơ sở hạ tầng cung cấp dịch vụ đám mây là
trong suốt đối với người dùng. Do đó, người dùng không thể và không cần biết chính
xác nơi mà các tài nguyên được cung cấp.
- Tính linh hoạt: người dùng có thể được cấp phát tự động tài nguyên (tài
nguyên tính toán hay tài nguyên lưu trữ) bất cứ khi nào cần thiết. Các yêu cầu cấp
phát được gửi đến nhà cung cấp đám mây thông qua việc sử dụng giao diện lập trình
ứng dụng được cung cấp từ nhà cung cấp dịch vụ đám mây.
- Dịch vụ có khả năng đo lường: nhà cung cấp đám mây có thể theo dõi người
dùng sử dụng tài nguyên và tính phí khi người dùng sử dụng tài nguyên dựa trên mô
hình kinh doanh pay-as-you-go.

1.1.2. Mô hình dịch vụ của hệ thống tính toán đám mây
Hiện nay, hệ thống tính toán đám mây có 03 mô hình dịch vụ [3], đó là: cơ sở hạ
tầng như một dịch vụ (Infrastructure as a Service - IaaS), nền tảng như một dịch vụ
(Platform as a Service-PaaS) và phần mềm như một dịch vụ (Software as a ServiceSaaS).
Ngoài 03 mô hình dịch vụ nêu trên, một số nhà chuyên môn cũng cho rằng phần
cứng như một dịch vụ (Hardware as a Service-HaaS) là một mô hình tồn tại trước khi
hệ thống tính toán đám mây ra đời cũng được xem như là một mô hình dịch vụ của
hệ thống tính toán đám mây.

7


- Phần cứng như một dịch vụ (Hardware as a Service - HaaS): mô hình này
cho phép người dùng thuê tài nguyên phần cứng (tài nguyên tính toán, lưu trữ, máy
tính xách tay, màn hình, máy tính để bàn,...) theo nhu cầu. Mô hình này giúp cho
người dùng cá nhân hoặc doanh nghiệp không muốn tốn chi phí đầu tư phần cứng
cho mình. Điều này, có lợi cho việc khởi nghiệp mà không muốn đầu tư lớn về chi phí
phần cứng. Một số nhà cung cấp dịch vụ HaaS là Grenke [43], Hetzner [47]. Ngoài ra,
mô hình dịch vụ HaaS có thể cung cấp các phòng thí nghiệm khoa học cho phép các
nhà nghiên cứu sử dụng tài nguyên phần cứng. Ví dụ, một số mô hình dịch vụ HaaS
phổ biến hiện nay để cung cấp cho mục đích thực hiện các thử nghiệm khoa học, như:
hệ thống Grid’5000 [4] tại Pháp hay Trung tâm tính toán khoa học nghiên cứu năng
lượng quốc gia (National Energy Research Scientific Computing Center) [76] ở Mỹ.
- Cơ sở hạ tầng như một dịch vụ (Infrastructure as a Service - IaaS): mô hình
đám mây IaaS cho phép người dùng thuê và quản lý các nguồn tài nguyên ảo, như:
máy chủ ảo, thiết bị lưu trữ ảo, mạng ảo,... thông qua Internet. Người dùng có thể
cài đặt và cấu hình các phần mềm, như: hệ điều hành, chương trình ứng dụng,... mà
không cần lo lắng về lớp hệ thống đám mây bên dưới. Tức là, người dùng có thể dễ
dàng sử dụng máy chủ được cung cấp dưới dạng các máy ảo (Virtual Machine - VM)
mà không cần quan tâm các máy vật lý (Physical Machine - PM) đang chạy. Một số hệ
thống tính toán đám mây IaaS thương mại nổi tiếng, như: Amazon Elastic Compute
Cloud [93], Google Compute Engine [65],... Ngoài ra, một số hệ thống tính toán đám
mây IaaS mã nguồn mở cũng được phát triển trong thời gian qua, tạo điều kiện cho
việc tạo ra các đám mây, như: CloudStack [51], Eucalyptus [49], Globus Nimbus [20],...
- Nền tảng như một dịch vụ (Platform as a Service - PaaS): mô hình đám mây
PaaS cung cấp cho người dùng các dịch vụ nền tảng để triển khai các ứng dụng, như:
servlet, các dịch vụ web, middleware, database,... Điều này cho phép người dùng tập
trung vào phát triển ứng dụng và giải phóng họ khỏi gánh nặng của việc triển khai,
quản lý và mở rộng quy mô của các môi trường run-time. Một số đám mây PaaS mã
nguồn mở tiêu biểu: AppScale [19], ConPaaS [85],... Các đám mây PaaS thương mại
tiêu biểu: RedHat OpenShift [1], Windows Azure [25],...
- Phần mềm như một dịch vụ (Software as a Service - SaaS): mô hình đám
mây PaaS cho phép người dùng triển khai các ứng dụng tùy biến, những đám mây
SaaS thường cung cấp một tập các ứng dụng kinh doanh đã được cài đặt sẵn trên các
máy chủ, như: các ứng dụng kế toán, ứng dụng quản lý quan hệ khách hàng,... Các
ứng dụng này được quản lý bởi hệ thống của nhà cung cấp dịch vụ đám mây thay
cho người dùng. Ứng dụng có thể được truy cập qua Internet bằng cách sử dụng trình

8


duyệt Web hoặc một phần mềm có khả năng truy cập vào giao diện lập trình ứng
dụng của đám mây PaaS. Một số ví dụ về dịch vụ đám mây SaaS như: Google Apps
[65], iClound [45],...

1.1.3. Mô hình triển khai của hệ thống tính toán đám mây
Trong tài liệu [3], các tác giả phân loại dựa vào tiêu chí triển khai, gồm có 04 đám
mây sau đây: đám mây riêng (Private Cloud), đám mây công cộng (Public Cloud),
đám mây cộng đồng (Community Cloud) và đám mây lai (Hybrid Cloud).
- Đám mây riêng (Private Cloud): các đám mây riêng là những hệ thống tính
toán đám mây được triển khai trên cơ sở hạ tầng tính toán và lưu trữ thuộc các trung
tâm dữ liệu riêng lẻ. Người sử dụng các đám mây này thường được giới hạn trong
phạm vi của tổ chức. Các đám mây riêng nổi tiếng hiện nay, như: các đám mây riêng
của công ty IBM, VMware vCloud [113] và các đám mây riêng dựa trên công nghệ mã
nguồn mở như: OpenStack [95] và CloudStack [51].
- Đám mây công cộng (Public Cloud): các đám mây công cộng là những hệ
thống tính toán đám mây thương mại có sẵn cho tất cả mọi người trên Internet. Các
đám mây này thường được điều hành bởi một nhà cung cấp đám mây công cộng và
cho phép người dùng dễ dàng sử dụng các dịch vụ mà không cần phải có cơ sở hạ
tầng riêng. Qua đó, người dùng phải trả phí cho những gì họ sử dụng. Các nhà cung
cấp đám mây công cộng thông dụng: Amazon Web Services [77], Google Apps [65],
Microsoft Azure [8],...
- Đám mây cộng đồng (Community Cloud): các đám mây cộng đồng là những
hệ thống tính toán đám mây cho phép chia sẻ cơ sở hạ tầng, như: hạ tầng tính toán,
hạ tầng lưu trữ,... giữa các cá nhân hoặc các tổ chức khác nhau có chung lợi ích. Việc
truy cập đám mây cộng đồng thường được giới hạn giữa các thành viên trong cộng
đồng. Ví dụ, một đám mây cộng đồng chăm sóc sức khỏe có thể được sử dụng bởi các
bệnh viện để trao đổi thông tin y tế, bệnh nhân. Hoặc, những đám mây cộng đồng
được thiết lập giữa các tổ chức khoa học để thực hiện các dự án, chia sẻ dữ liệu và
trao đổi kết quả nghiên cứu mới nhất.
- Đám mây lai (Hybrid Cloud): các đám mây lai là những hệ thống tính toán
đám mây cho phép các tổ chức tận dụng cơ sở hạ tầng từ các đám mây riêng, công
cộng và cộng đồng. Chẳng hạn, một hệ thống tính toán đám mây lai cho phép giảm
tải dữ liệu ít nhạy cảm bằng cách chia sẻ nó các đám mây công cộng trong khi vẫn
giữ dữ liệu nhạy cảm trên đám mây riêng của nó. Ngoài ra, những đám mây lai cho
phép các tổ chức sử dụng cơ sở hạ tầng riêng của mình trong giai đoạn tải dịch vụ
9


thấp và mở rộng dịch vụ của họ trong giai đoạn tải cao bằng cách truy xuất vào đám
mây công cộng.

1.2. Yêu cầu và thách thức của hệ thống tính toán đám mây
1.2.1. Yêu cầu của một hệ thống tính toán đám mây
- Mục đích của hệ thống (System focus): mỗi hệ thống tính toán đám mây
được thiết kế để tập trung vào một số mục đích riêng. Chẳng hạn, Amazon Elastic
Compute Cloud [93] được thiết kế để cung cấp các cơ sở hạ tầng tốt nhất cho các hệ
thống tính toán đám mây với tất cả các tính năng có sẵn cho người dùng. Hệ thống
GENI tập trung vào việc cung cấp một phòng thí nghiệm ảo để khám phá hệ thống
Internet tương lai trong đám mây. Globus Nimbus tập trung vào việc mở rộng và thử
nghiệm một số khả năng mới, chẳng hạn thử nghiệm mô hình tài nguyên như là dịch
vụ (Resource as a Service - RaaS) và các mô hình tính toán dễ sử dụng. Open Nebula
[83] cung cấp một mô hình đầy đủ như một trung tâm dữ liệu để làm tiền đề cho đám
mây IaaS.
- Các dịch vụ (services): mô hình tính toán đám mây được xem là bước phát
triển tiếp theo của mô hình lưới tiện ích (Grid Utility) [91]. Tuy nhiên, hệ thống tính
toán đám mây không chỉ quan tâm đến dịch vụ, chia sẻ tài nguyên mà còn đảm bảo
việc cung cấp các dịch vụ nhất quán thông qua các trung tâm dữ liệu được xây dựng
dựa trên công nghệ ảo hoá lưu trữ và tính toán [39], [91]. Sự đa dạng, tính ổn định
của các loại dịch vụ mà hệ thống cung cấp cho người dùng là một thông số quan trọng
để đánh giá tính năng của đám mây [68]. Do đó, kiến trúc đám mây có thể được phân
loại dựa vào loại dịch vụ mà chúng cung cấp, chẳng hạn: Amazon EC2 cung cấp dịch
vụ tính toán và các dịch vụ lưu trữ. Sun Grid [41] chỉ cung cấp dịch vụ tính toán,
Microsoft Live Mesh [74] cung cấp dịch vụ nền tảng và GRIDS Lab Aneka [87] cung
cấp dịch vụ phần mềm.
- Sự ảo hoá (virtualization): tài nguyên đám mây được mô hình hóa như các nút
tính toán ảo kết nối thông qua mạng quy mô lớn với cấu trúc mạng liên kết xác định.
Cấu trúc mạng vòng Peer-to-Peer là một ví dụ thường được sử dụng cho một hệ thống
tính toán đám mây và tổ chức cộng đồng người sử dụng [39]. Dựa trên công nghệ ảo
hóa, các mô hình tính toán đám mây cho phép luồng công việc được triển khai và mở
rộng một cách nhanh chóng thông qua việc cung cấp động các máy ảo trên các máy
vật lý.
- Đàm phán QoS động (dynamic QoS negotiation): cung cấp các thuộc tính
chất lượng dịch vụ (Quality of Service - QoS) tự động tại thời điểm thực thi dựa trên
10


điều kiện cụ thể được gọi là đàm phán QoS động, chẳng hạn như: đàm phán băng
thông mạng, đàm phán tăng giảm tài nguyên sử dụng, đàm phán về thời gian đáp
ứng,... Yêu cầu QoS có thể thay đổi trong quá trình thực hiện các công việc của hệ
thống để đáp ứng tốt nhất nhu cầu của người dùng. Tóm lại, tự động điều chỉnh QoS
để cung cấp linh hoạt nhu cầu người dùng là đặc tính thể hiện sự khác biệt của đám
mây và được xem như một thuộc tính so sánh giữa các đám mây.
- Giao diện truy cập người dùng (user access interface): giao diện truy cập
người dùng là các giao thức truyền thông của hệ thống tính toán đám mây với người
sử dụng. Giao diện truy cập phải được trang bị các công cụ cần thiết đảm bảo nâng
cao hiệu suất của hệ thống. Mặc dù, giao diện truy cập có sẵn trong hệ thống tính
toán cụm và hệ thống tính toán lưới, nhưng trong trường hợp của tính toán đám mây,
giao diện truy cập là rất quan trọng bởi vì nếu nó không phải là giao diện thân thiện
người dùng, thì người dùng có thể không sử dụng dịch vụ. Vì thế, nó đóng một vai
trò quan trọng và được sử dụng như là một tính năng so sánh giữa các đám mây.
- Dịch vụ giá trị gia tăng (value added services): dịch vụ giá trị gia tăng là các
dịch vụ bổ sung ngoài các dịch vụ chuẩn được cung cấp bởi hệ thống. Dịch vụ giá trị
gia tăng được cung cấp với một khoản phụ phí vừa phải (hoặc miễn phí) và xem như
sự hỗ trợ hấp dẫn của hệ thống cho người dùng với chi phí thấp. Vì thế, mục đích của
dịch vụ giá trị gia tăng là: thúc đẩy sự phát triển của hệ thống tính toán đám mây,
thu hút người sử dụng dịch vụ mới và giữ chân người dùng dịch vụ cũ. Các dịch vụ
nêu trong thỏa thuận mức dịch vụ (Service Level Agreement - SLA) là các dịch vụ
chuẩn của đám mây. Ngoài ra, cần gia tăng các dịch vụ để cung cấp cho người dùng
nhằm thúc đẩy người dùng sử dụng các dịch vụ giá trị gia tăng. Dịch vụ giá trị gia
tăng rất quan trọng để phát triển hệ thống tính toán đám mây và cung cấp một lợi
thế đối với đối thủ cạnh tranh. Nếu trong đám mây chỉ cung cấp các dịch vụ SLA thì
người dùng sẽ chuyển sang sử dụng các đám mây có dịch vụ giá trị gia tăng.

1.2.2. Thách thức của một hệ thống tính toán đám mây
Những thách thức cơ bản khi triển khai một hệ thống tính toán đám mây, đó là
việc đáp ứng nền tảng các tiêu chuẩn sau [26]:
- Bảo mật (Security): với mô hình đa thuê bao (Multi-Tenancy) và tất cả các dữ
liệu lưu trữ và tính toán được xử lý trong các máy chủ trên đám mây, nên các vấn
đề về tính bảo mật, tính toàn vẹn dữ liệu và tính không từ chối dịch vụ là các yếu tố
quan trọng khi xây dựng các đám mây. Vì thế, các kỹ thuật bảo mật mới, như: phòng
chống sự tấn công từ các đám mây botnet cần được nghiên cứu và áp dụng.

11


Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay

×