Nghiên cứu tìm thuật toán tốt nhất trong việc tìm kiếm slot ứng với xác suất từ chối và thời gian chờ.Nghiên cứu tìm thuật toán tốt nhất trong việc tìm kiếm slot ứng với xác suất từ chối và thời gian chờ.Nghiên cứu tìm thuật toán tốt nhất trong việc tìm kiếm slot ứng với xác suất từ chối và thời gian chờ.Nghiên cứu tìm thuật toán tốt nhất trong việc tìm kiếm slot ứng với xác suất từ chối và thời gian chờ.Nghiên cứu tìm thuật toán tốt nhất trong việc tìm kiếm slot ứng với xác suất từ chối và thời gian chờ.Nghiên cứu tìm thuật toán tốt nhất trong việc tìm kiếm slot ứng với xác suất từ chối và thời gian chờ.Nghiên cứu tìm thuật toán tốt nhất trong việc tìm kiếm slot ứng với xác suất từ chối và thời gian chờ.Nghiên cứu tìm thuật toán tốt nhất trong việc tìm kiếm slot ứng với xác suất từ chối và thời gian chờ.Nghiên cứu tìm thuật toán tốt nhất trong việc tìm kiếm slot ứng với xác suất từ chối và thời gian chờ.Nghiên cứu tìm thuật toán tốt nhất trong việc tìm kiếm slot ứng với xác suất từ chối và thời gian chờ.Nghiên cứu tìm thuật toán tốt nhất trong việc tìm kiếm slot ứng với xác suất từ chối và thời gian chờ.Nghiên cứu tìm thuật toán tốt nhất trong việc tìm kiếm slot ứng với xác suất từ chối và thời gian chờ.Nghiên cứu tìm thuật toán tốt nhất trong việc tìm kiếm slot ứng với xác suất từ chối và thời gian chờ.Nghiên cứu tìm thuật toán tốt nhất trong việc tìm kiếm slot ứng với xác suất từ chối và thời gian chờ.Nghiên cứu tìm thuật toán tốt nhất trong việc tìm kiếm slot ứng với xác suất từ chối và thời gian chờ.
Trang 1LỜI CAM ĐOAN
Tôi cam đoan đây là công trình nghiên cứu của riêng tôi
Các số liệu, kết quả nêu trong luận văn là trung thực và chƣa từng đƣợc ai công bố trong bất kỳ công trình nào khác
TP.HCM, ngày tháng 06 năm 2016 Học viên thực hiện luân văn
Mai Quốc Việt
Trang 2LỜI CẢM ƠN
Đầu tiên, em xin phép được gửi lời cảm ơn chân thành nhất đến Thầy
PGS.TS.Trần Vĩnh Phước Thầy là người đã hướng dẫn và luôn theo sát em
trong quá trình làm luận văn Thầy luôn tận tình chỉ bảo, hướng dẫn và đưa ra những vấn đề trọng tâm của vấn đề cần giải quyết và giúp em cũng cố thêm những kiến thức quan trọng, đưa ra định hướng đúng đắn, và luôn tạo điều kiện để em có thể hoàn thành luân văn Em xin chúc Thầy luôn thành công trên con đường giảng dạy, và cùng với gia đình được nhiều sức khỏe và hạnh phúc
Tiếp đến, em xin được gởi lời cảm ơn đến tất cả các Thầy, Cô đã và đang
giảng dạy ở Trường Học Viện Công Nghệ Bưu Chính Viễn Thông vì đã
truyền đạt cho em thêm những kiến thức mới để hoàn thành luận văn này Em xin chúc quý Thầy, Cô luôn được nhiều sức khỏe
Cuối cùng, em cũng xin cảm ơn bạn bè, gia đình đã luôn quan tâm, giúp đỡ, động viên em thực hiện luận văn tốt nghiệp cao học
TP.HCM, ngày tháng 06 năm 2016 Học viên thực hiện luân văn
Mai Quốc Việt
Trang 3MỤC LỤC
LỜI CAM ĐOAN i
LỜI CẢM ƠN ii
MỤC LỤC iii
DANH MỤC CÁC BẢNG vi
DANH MỤC CÁC HÌNH vii
MỞ ĐẦU 1
1 Tính cấp thiết của đề tài 1
2 Tổng quan vấn đề nghiên cứu 2
3 Mục tiêu của đề tài 3
4 Đối tượng và phạm vi nghiên cứu 3
5 Phương pháp nghiên cứu 4
CHƯƠNG 1 - TỔNG QUAN ĐIỆN TOÁN ĐÁM MÂY 5
1.1 Giới thiệu 5
1.2 Các thành phần của điện toán đám mây 7
1.2.1 Các máy khách (clients)……… 7
1.2.2 Trung tâm dữ liệu (data center)………8
1.2.3 Các máy chủ phân tán (distributed servers)……… 8
1.3 Các tầng kiến trúc của điện toán đám mây 8
Trang 41.4 Mô hình dịch vụ trong điện toán đám mây 9
1.4.1 Phần mềm như là dịch vụ (SaaS)……… 10
1.4.2 Nền tảng hướng dịch vụ (PaaS – Platform as a Service)… 11
1.4.3 Hạ tầng hướng dịch vụ (Infrastructure as a Service)……… 13
1.4.4 Một số dịch vụ khác……… 14
1.5 Mô hình triển khai điện toán đám mây 15
1.5.1 Đám mây công cộng (Public cloud )……… 15
1.5.2 Đám mây riêng (Private cloud)……… 17
1.5.3 Đám mây lai (Hybrid cloud ) ………18
1.5.4 Đám mây cộng đồng ……….19
CHƯƠNG 2 - GIẢI THUẬT TÌM SỐ LƯỢNG TỐI ĐA SLOT MỤC TIÊU ĐỂ DI TRÚ MÁY ẢO TRONG ĐÁM MÂY 20
20
2.1.1 Mô tả bài toán ……….20
2.1.2 Đầu vào ……… 22
2.1.3 Đầu ra ……….22
2.1.4 Sơ đồ tuần tự ……….23
24
2.2.1 Sơ đồ chuyển dịch trạng thái ……… 25
2.2.2 Xác suất từ chối ……… 29
Trang 52.2.3 Thời gian chờ ……… 29
2.2.4 Số lượng tối đa của slot mục tiêu (K) ……… 33
CHƯƠNG 3 - MÔ PHỎNG VÀ THỰC NGHIỆM 35
3.1 Giới thiệu 35
3.2 Phần mềm thực hiện mô phỏng 35
3.3 Các bước thực hiện mô phỏng 37
3.3.1 Tab ―màn hình chính‖ ……….37
3.3.2 Tab ―một số biểu đồ liên quan‖ ……… 39
KẾT LUẬN 44
DANH MỤC CÁC TÀI LIỆU THAM KHẢO 45
Trang 6DANH MỤC CÁC BẢNG
Bảng 1.1 Cân bằng tải hệ thống 27
Trang 7DANH MỤC CÁC HÌNH
Hình 1.1 Điện toán đám mây 5
Hình 1.2 Các thành phần điện toán đám mây 6
Hình 1.3 Mô hình kiến trúc điện toán đám mây của Microsoft 9
Hình 1.4 Mô hình dịch vụ của điện toán đám mây 10
Hình 1.5 Mô hình dịch vụ SaaS 11
Hình 1.6 Mối quan hệ giữa các nhóm điện toán đám mây và các phần tử của PaaS 12
Hình 1.7 Mối quan hệ giữa các máy ảo, trình siêu giám sát và máy tính 13
Hình 2.1 Tổng số lượng slot N và số lượng slot tối đa sử dụng cho xử lý di trú K (a) m ≤ K; (b) m > K 21
Hình 2.2 Sơ đồ tuần tự 23
Hình 2.3 Sơ đồ chuyển dịch trạng thái 25
Hình 2.4 Sơ đồ cân bằng tải hệ thống 25
Hình 2.5 Sơ đồ chuyển trạng thái của trường hợp N = 3 và K = 1 28
Hình 2.6 Thời gian chờ của tiến trình di trú trường hợp K = 1 30
Hình 2.7 Thời gian chờ của tiến trình di trú trường hợp N = 5 và K = 2 32
Màn hình chính 36
Nhập tham số đầu vào 37
Màn hình chờ 38
Kết quả sau khi thực thi chương trình 38
39
Một số biểu đồ liên quan 40
40
41
42
43
Trang 8MỞ ĐẦU
1 Tính cấp thiết của đề tài
Môi trường đám mây [1] là mô hình ảo hóa những máy chủ vật lý (tài nguyên phần cứng) thành những máy ảo (VMs) Sự di trú máy ảo [2], [3] trong khi vận hành hệ thống điện toán đám mây cần phải được thực hiện sao cho hiệu suất tốt [4], giá thành hợp lý [5] và khả năng chịu lỗi cao [6] (fault tolerance) Các máy
ảo cần phải di trú một cách linh hoạt trong suốt quá trình hoạt động của hệ thống
để đáp ứng yêu cầu di chuyển của khách hàng, dữ liệu của hệ thống phải được cân bằng tải, và các server không phải chịu tải cao Nói cách khác, khi một khách hàng
di chuyển từ một vùng này đến vùng khác thì phải sử dụng hai slot cho việc di trú máy ảo của khách hàng đó, một slot cho host gốc và một slot cho host đến (slot mục tiêu) trong một khoảng thời gian cần thiết để di trú máy ảo hoàn thành Do đó, nếu số lượng di trú nhiều thì phải cần nhiều nguồn slot dự phòng trong suốt thời gian di trú Vì vậy, số lượng slot trống giành cho yêu cầu dịch vụ của khách hàng mới sẻ giảm Nếu hệ thống không có đủ slot cho yêu cầu dịch vụ của khách hàng mới thì hệ thống sẽ từ chối yêu cầu Khả năng từ chối yêu cầu dịch vụ của khách hàng mới được đánh giá bởi xác suất từ chối [7] Xác suất từ chối phụ thuộc số lượng máy ảo đang di trú của khách hàng trong hệ thống và số lượng yêu cầu dịch
vụ của khách hàng mới
Một hệ thống có nhiều sự di trú của máy ảo [8] đòi hỏi phải có nhiều slot trống vì số máy ảo giữ hai slot cho việc chuyển vùng tăng cao Trong trường hợp này, Nếu số lượng slot giành riêng cho việc di trú ít hơn số lượng máy ảo cần di trú thì sẽ làm tăng thời gian chờ của các máy ảo đang di trú Một hệ thống có số lượng slot ít, xác suất từ chối yêu cầu dịch vụ mới của khách hàng cũng như thời gian chờ của việc di trú máy ảo tăng, và chất lượng dịch vụ giảm Một hệ thống kinh doanh
Trang 9cần phải bảo đảm kỹ thuật theo những yêu cầu của khách hàng, xác suất từ chối phải được duy trì dưới ngưỡng đặt ra để bảo đảm chất lượng dịch vụ
Bài toán được đặt ra ở đây là phải xác định số slot mục tiêu (số lượng slot tối đa giành cho các tiến trình di trú máy ảo) để duy trì xác suất từ chối yêu cầu khách hàng mới và thời gian chờ của di trú máy ảo dưới ngưỡng được xác định trước Nếu xác suất từ chối yêu cầu của khách hàng mới cao thì khả năng từ chối yêu cầu của khách hàng càng cao dẫn đến lợi nhuận thấp (trường hợp slot mục tiêu lớn) Ngược lại nếu xác xuất từ chối thấp thì thời gian chờ của di trú máy ảo trong
hệ thống sẽ tăng (trường hợp slot mục tiêu nhỏ) Vậy số lượng slot mục tiêu cho di trú máy ảo bao nhiêu là phù hợp Luận văn ―Nghiên cứu tìm thuật toán tốt nhất trong việc tìm kiếm slot mục tiêu ứng với xác suất từ chối và thời gian chờ‖ nhằm tìm phương pháp làm giảm thời gian chờ và xác suất từ chối của hệ thống đối với
sự di chuyển của khách hàng sao cho hệ thống có thể sử dụng ít tài nguyên hơn trong khi vẫn đảm bảo chất lượng của dịch vụ
2 Tổng quan vấn đề nghiên cứu
Sự di trú máy ảo trong đám mây đã bùng nổ trong những năm gần đây Sự
di trú như là một công cụ tiềm năng để cải thiện hiệu suất, chi phí và khả năng chịu lỗi (fault tolerance) của hệ thống Tuy nhiên, việc duy chuyển các máy ảo đòi hỏi nhiều tài nguyên phần cứng hơn để đặt các slot mục tiêu trong quá trình di trú Sự
di trú đồng thời với một số lượng lớn có thể làm cạn kiệt các nguồn tài nguyên vật
lý của hệ thống Do đó, hệ thống có thể từ chối các yêu cầu phục vụ mới
Một phương pháp để hạn chế số lượng các slot bị chiếm giữ trong quá trình
di trú được đề xuất để giảm xác suất bị từ chối Với phương pháp này, hệ thống có thể đảm bảo slot luôn có sẵn cho yêu cầu khách hàng mới Tuy nhiên, nếu số lượng máy ảo được yêu cầu di trú cùng một lúc vượt quá số lượng tối đa của slot mục tiêu, thì hệ thống sẽ không có đủ slot trống để phục vụ các máy ảo đang được yêu
Trang 10cầu di trú Các máy ảo đó sẽ phải đợi cho đến khi có slot đang xử lý được giải phóng Đây còn gọi là thời gian chờ
Trong luận văn này, sơ đồ chuyển tiếp trạng thái được sử dụng để minh họa tất
cả các trường hợp có thể có trong một hệ thống Sử dụng sơ đồ này, ta có thể tính được xác suất từ chối và thời gian chờ dựa trên xác suất của mỗi trạng thái Ngoài
ra, hai ngưỡng xác suất từ chối và thời gian chờ phải được cho trước để chương trình có thể xác định số lượng các slot dành cho việc di trú là hiệu quả
3 Mục tiêu của đề tài
Luận văn nghiên cứu ―Tìm thuật toán tốt nhất trong việc tìm kiếm slot mục tiêu ứng với xác suất từ chối và thời gian chờ‖ đề xuất giải thuật, kết hợp giải thuật xác đinh K [18] với ngưỡng thời gian chờ để nâng cao tính sẵn sàng phục vụ của
hệ thống, có thể giúp nhà cung cấp tiết kiệm chi phí và tài nguyên ―Giải thuật kết hợp‖ sử dụng sơ đồ chuyển dịch trạng thái, giải thuật Gauss Jodan, công thức để tính xác suất bị từ chối đối với khách hàng mới, và thời gian chờ của những tiến trình di trú Giải thuật kết hợp làm giảm thời gian chờ tiến trình di trú máy ảo và xác suất từ chối dịch vụ của khách hàng mới trong hệ thống
4 Đối tượng và phạm vi nghiên cứu
Đối tượng nghiên cứu của đề tài:
Đối tượng nghiên cứu của đề tài là điện toán đám mây của doanh nghiệp hoạt động kinh doanh, giao dịch, và quản lý
Phạm vi:
Hệ thống mạng sử dụng công nghệ điện toán đám mây (cloud computing)
áp dụng cho đám mây công cộng (public cloud) Đám mây công cộng là các dịch
vụ đám mây do bên thứ 3 (người bán) cung cấp Loại đám mây này tồn tại ngoài tường lửa công ty, được lưu trữ đầy đủ và do nhà cung cấp đám mây quản lý
Trang 11Thực hiện trong môi trường giả lập Các hệ thống điện toán đám mây đang trong tình trạng hoạt động kinh doanh không thể thực hiện các thí nghiệm Do đó, luận văn sẽ tạo ra môi trường giả lập để minh họa kết quả nghiên cứu
5 Phương pháp nghiên cứu
Phương pháp tra cứu:
Phương pháp tra cứu là tra cứu các nguồn tư liệu đã xuất bản, các bài báo đăng trên các tạp chí khoa học, sưu tập các tư liệu liên quan đến điện toán đám mây
và chất lượng dịch vụ đối với những hệ thống có lượng khách hàng di trú nhiều Phương pháp phân tích:
Phương pháp phân tích là phân tích các tài liệu và thông tin liên quan đến điện toán đám mây để hiểu rõ hơn phương pháp của các nghiên cứu đã thực hiện trước
Phương pháp phân tích dữ liệu truyền trên mạng :
Trong luận văn này, sơ đồ chuyển tiếp trạng thái được áp dụng để minh họa tất cả các trường hợp có thể có trong một hệ thống điện toán đám mây làm nhiệm
vụ cung cấp dịch vụ
Phương pháp toán học :
Phương pháp toán học sử dụng lý thuyết hàng đợi, toán thống kê Poisson
và áp dụng công thức Gauss Jodan [9] để tính được xác suất của mỗi trạng thái trong sơ đồ chuyển tiếp
Trang 12CHƯƠNG 1 - TỔNG QUAN ĐIỆN TOÁN ĐÁM MÂY
1.1 Giới thiệu
Hình 1.1: Điện toán đám mây [10]
Điện toán đám mây (Cloud computing), còn gọi là điện toán máy chủ ảo, là mô hình tính toán sử dụng các công nghệ máy tính và phát triển dựa vào mạng Internet Thuật ngữ "cloud computing" ra đời giữa năm 2007 không phải để nói về một trào lưu mới, mà để khái quát lại các hướng phát triển của cơ sở hạ tầng CNTT vốn đã và đang diễn ra từ những năm qua Quan niệm này có thể được diễn giải một cách đơn giản: các nguồn tính toán khổng lồ như các phần cứng (máy chủ), phần mềm, và các dịch vụ (chương trình ứng dụng), … được cài đặt tại các máy chủ ảo (đám mây) trên Internet thay vì trong máy tính gia đình và văn phòng (trên mặt đất) để mọi người kết nối và sử dụng mỗi khi họ cần
Điện toán đám mây là một giải pháp toàn diện cung cấp công nghệ thông tin như một dịch vụ và là một giải pháp điện toán dựa trên Internet ở đó cung cấp tài
Trang 13nguyên chia sẻ giống như dòng điện được phân phối trên lưới điện Các máy tính trong các đám mây được cấu hình để làm việc cùng nhau và các ứng dụng khác nhau sử dụng sức mạnh điện toán tập hợp cứ như thể là chúng đang chạy trên một
hệ thống duy nhất Nói cách khác, ở mô hình tính toán này, mọi khả năng liên quan đến công nghệ thông tin đều được cung cấp dưới dạng các dịch vụ, cho phép người
sử dụng truy cập các dịch vụ công nghệ thông tin từ một nhà cung cấp nào đó trong đám mây mà không cần phải biết về công nghệ đó, cũng như không cần quan tâm đến các cơ sở hạ tầng phục vụ công nghệ đó
Hình 1.2: Các thành phần điện toán đám mây [11]
Điện toán đám mây xuất hiện bắt nguồn từ ứng dụng điện toán lưới (grid computing), tiếp theo là điện toán theo nhu cầu (utility computing) và phần mềm dịch vụ (SaaS) Theo tổ chức xã hội máy tính IEEE, điện toán đám mây là hình mẫu trong đó thông tin được lưu trữ thường trực tại các máy chủ trên Internet và chỉ được được lưu trữ tạm thời ở các máy khách, bao gồm máy tính cá nhân, trung tâm giải trí, máy tính trong doanh nghiệp, các phương tiện máy tính cầm tay, v.v
Trang 141.2 Các thành phần của điện toán đám mây
Mô hình điện toán đám mây được xây dựng bởi vài đối tượng: các máy khách, các máy chủ phân tán và trung tâm dữ liệu … Trong hình 1.2, mô hình điện toán đám mây được tạo bởi ba thành phần chính Mỗi phần có mục đích và đóng vai trò riêng trong việc cung cấp những chức năng ứng dụng cơ bản của đám mây
1.2.1 Các máy khách (clients)
Client là một chương trình (hay máy tính) yêu cầu thông tin từ máy khác trong mạng lưới Ví dụ, khi một trình duyệt web như Internet Explore yêu cầu web server mở ra một trang web Client thông thường là những máy tính để bàn Nó cũng có thể là máy tính xách tay, máy tính bảng, điện thoại
Client là các thiết bị mà người dùng cuối tương tác để quản lý thông tin của
họ trên cloud Nói chung clients được xếp vào ba loại sau:
Mobile là những thiết bị di động giống như Blackberry, Windows mobile
smartphone hoặc là Iphone
Thin clients là những máy tính không có thiết bị phần cứng bên trong, tất cả
công việc để server làm, sau đó thì hiển thị thông tin
Thick là loại những máy tính thông thường dùng trình duyệt web để kết nối
đám mây
Think clients là một giải pháp phổ biến và tăng mạnh những năm gần đây, bởi
vì giá thành và sự hiệu quả trong môi trường làm việc : một số lợi ích của việc
sử dụng think clients:
Chi phí cho phần cứng thấp
Bảo mật
Tiêu thụ điện năng thấp
Dễ sửa chửa và thay đổi
Trang 15Ít ồn ào : không có chuyển động đĩa cứng, ít có hơi nóng được sinh ra, quạt được sử dụng êm hơn
1.2.2 Trung tâm dữ liệu (data center)
Data center là nơi tập trung nhiều thành phần tài nguyên mật độ cao (hardware, software ) làm chức năng lưu trữ, xử lý toàn bộ dữ liệu hệ thống với khả năng sẵn sàng và độ ổn định cao Data center có thể là một phòng lớn phụ thuộc vào hệ thống của doanh nghiệp
Sự phát triển mạnh mẻ của công nghệ thông tin với những server được ảo hóa Máy chủ ảo là dạng máy chủ được tạo ra bằng phương pháp phân chia một máy chủ vật lý thành nhiều máy chủ khác nhau có tính năng tương tự như máy chủ riêng (dedicated server), chạy dưới dạng chia sẻ tài nguyên từ máy chủ vật lý ban đầu
1.2.3 Các máy chủ phân tán (distributed servers)
Distributed server là tất cả các server không đặt cùng một vị trí mà được đặt
ở khắp nơi trên thế giới và chúng được liên kết với nhau Các server được thêm và bớt linh động hơn Ví dụ, Amazon có rất nhiều các server trong đám mây của họ trên thế giới Nếu vì lý do nào đó mà một trong những server đó bị lỗi thì dịch vụ đang được truy cập sẽ tự động chuyển qua một server khác
1.3 Các tầng kiến trúc của điện toán đám mây
Điện toán đám mây cung cấp các dịch vụ ở tất cả các tầng, từ phần cứng tới các phần mềm Các dịch vụ có thể chia thành 3 lớp chính: Phần mềm dịch vụ (software as a service), nền dịch vụ (platform as a service), và cơ sở hạ tầng dịch vụ (infrastructure as a service) Các lớp này có thể tập hợp thành các tầng kiến trúc khác nhau, có thể chồng chéo
Kiến trúc trong các tài liệu của Microsoft chia thành rất nhiều tầng như sau:
Trang 16Hình 1.3: Mô hình kiến trúc điện toán đám mây của Microsoft [12]
Mô hình trung tâm dữ liệu truyền thống ở cột 1, toàn bộ cơ sở hạ tầng được đặt tại doanh nghiệp Doanh nghiệp phải có trách nhiệm quản lý, cập nhật tất cả thành phần như : hệ điều hành, ứng dụng, thiết bị mạng ( routers, switches, etc.) và phần cứng (firmware) Đối với dịch vụ IaaS, doanh nghiệp vẫn phải chịu trách nhiệm cập nhật
hệ điều hành và tất cả các ứng dụng Tuy nhiên, toàn bộ cơ sở hạ tầng bên dưới hệ điều hành và các ứng dụng được quản lý bởi Microsoft Đối với hai mô hình trên (cổ điển và IaaS), khách hàng vẫn là chủ sở hữu dữ liệu của họ và vẫn có trách nhiệm bảo vệ nó
Đối với dịch vụ PaaS, doanh nghiệp thậm chí còn ít trách nhiệm đối việc cập nhật phần mềm, khi mà quản lý cập nhật hệ điều hành là trách nhiệm của Microsoft Đối với dịch vụ SaaS, trách nhiệm cập nhật phần mềm cho toàn bộ các lớp (stack) là thuộc sở hữu của Mricrosoft
1.4 Mô hình dịch vụ trong điện toán đám mây
Dịch vụ điện toán đám mây bao gồm tất cả các lớp dịch vụ điện toán như cung cấp năng lực tính toán trên máy chủ hay các máy chủ ảo, không gian lưu trữ dữ liệu, hay một hệ điều hành, một công cụ lập trình, hay một ứng dụng kế toán … Các
Trang 17dịch vụ cũng được phân loại khá da dạng, nhưng các mô hình dịch vụ điện toán đám mây phổ biến nhất có thể được phân thành 3 nhóm: Dịch vụ hạ tầng (IaaS), Dịch vụ nền tảng (PaaS) và Dịch vụ phần mềm (SaaS)
Hình 1.4: Mô hình dịch vụ của điện toán đám mây
Dịch vụ điện toán đám mây bao gồm tất cả các lớp dịch vụ điện toán như cung cấp năng lực tính toán trên máy chủ hay các máy chủ ảo, không gian lưu trữ dữ liệu, hay một hệ điều hành, một công cụ lập trình, hay một ứng dụng kế toán … Các dịch vụ cũng được phân loại khá da dạng, nhưng các mô hình dịch vụ điện toán đám mây phổ biến nhất có thể được phân thành 3 nhóm: Dịch vụ hạ tầng (IaaS), Dịch vụ nền tảng (PaaS) và Dịch vụ phần mềm (SaaS)
1.4.1 Phần mềm như là dịch vụ (SaaS)
SaaS (Sofware as a Service) được hiểu là phần mềm như một dịch vụ SaaS
là một ứng dụng trực tuyến có thể sử dụng thay vì cài đặt trên một server hoặc máy
PC Một trong những ví dụ cổ nhất là webmail Những người đã sử dụng Hotmail,
Trang 18Yahoo! Mail, và những dịch vụ khác từ những thập niên 1990 Nhiều người sử dụng của các dịch vụ này không cần cài đặt một ứng dụng email thay vào đó, người sử dụng chỉ cần duyệt đến trang web của nhà cung cấp dịch vụ, đăng nhập
Hình 1.5: Mô hình dịch vụ SaaS
Kể từ đó sự đa dạng của các ứng dụng cá nhân và doanh nghiệp đã bùng nổ Doanh nghiệp không cần thiết phải triển khai máy chủ Exchange và một SharePoint trong một doanh nghiệp nhỏ hoặc một văn phòng chi Doanh nghiệp có thể đăng ký và triển khai các hộp thư trong vài giờ Khách hàng có thể truy cập vào những dịch vụ
từ bất cứ nơi nào nếu họ có Internet Ví dụ như là Microsoft Office 365, Salesforce CRM, Microsoft Dynamics CRM, Microsoft Windows Intune và Google Apps
Người dùng có thể đăng ký vào một dịch vụ một cách nhanh chóng như để thanh toán bằng thẻ tín dụng với sức mạnh của SaaS Bên cạnh đó, doanh nghiệp không cần triển khai hoặc quản lý cơ sở hạ tầng ứng dụng Những bất lợi hệ thống này là không phải luôn luôn linh hoạt và có thể không tích hợp tốt đối với tất cả các loại hình ứng dụng kinh doanh được yêu cầu
1.4.2 Nền tảng hướng dịch vụ (PaaS – Platform as a Service)
Một nền tảng điện toán dưới dạng đơn giản nhất, đề cập đến một nơi mà phần mềm có thể được khởi chạy một cách nhất quán miễn là mã đáp ứng được các tiêu
Trang 19chuẩn của nền tảng đó Các ví dụ phổ biến của các nền tảng gồm có Windows™, Apple Mac OS X, và Linux® cho các hệ điều hành; Google Android, Windows Mobile®, và Apple iOS cho điện toán di động; và Adobe® AIR™ hay Microsoft® NET Framework Điều quan trọng của dịch vụ này không phải là phần mềm mà là
về nền tảng mà phần mềm được xây dựng để chạy trên đó Hình 1.6 cung cấp một minh họa để giúp chúng ta hiểu được mối quan hệ này
Hình 1.6: Mối quan hệ giữa các nhóm điện toán đám mây và
các phần tử của PaaS [14]
PaaS cũng là một biến thể của SaaS nhưng mô hình này là một nhánh của điện
PaaS nhằm giải quyết những vấn đề như triển khai server và không cung cấp chính xác môi trường cho những người phát triển phần mềm cần PaaS là một môi trường dịch vụ mà nhà cung cấp quản lý cho phép những người phát triển phần mềm
tổ chức và thực hiện các phần mềm của họ mà không quan tâm đến các yếu tố kỹ thuật và việc triển khai hoặc cấu hình server Một ví dụ về một PaaS là Microsoft Windows Azure Những người phát triển phần mềm có thể tạo các ứng dụng trong Visual Studio và tải chúng trực tiếp lên PaaS của Microsoft, mà dữ liệu có mặt ở
Trang 20nhiều hệ thống trên toàn cầu Những người phát triển phần mềm có thể sử dụng sức mạnh tính toán, dịch vụ SQL có sẵn và khả năng mở rộng, ứng dụng mẫu và một lượng lớn không gian lưu trữ
Sức mạnh của giải pháp này có thể triển khai một ứng dụng mới trên một nền tảng có khả năng mở rộng để tiếp cận một đối tượng rất lớn trong một vài phút Điều này giúp Những người phát triển phần mềm tự do để tập trung vào ứng dụng của họ
mà không cần quan tâm đến server, mạng, và các yếu tố khác Điểm yếu là không thể tuỳ chỉnh cơ sở hạ tầng cơ bản Ví dụ, nếu yêu cầu chức năng web server mới hoặc third-party SQL Server add-ons, điều này có thể không là mô hình Cloud computing tốt nhất để sử dụng
1.4.3 Hạ tầng hướng dịch vụ (Infrastructure as a Service)
Hình 1.7: Mối quan hệ giữa các máy ảo, trình siêu giám sát và máy tính [15]
Infrastructure as a service (IaaS) bao gồm sự kết hợp của các tài nguyên phần cứng
và phần mềm Phần mềm IaaS là mã mức thấp chạy độc lập với hệ điều hành, được gọi là trình siêu giám sát, và chịu trách nhiệm kiểm kê tài nguyên phần cứng và
Trang 21phân phối tài nguyên theo yêu cầu Hình 1.7 Quá trình này được gọi là phân nhóm tài nguyên (resource pooling) Phân nhóm tài nguyên bằng trình siêu giám sát làm cho có thể ảo hóa, và ảo hóa làm cho tăng khả năng số lượng máy khách Một khái niệm để chỉ một cơ sở hạ tầng được chia sẻ bởi một vài tổ chức có các mối quan tâm giống nhau về các yêu cầu an toàn và tuân thủ quy định về dữ liệu
IaaS là tầng thấp nhất của điện toán đám mây, nơi tập hợp các tài sản vật lý như các phần cứng máy chủ, hệ thống lưu trữ và các thiết bị mạng, được chia sẽ và cung cấp dưới dạng dịch vụ IaaS cho các tổ chức hay doanh nghiệp khác nhau IaaS cũng giống như dịch vụ PaaS, ảo hóa là công nghệ được sử dụng rộng rãi để tạo ra
cơ chế chia sẽ và phân phối các nguồn tài nguyên theo yêu cầu Ví dụ về các dịch vụ IaaS như IBM BlueHouse, Vmware, Amazon EC2, Microsoft Azure Platform, Sun Parascale Cloud Storage v.v
IaaS cho phép người tiêu dùng tự triển khai các máy ảo với cấu hình sẵn hệ điều hành thông qua một Self-service portal Mạng và bộ nhớ lưu trữ dễ dàng cấu hình nhanh chóng mà không cần phải tương tác với người quản trị mạng Kết quả là cho phép người tiêu dùng dịch vụ nhanh chóng triển khai các bộ dịch vụ đã cấu hình trước của máy ảo Những người lập trình phần mềm hoặc ban quản trị có thể tùy chỉnh máy ảo để phù hợp với nhu cầu của các ứng dụng sẽ được họ cài đặt Môi trường làm việc là quen thuộc và có thể dễ dàng tích hợp với hầu như tất cả các công nghệ trong một tổ chức
1.4.4 Một số dịch vụ khác
Network as a service (NaaS) – Mạng lưới như một dịch vụ
Storage as a service (STaaS) – Lưu trữ như một dịch vụ Cung cấp không gian lưu trữ trực tuyến trả tiền theo nhu cầu, như Google Drive, Amazon S3, Fshare, Dropbox, …
Trang 22Security as a service (SECaaS) – Bảo mật như một dịch vụ Cung cấp các giải pháp bảo mật trực tuyến trả tiền theo nhu cầu, như McAfee, Trend Micro, … Data as a service (DaaS) – Dữ liệu như một dịch vụ Cung cấp dữ liệu (chỉ đọc) trả tiền theo nhu cầu thông qua các APIs, như Google Maps, Bing Maps, Amazon Public Data Sets (dữ liệu khoa học về trái đất của NASA, gồm cả thời tiết và bản đồ, dữ liệu biến đổi di truyền ở người, dữ liệu nhân khẩu học – điều tra dân số của Hoa Kỳ), Freebase (dữ liệu các sự kiện và khẳng định rất lớn trên thế giới)
Desktop as a service (DaaS) – Desktop như một dịch vụ Cung cấp môi trường desktop ảo qua web hoặc thin client, như VMWare Horizon DaaS
Database as a service (DBaaS) – Cơ sở dữ liệu như một dịch vụ Cung cấp CSDL trả tiền theo nhu cầu, như MongoDB, Oracle, …
Test environment as a service (TEaaS) – Môi trường kiểm tra như một dịch vụ như Sauce Labs, Perfect Mobile
API as a service (APIaaS) – Giao diện lập trình ứng dụng (Application Programming Interface) như một dịch vụ Là nền tảng cho phép tạo và host các APIs (REST, XML, Web Services), như PhantomJs.Cloud, …
Backend as a service (BaaS) Back-end (phần dành cho người quản trị) như một dịch vụ như Backendless, Telerik Backend Services, Parse, …
Integrated development environment as a service (IDEaaS) – Môi trường phát triển tích hợp như một dịch vụ
Integration platform as a service (IPaaS), see Cloud-based integration – Nền tảng tích hợp như một dịch vụ, xem thêm …
1.5 Mô hình triển khai điện toán đám mây
1.5.1 Đám mây công cộng (Public cloud )
Public cloud là các dịch vụ đám mây được một bên thứ ba (người bán) cung cấp Public cloud dành cho nhiều người sử dụng được sở hữu bởi một công ty nào
Trang 23đó kinh doanh dịch vụ cho người dùng cuối Public cloud có nhiều dạng và tồn tại dưới nhiều hình thức như là Windows Azure, Microsoft Office 365 và Amazon Elastic Compute Cloud… Ngoài ra ta cũng có thể tìm thấy các dịch vụ với quy mô nhỏ hơn với những dịch vụ khách hàng phù hợp với nhu cầu cá nhân Chúng tồn tại ngoài tường lửa công ty và chúng được lưu trữ đầy đủ và được nhà cung cấp đám mây quản lý
Đám mây công cộng cố gắng cung cấp cho người tiêu dùng với các phần tử công nghệ thông tin tốt nhất Cho dù đó là phần mềm, cơ sở hạ tầng ứng dụng hoặc
cơ sở hạ tầng vật lý, nhà cung cấp đám mây chịu trách nhiệm về cài đặt, quản lý, cung cấp và bảo trì Khách hàng chỉ chịu phí cho các tài nguyên nào mà họ sử dụng,
vì thế cái chưa sử dụng được loại bỏ
Đám mây công cộng là các dịch vụ thường được cung cấp với "quy ước về cấu hình," nghĩa là chúng được phân phối với ý tưởng cung cấp các trường hợp sử dụng phổ biến nhất Các tùy chọn cấu hình thường là một tập hợp con nhỏ hơn so với những gì mà chúng đã có nếu nguồn tài nguyên đã được người tiêu dùng kiểm soát trực tiếp Một điều khác cần lưu ý là kể từ khi người tiêu dùng có quyền kiểm soát một chút trên cơ sở hạ tầng, các quy trình đòi hỏi an ninh chặt chẽ và tuân thủ quy định dưới luật không phải lúc nào cũng thích hợp cho các đám mây chung Một đám mây công cộng là sự lựa chọn rõ ràng khi :
Phân bố tải workload cho các ứng dụng được sử dụng bởi nhiều người, chẳng hạn như e-mail
Chúng ta cần phải thử nghiệm và phát triển các mã ứng dụng
Chúng ta có các ứng dụng SaaS từ một nhà cung cấp có một chiến lược an ninh thực hiện tốt
Chúng ta cần gia tăng công suất (khả năng bổ sung năng lực cho máy tính cao nhiều lần)
Chúng ta đang thực hiện các dự án hợp tác
Trang 24Chúng ta đang làm một dự án phát triển phần mềm quảng cáo bằng cách sử dụng PaaS cung cấp các đám mây
1.5.2 Đám mây riêng (Private cloud)
Đám mây riêng là các dịch vụ đám mây được cung cấp trong doanh nghiệp Những đám mây này tồn tại bên trong tường lửa công ty và chúng được doanh nghiệp quản lý
Đám mây riêng đưa ra nhiều lợi ích giống như các đám mây chung thực hiện với sự khác biệt chính: doanh nghiệp có trách nhiệm thiết lập và bảo trì đám mây này Sự khó khăn và chi phí của việc thiết lập một đám mây bên trong đôi khi có thể có chiều hướng ngăn cản việc sử dụng và chi phí hoạt động liên tục của đám mây có thể vượt quá chi phí của việc sử dụng một đám mây chung
Đám mây riêng đưa ra nhiều lợi thế hơn so với loại chung Việc kiểm soát chi tiết hơn trên các tài nguyên khác nhau đang tạo thành một đám mây mang lại cho công ty tất cả các tùy chọn cấu hình có sẵn Ngoài ra, các đám mây riêng
là lý tưởng khi các kiểu công việc đang được thực hiện không thiết thực cho một đám mây chung, do đúng với các mối quan tâm về an ninh và về quản lý Một đám mây riêng là sự lựa chọn rõ ràng khi
Việc kinh doanh của chúng ta gắn với dữ liệu và các ứng dụng của chúng ta
Vì vậy, việc kiểm soát và bảo mật chiếm phần lớn công việc
Việc kinh doanh của chúng ta là một phần của một ngành công nghiệp phải phù hợp với an ninh nghiêm ngặt và các vấn đề bảo mật dữ liệu
Công ty của chúng ta là đủ lớn để chạy một dữ liệu trung tâm điện toán đám mây có hiệu quả
Trang 251.5.3 Đám mây lai (Hybrid cloud )
Đám mây lai là một sự kết hợp của các đám mây công cộng và riêng Những đám mây này thường do doanh nghiệp tạo ra và các trách nhiệm quản lý sẽ được phân chia giữa doanh nghiệp và nhà cung cấp đám mây công cộng Đám mây lai sử dụng các dịch vụ có trong cả không gian công cộng và riêng Các đám mây lai là câu trả lời khi một công ty cần sử dụng các dịch vụ của cả hai đám mây riêng và công cộng Theo hướng này, một công ty có thể phác thảo các mục tiêu và nhu cầu của các dịch vụ và nhận được chúng từ đám mây công cộng hay riêng, khi thích hợp Một đám mây lai được xây dựng tốt có thể phục vụ các quy trình nhiệm vụ-tới hạn, an toàn, như nhận các khoản thanh toán của khách hàng, cũng như những thứ là không quan trọng bằng kinh doanh, như xử lý bảng lương nhân viên
Hạn chế chính với đám mây này là sự khó khăn trong việc tạo ra và quản lý
có hiệu quả một giải pháp như vậy Phải có thể nhận được và cung cấp các dịch vụ lấy từ các nguồn khác nhau như thể chúng có nguồn gốc từ một chỗ và tương tác giữa các thành phần riêng và chung có thể làm cho việc thực hiện thậm chí phức tạp hơn nhiều Do đây là một khái niệm kiến trúc tương đối mới trong điện toán đám mây, nên cách thực hành và các công cụ tốt nhất về loại này tiếp tục nổi lên và bất đắc dĩ chấp nhận mô hình này cho đến khi hiểu rõ hơn
Dưới đây là một vài tình huống mà một môi trường hybrid là tốt nhất
Công ty của chúng ta muốn sử dụng một ứng dụng SaaS nhưng quan tâm về bảo mật Nhà cung cấp SaaS có thể tạo ra một đám mây riêng chỉ cho công
ty của chúng ta bên trong tường lửa của họ Họ cung cấp cho chúng ta một mạng riêng ảo (VPN) để bổ sung bảo mật
Công ty của chúng ta cung cấp dịch vụ được thay đổi cho thị trường khác nhau Chúng ta có thể sử dụng một đám mây công cộng để tương tác với
Trang 26khách hàng nhưng giữ dữ liệu của họ được bảo đảm trong vòng một đám mây riêng
Các yêu cầu quản lý của điện toán đám mây trở nên phức tạp hơn nhiều khi chúng
ta cần quản lý dữ liệu cá nhân, công cộng, và truyền thống tất cả với nhau Chúng
ta sẽ cần phải thêm các khả năng cho phù hợp với các môi trường