Nghiên cứu ảo hóa trong điện toán đám mây và ứng dụngNghiên cứu ảo hóa trong điện toán đám mây và ứng dụngNghiên cứu ảo hóa trong điện toán đám mây và ứng dụngNghiên cứu ảo hóa trong điện toán đám mây và ứng dụngNghiên cứu ảo hóa trong điện toán đám mây và ứng dụngNghiên cứu ảo hóa trong điện toán đám mây và ứng dụngNghiên cứu ảo hóa trong điện toán đám mây và ứng dụngNghiên cứu ảo hóa trong điện toán đám mây và ứng dụngNghiên cứu ảo hóa trong điện toán đám mây và ứng dụngNghiên cứu ảo hóa trong điện toán đám mây và ứng dụngNghiên cứu ảo hóa trong điện toán đám mây và ứng dụngNghiên cứu ảo hóa trong điện toán đám mây và ứng dụngNghiên cứu ảo hóa trong điện toán đám mây và ứng dụng
Trang 1Nguyễn Trung Nhân
NGHIÊN CỨU ẢO HÓA TRONG ĐIỆN TOÁN
ĐÁM MÂY VÀ ỨNG DỤNG
LUẬN VĂN THẠC SĨ KỸ THUẬT
(Theo định hướng ứng dụng)
HÀ NỘI – 2018
Trang 2-
Nguyễn Trung Nhân
NGHIÊN CỨU ẢO HÓA TRONG ĐIỆN TOÁN
ĐÁM MÂY VÀ ỨNG DỤNG
Chuyên ngành: Hệ thống thông tin
Mã số: 848.01.04
LUẬN VĂN THẠC SĨ KỸ THUẬT
Chuyên ngành: Hệ thống thông tin
(Theo định hướng ứng dụng)
NGƯỜI HƯỚNG DẪN KHOA HỌC:
PGS.TS TRẦN QUANG ANH
HÀ NỘI – 2018
Trang 3LỜ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
Tác giả luận văn
Nguyễn Trung Nhân
Trang 4MỤC LỤC
LỜI CAM ĐOAN i
MỤC LỤC ii
DANH MỤC CÁC KÝ HIỆU, CÁC CHỮ VIẾT TẮT v
DANH MỤC CÁC BẢNG vi
DANH MỤC CÁC HÌNH vii
MỞ ĐẦU 1
Chương 1 KIẾN TRÚC ĐIỆN TOÁN ĐÁM MÂY VÀ VẤN ĐỀ ẢO HÓA 3
1.1 Bài toán 3
1.2 Định nghĩa 6
1.3 Mô hình dịch vụ trên điện toán đám mây 8
1.3.1 IaaS (Infrastructure as a Service) 9
1.3.2 PaaS (Platform as a Service) 10
1.3.3 SaaS (Software as a Service) 11
1.4 Mô hình triển khai điện toán đám mây 11
1.4.1 Đám mây công cộng (Public cloud ) 12
1.4.2 Đám mây riêng (Private cloud) 13
1.4.3 Đám mây lai (Hybrid cloud) 14
1.4.4 Đám mây cộng đồng (Community cloud) 15
1.5 Các tính năng chính của điện toán đám mây 16
1.5.1 Khả năng có dãn (Rapid elasticity) 16
1.5.2 Dịch vụ theo nhu cầu (On-demand self-service) 16
1.5.3 Không phụ thuộc vị trí (Location independent resource pooling) 16
1.5.4 Truy cập dễ dàng (Broad network access) 17
Trang 51.5.5 Điều tiết dịch vụ (Measured service) 17
1.6 Các vấn đề về ảo hóa máy chủ 17
1.6.1 Khái niệm ảo hóa máy chủ 17
1.6.2 Sự cần thiết của ảo hóa máy chủ 18
1.6.3 Các loại ảo hóa 19
1.6.4 Vấn đề an ninh trong ảo hóa máy chủ 23
1.6.5 Ưu nhược điểm của ảo hóa máy chủ 26
Chương 2 MÔ HÌNH KIẾN TRÚC ẢO HÓA ĐIỆN TOÁN ĐÁM MÂY 29
2.1 Mô hình kiến trúc ảo hóa điện toán đám mây từ VMware 29
2.1.1 SDDC Core Infrastructure 30
2.1.2 Infrastructure Service 34
2.1.3 Application Platform Service 35
2.2 Mô hình kiến trúc ảo hóa điện toán đám mây từ Microsoft 37
2.2.1 Lớp phần cứng 37
2.2.2 Lớp ảo hóa 38
2.2.3 Lớp tự động hóa 38
2.2.4 Lớp quản lý 39
2.2.5 Tầng Orchestration 39
2.3 Mô hình kiến trúc ảo hóa điện toán đám mây từ OpenStack 40
2.3.1 OpenStack compute 41
2.3.2 OpenStack Object Storage 44
2.3.3 OpenStack Image Service 46
2.3.4 OpenStack Dashboard (Horizon) OpenStack Identity 48
2.4 Đánh giá các mô hình kiến trúc ảo hóa điện toán đám mây 49
Trang 6Chương 3 ỨNG DỤNG THỬ NGHIỆM ẢO HÓA ĐIỆN TOÁN ĐÁM MÂY
CHO DOANH NGHIỆP VỪA VÀ NHỎ 52
3.1 Lựa chọn giải pháp 52
3.1.1 Nhu cầu điện toán đám mây của doanh nghiệp vừa và nhỏ 52
3.1.2 Giải pháp OpenStack 52
3.2 Mục đích thử nghiệm 53
3.3 Mô hình triển khai thử nghiệm 53
3.4 Các bước triển khai 53
3.4.1 Yêu cầu 53
3.4.2 Controller Node 54
3.4.3 Network Node 66
3.4.4 Compute Node 71
3.5 Kết quả thử nghiệm 79
KẾT LUẬN 82
TÀI LIỆU THAM KHẢO 83
Trang 7DANH MỤC CÁC KÝ HIỆU, CÁC CHỮ VIẾT TẮT
API Application programming interface Giao diện lập trình ứng dụng
CC Cloud Computing Điện toán đám mây
IaaS Infrastructure as a Service Cơ sở hạ tầng như một dịch vụ PaaS Platform as a Service Nền tảng như một dịch vụ SaaS Software as a Service Phần mềm như một dịch vụ SDDC Software-defined data center Trung tâm dữ liệu được xác định
phần mềm
Trang 8DANH MỤC CÁC BẢNG
Bảng 1.1So sánh ưu nhược điểm sử dụng Cloud dịch vụ và Cloud riêng của doanh
nghiệp……… 5
Bảng 2.1 Các thành phần giám sát của Vmware 32
Bảng 2.2 So sánh ưu nhược điểm các giải pháp ảo hóa……… 49
Bảng 3.1 Quy hoạch IP card NICs 53
Trang 9DANH MỤC CÁC HÌNH
Hình 1.1 Cloud Computing 7
Hình 1.2 Cloud Computing 8
Hình 1.3 Mô hình dịch vụ điện toán đám mây 9
Hình 1.4 Mô hình đám mây công cộng (Public cloud) 13
Hình 1.5 Mô hình đám mây riêng (Private cloud) 14
Hình 1.6 Mô hình đám mây lai (Hybrid cloud) 15
Hình 1.7 Các máy ảo trong một server vật lý 18
Hình 1.8 Mô hình Monolithic hypervisor và Micro-kernelized hypervisor 20
Hình 1.9 Kiến trúc Full-virtualization 21
Hình 1.10 Kiến trúc Para-virtualization 22
Hình 1.11 Kiến trúc Para-virtualization 23
Hình 2.1 Tổng quan kiến trúc điện toán đám mây của Vmware 29
Hình 2.2 Network isolation in the software-defined data center 32
Hình 2.3 Design of the orchestration layer 33
Hình 2.4 Diagram of an IaaS Environment 35
Hình 2.5 Kiến trúc điện toán đám mây của Microsoft 37
Hình 2.6 Mô hình kiến trúc sử dụng cho mô hình Cloud của Microsoft 39
Hình 2.7 Mô hình kiến trúc ảo hóa điện toán đám mây OpenStack 40
Hình 2.8 Các thành phần chính của Nova 43
Hình 2.9 Tổng quan về OpenStack Object Storage 45
Hình 2.10 Các thành phần của Glance 48
Hình 2.11 Dashboard OpenStack 49
Hình 3.1 Mô hình thử nghiệm triển khai OpenStack 53
Trang 10MỞ ĐẦU
Trong bối cảnh công nghệ hiện nay, không quá lạ lẫm khi nghe nói về việc đặt
dữ liệu "trong đám mây" Mọi người đều làm vậy, từ những dữ liệu cá nhân cho đến các giao dịch trong kinh doanh Nói một cách đơn giản, điện toán đám mây là việc chạy các chương trình và lưu trữ cũng như dữ liệu tạo ra trên internet thay vì các trên máy tính và lưu trữ trong ổ cứng Phần lớn chúng ta, những người dùng cuối đang sử dụng nhiều dịch vụ trên điện toán đám mây như Gmail, Dropbox,… Hay thuê các Cloud Server từ các nhà cung cấp như VDC, CMC, IDC,… để chạy các dịch vụ, ứng dụng Người dùng đang dần chuyển các ứng dụng hay dữ liệu của mình lên “đám mây” Đối với các doanh nghiệp thuộc mọi loại hình và quy mô, việc hoạt động và chạy các ứng dụng dựa trên nền điện toán đám mây đang trở nên phổ biến bởi nhiều lý do, đặc biệt là bởi vì nó tiết kiệm chi phí, vận hành nhanh chóng và dễ dàng, sẵn sàng mọi lúc mọi nơi và chỉ cần có kết nối Internet Điện toán đám mây còn mang lại nhiều lợi ích khác cho các doanh nghiệp đang tìm cách thay đổi cách thức kinh doanh Và điện toán đám mây đang thực sự trở thành điểm nhấn quan trọng trong chiến lược của hầu hết các nhà cung cấp giải pháp CNTT trên thế giới
Ảo hóa cho phép các hệ thống máy tính lớn có thể dễ dàng chia sẻ tài nguyên cũng như ứng dụng trong môi trường Internet Thời gian gần đây, hệ thống được ảo hóa ở tất cả các cấp như tài nguyên xử lý, lưu trữ ,mạng nhằm cải thiện an toàn bảo mật, độ tin cậy, tính sẵn sàng cao, giảm chi phí và mang lại nhiều lợi ích cho nhà đầu tư Ảo hóa giúp giải quyết các vấn đề cơ bản của hệ thống, giải quyết các vấn
đề liên quan tới hiệu suất Do đó, ảo hóa được áp dụng trong các hệ thống điện toán đám mây, nó giúp ta sử dụng, tận dụng tài nguyên và quản trị đám mây tốt hơn Nghiên cứu vấn đề ảo hóa trong điện toán đám mây nhằm giải thích các vấn đề
cơ bản của ảo hóa hệ thống và giải quyết các vấn đề về hiệu suất liên quan đến mô hình hoá các hệ thống ảo hoá bằng cách sử dụng các mô hình phân tích Thực hiện
Trang 11trong các hệ thống điện toán đám mây và nó sẽ cho phép chúng ta sử dụng tốt hơn
và quản lý đám mây tốt hơn
Luận văn được bố cục gồm có các phần mở đầu, kết luận và 3 chương:
- Chương 1 – Kiến trúc điện toán đám mây và vấn đề ảo hóa: Trong chương này, luận văn sẽ trình bày về lịch sử, định nghĩa của điện toán đám mây, kiến trúc điện toán đám mây bao gồm mô hình dịch vụ, mô hình triển khai, các tính năng chính của điện toán đám mây và nêu các vấn đề cơ bản của công nghệ ảo hóa
- Chương 2 – Mô hình kiến trúc ảo hóa điện toán đám mây: Chương này sẽ nghiên cứu một số mô hình ảo hóa điện toán đám mây và đưa ra phân tích đánh giá
- Chương 3 –Ứng dụng thử nghiệm ảo hóa điện toán đám mây cho doanh nghiệp vừa và nhỏ: Chương 3 sẽ trình bày mục đích thử nghiệm, mô hình triển khai thử nghiệm của hệ thống, xây dựng các bài thử nghiệm và kiểm tra
hệ thống
Tôi xin chân thành cảm ơn thầy giáo hướng dẫn PGS.TS Trần Quang Anh đã tận tình chỉ bảo, hướng dẫn tôi trong suốt quá trình thực hiện luận văn Xin cảm ơn các thầy cô và các bạn bè đã góp ý cho tôi để hoàn thành luận văn nghiên cứu này Trong quá trình thực hiện luận văn không tránh khỏi thiếu sót, do vậy tôi mong muốn nhận được ý kiến đóng góp để luận văn hoàn thiện hơn nữa
Xin chân thành cảm ơn!
Trang 12Chương 1 KIẾN TRÚC ĐIỆN TOÁN ĐÁM MÂY VÀ VẤN ĐỀ
ẢO HÓA
Trong chương 1, luận văn sẽ trình bày về lịch sử, định nghĩa của điện toán đám mây, kiến trúc điện toán đám mây bao gồm mô hình dịch vụ, mô hình triển khai, các tính năng chính của điện toán đám mây và nêu các vấn đề cơ bản của công nghệ ảo hóa
1.1 Bài toán
Sử dụng các giải pháp cloud có thể giúp doanh nghiệp phát triển nhanh hơn, giảm chi phí và có được các công nghệ mới nhất Điện toán đám mây ngày càng trở nên phổ biến với tốc độ đáng kinh ngạc Sự chuyển giao giữa hệ thống cũ sang hệ thống mới này hoàn toàn không nằm ngoài xu thế tiến bộ chung Những doanh nghiệp không đi kịp trào lưu sẽ phải đối diện với nguy cơ bị đào thải Vậy thì điện toán đám mây đem đến lợi ích gì cho các doanh nghiệp?
Tiết kiệm chi phí: Với điện toán đám mây, doanh nghiệp có thể giảm thiểu hoặc cắt giảm hoàn toàn vốn đầu tư ban đầu vì không cần trung tâm dữ liệu tại chỗ (không lắp đặt máy chủ, phần cứng, phần mềm, khấu hao thiết bị, v.v ) Thêm vào đó, điện năng sử dụng trong vận hành và làm mát máy chủ cũng giảm, góp phần tăng tính thân thiện với môi trường Với việc giảm thiểu vốn đầu tư, không đòi hỏi lắp đặt và duy trì trung tâm dữ liệu tại chỗ, chi phí có thể được dùng cho những dự án cần kíp khác và doanh nghiệp cũng sẽ có nhiều thời gian hơn để tập trung vào các hoạt động kinh doanh chính
Truy cập tức thì mọi lúc mọi nơi: Dữ liệu dễ dàng được lưu trữ, tải về, phục hồi, hoặc xử lý chỉ với một vài cú nhấp chuột Người dùng có thể truy cập
Trang 13vào tài khoản ngay khi đang di chuyển, 24/7, thông qua bất kỳ thiết bị nào, ở bất kỳ nơi nào trên thế giới miễn là đang kết nối với internet Trên hết, tất cả các nâng cấp và cập nhật được thực hiện một cách tự động, do đó tiết kiệm khá nhiều thời gian và nỗ lực để duy trì hệ thống, giảm đáng kể khối lượng công việc cho nhóm IT
Khả năng biến đổi vô tận: Ứng dụng của điện toán đám mây vô cùng phong phú, thường sẽ được phân loại theo tính năng và thuộc một trong ba loại hình dịch vụ : Phần mềm như một dịch vụ (SaaS) Cơ sở hạ tầng như một dịch vụ (IaaS) Nền tảng như một dịch vụ (PaaS) Người dùng còn có thể tùy chọn tạo
mô hình đám mây riêng, công cộng hoặc kết hợp (hybrid), hoặc tùy chọn để quyết định vị trí của trung tâm dữ liệu ảo Điện toán đám mây đem đến vô vàn ứng dụng, biến đổi vô tận tùy theo ngân sách của doanh nghiệp
Khả năng thích ứng: Bên cạnh tính năng biến hóa vô tận, điện toán đám mây còn có thể thích ứng với bất kỳ thay đổi nào Ví dụ, doanh nghiệp có thể lựa chọn gia tăng lượng hỗ trợ người dùng trang web từ 2.000 lên đến 10.000 người một ngày trong đợt khuyến mãi Giáng Sinh Ở một ví dụ khác, doanh nghiệp hoàn toàn tự do chuyển đổi từ mạng riêng sang mạng kết hợp, hoặc tạm thời mở rộng dung lượng lưu trữ, điện toán đám mây có thể làm tất cả một cách suôn sẻ, đáp ứng mọi nhu cầu của người dùng
Hợp tác bền vững, không xáo trộn: Với điện toán đám mây, file được tập trung lưu trữ cố định và nhất quán, truy cập ở bất kỳ đâu, tạo nên một không gian ảo nơi mà mọi người trực tiếp thảo luận, cùng chia sẻ một file và nhận được phản hồi tức thì Điều này khiến cho năng suất làm việc được cải thiện
rõ rệt, giảm thiểu tối đa rắc rối, gia tăng mức độ hài lòng của khách hàng, và nhiều hơn thế nữa
Bảo mật dữ liệu: Như đã đề cập ở trên, một trong những mối lo ngại khi sử dụng điện toán đám mây là việc bảo mật thông tin Các nhà cung cấp dịch vụ phải luôn đảm bảo rằng hệ thống bảo vệ được cập nhật liên tục và cùng lúc với tất cả các tính năng mới thông qua việc kiểm định chặt chẽ Tất cả các
Trang 14hoạt động trên đám mây sẽ được bên thứ ba giám sát và kiểm tra thường xuyên để đảm bảo rằng các tiêu chuẩn an toàn được đáp ứng
Lợi ích đem lại của Cloud là rất lớn, việc doanh nghiệp lựa chọn sử dụng dịch
vụ Cloud của bên thứ 3 hay tự triển khai hạ tầng ảo hóa Cloud cho doanh nghiệp đang là bài toán đặt ra
Bảng 1.1 So sánh ưu nhược điểm sử dụng Cloud dịch vụ và Cloud riêng của doanh nghiệp
Nội dung Sử dụng dịch vụ Cloud của
-Linh hoạt trong việc triển khai, sao lưu, phục hồi khi sự cố xảy
ra -Rút ngắn thời gian trong việc triển khai dịch vụ
-Dữ liệu bảo mật hơn -Giúp người dùng thay đổi cách
tư duy về việc setup, triển khai một hệ thống
Nhược điểm -Dữ liệu lưu trữ tại nhà
cung cấp, khó bảo mật
-Khó điều chỉnh cũng như tối ưu tài nguyên tính toán
-Không tận dụng được hạ tầng cũ của doanh nghiệp
-Phải đầu tư phần cứng, quản trị
hệ thống và bản quyền cho giải pháp ảo hóa điện toán đám mây
Trang 15KL: Nghiên cứu ảo hóa trong điện toán đám mây để giải quyết được bài toán tại sao doanh nghiệp lại cần Cloud Với những ưu điểm đem lại cho doanh nghiệp khi tự triển khai hạ tầng ảo hóa điện toán đám mây Ở giới hạn của luận văn, tôi xin đi sâu vào nghiên cứu về vấn để ảo hóa trong điện toán đám mây và ứng dụng cho doanh nghiệp vừa và nhỏ
1.2 Định nghĩa
Đ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 điện 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ữ "đám mây" ở đây là lối nói ẩn dụ chỉ mạng Internet (dựa vào cách được bố trí của nó trong sơ đồ mạng máy tính) và như một liên tưởng về độ phức tạp của các cơ sở hạ tầng chứa trong nó Ở mô hình điện 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ệ từ một nhà cung cấp nào đó
"trong đám mây" mà không cần phải có các kiến thức, kinh nghiệm 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ệ đó Theo tổ chức Xã hội máy tính IEEE "Nó 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, " Điện toán đám mây là khái niệm tổng thể bao gồm cả các khái niệm như phần mềm dịch vụ, Web 2.0 và các vấn đề khác xuất hiện gần đây, các xu hướng công nghệ nổi bật, trong đó đề tài chủ yếu của nó
là vấn đề dựa vào Internet để đáp ứng những nhu cầu điện toán của người dùng Ví
dụ, dịch vụ Google AppEngine cung cấp những ứng dụng kinh doanh trực tuyến thông thường, có thể truy nhập từ một trình duyệt web, còn các phần mềm và dữ liệu đều được lưu trữ trên các máy chủ
Trang 16Hình 1.1 Cloud Computing
Trong mô hình điện toán đám mây, tất cả các tài nguyên, thông tin, và software đều được chia sẻ và cung cấp cho các máy tính, thiết bị, người dùng dưới dạng dịch vụ trên nền tảng một hạ tầng mạng công cộng (thường là mạng Internet) [1, 2] Các users sử dụng dịch vụ như cơ sở dữ liệu, website, lưu trữ, … trong mô hình cloud computing không cần quan tâm đến vị trí địa lý cũng như các thông tin khác của hệ thống mạng đám mây - “điện toán đám mây trong suốt đối với người dùng Người dùng cuối truy cập và sử dụng các ứng dụng đám mây thông qua các ứng dụng như trình duyệt web, các ứng dụng mobile, hoặc máy tính cá nhân thông thường Hiệu năng sử dụng phía người dùng cuối được cải thiện khi các phần mềm chuyên dụng, các cơ sở dữ liệu được lưu trữ và cài đặt trên hệ thống máy chủ ảo trong môi trường điện toán đám mây trên nền của “data center”
Hình bên dưới mô tả một định nghĩa về Cloud Computing bao gồm 5 tính năng chính, với 4 mô hình triển khai, và 3 mô hình dịch vụ
Trang 17Hình 1.2 Cloud Computing 1.3 Mô hình dịch vụ trên điện toán đám mây
Điện toán đám mây cung cấp 3 mô hình dịch vụ cơ bản: dịch vụ hạ tầng (IaaS), dịch vụ nền tảng (PaaS) và dịch vụ phần mềm (SaaS), với một số đặc trưng chính: thuê bao theo yêu cầu, nhiều thuê bao, dùng bao nhiêu trả bấy nhiêu Về mặt
kỹ thuật, đám mây là một tập hợp tài nguyên tính toán rộng lớn và cung cấp 3 dịch
vụ nói trên
Trang 18Hình 1.3 Mô hình dịch vụ điện toán đám mây
1.3.1 IaaS (Infrastructure as a Service)
Infrastructure as a service (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 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…
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à phân phối tài nguyên theo yêu cầu 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 có khả năng điện toán nhiều bên thuê - 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
Trang 19Nhà cung cấp dịch vụ Iaas sẽ chịu trách nhiệm mọi công việc nặng nề về thiết lập hạ tầng, thiết lập chức năng để cung cấp hạ tầng và thu phí thuê bao hạ tầng Khách hàng có thể tăng giảm một cách tự động, thuận tiện về tài nguyên
họ cần Một số lượng lớn tài nguyên có thể được cung cấp và sẵn dùng trong một thời gian ngắn sau khi được yêu cầu và quan trọng hơn là hành vi của hệ thống không thay đổi, không có lỗi tiềm tàng do chuyển đổi từ hệ thống nhỏ sang hệ thống lớn hơn hay ngược lại
1.3.2 PaaS (Platform as a Service)
Dịch vụ nền tảng (PaaS- Platform as a Service): đó là khả năng cung cấp cho khách hàng nền tảng để triển khai trên cơ sở hạ tầng điện toán đám mây các ứng dụng do khách hàng tạo ra từ ngôn ngữ lập trình và các công cụ hỗ trợ của nhà cung cấp Khách hàng không quản lý hoặc kiểm soát cơ sở hạ tầng điện toán đám mây cơ bản như mạng, máy chủ, hệ điều hành, thiết bị lưu trữ, nhưng
có kiểm soát đối với các ứng dụng triển khai và có thể thực hiện cấu hình môi trường lưu trữ Có thể coi dịch vụ này cung cấp các phần mềm hệ thống cần thiết như là ngôn ngữ lập trình, môi trường lập trình, môi trường thực thi, hệ điều hành để người dùng truy cập tài nguyên và tạo ra các ứng dụng của mình Các nhà cung cấp dịch vụ này điển hình như Microsoft Windows Azure, Google App Engine
Dịch vụ PaaS cung cấp nền tảng điện toán cho phép khách hàng phát triển các phần mềm, phục vụ nhu cầu tính toán hoặc xây dựng thành dịch vụ trên nền tảng Cloud dó Dịch vụ PaaS có thể được cung cấp dưới dạng các ứng dụng lớp giữa (middleware), các ứng dụng chủ (application server) cùng các công cụ lập trình với ngôn ngữ lập trình nhất định để xây dựng ứng dụng Dịch
vụ PaaS cũng có thể được xây dựng riêng và cung cấp cho khách hàng thông qua một API riêng Khách hàng xây dựng ứng dụng và tương tác với hạ tầng
CC thông qua API đó Ở mức PaaS, khách hàng không quản lý nền tảng Cloud hay các tài nguyên lớp như hệ điều hành, lưu giữ ở lớp dưới Khách hàng điển hình của dịch vụ PaaS chính là các nhà phát triển ứng dụng (ISV)
Trang 20Dịch vụ đám mây cung cấp nền tảng điện toán thường bao gồm cả hệ điều hành, môi trường thực hiện ngôn ngữ lập trình, cơ sở dữ liệu, và máy chủ web Hai thành phần chính của PaaS là nền tảng điện toán và chồng giải pháp là hợp lôgic
1.3.3 SaaS (Software as a Service)
Dịch vụ phần mềm (SaaS – Software as a Service) đó là khả năng cung cấp cho khách hàng sử dụng các ứng dụng (phần mềm) của nhà cung cấp đang chạy trên một cơ sở hạ tầng điện toán đám mây Các ứng dụng có thể truy cập
từ các thiết bị khác nhau thông qua một giao diện người dùng như một trình duyệt web Khách hàng không quản lý hoặc kiểm soát các cơ sở hạ tầng cơ bản đám mây nhưng có thể thiết lập cấu hình cho ứng dụng phù hợp với mình Nhiều người trong chúng ta chắc đã sử dụng phần mềm trên điện toán đám mây của Google như: Gmail, Google Docs, trình tìm kiếm của Google, Đó là những ví dụ điển hình về SaaS Dịch vụ phần mềm được cung cấp dựa theo cơ chế dịch vụ web (web service) và các cổng thông tin điện tử (portal)
Sự lựa chọn phù hợp nhất khi dịch vụ triển khai tập trung vào người dùng cuối Giúp truy cập đến các phần mềm trên nền tảng đám mây mà không cần quản lý cơ sở hạ tầng và nền tảng nó đang chạy Ví dụ về SaaS gồm có Netflix, Photoshop.com, Acrobat.com, Intuit QuickBooks Online, Gmail, và Google Docs Việc triển khai SaaS cũng bao gồm cả một phần đáng kể của thị trường ứng dụng di động đang ngày càng tăng
1.4 Mô hình triển khai điện toán đám mây
Các mô hình triển khai điện toán đám mây thực chất được phân chia theo các chính sách về quản lý truy cập đối với mỗi đám mây Được chia làm 4 mô hình triển khai điện toán đám mây là public (công cộng), private (riêng), hybrid (“lai” giữa đám mây công cộng và riêng) và community (cộng đồng)
Trang 211.4.1 Đám mây công cộng (Public cloud )
Đám mây công cộng (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 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ý Nó được xây dựng nhằm phục vụ cho mục đích sử dụng công cộng, người dùng sẽ đăng
ký với nhà cung cấp và trả phí sử dụng dựa theo chính sách giá của nhà cung cấp Public cloud là mô hình triển khai được sử dụng phổ biến nhất hiện nay của cloud computing
Đối tượng sử dụng: Bao gồm người dùng bên ngoài internet Đối tượng quản lý là nhà cung cấp dịch vụ
Trang 22Hình 1.4 Mô hình đám mây công cộng (Public cloud)
1.4.2 Đám mây riêng (Private cloud)
Đám mây riêng (Private cloud) là các dịch vụ điện toán đám mây được cung cấp trong các doanh nghiệp Những “đám mây” này tồn tại bên trong tường lửa của công ty và được các doanh nghiệp trực tiếp quản lý Đây là xu hướng tất yếu cho các doanh nghiệp nhằm tối ưu hóa hạ tầng công nghệ thông tin
Đối tượng sử dụng: Nội bộ doanh nghiệp sử dụng và quản lý
Ưu điểm: Chủ động sử dụng, nâng cấp, quản lý, giảm chi phí, bảo mật tốt,…
Nhược điểm:
– Khó khăn về công nghệ khi triển khai và chi phí xây dựng, duy trì hệ thống
Trang 23– Hạn chế sử dụng trong nội bộ doanh nghiệp, người dùng ở ngoài không thể sử dụng
Hình 1.5 Mô hình đám mây riêng (Private cloud)
1.4.3 Đám mây lai (Hybrid cloud)
Đám mây lai (Hybrid cloud) là sự kết hợp của private cloud và public cloud Cho phép ta khai thác điểm mạnh của từng mô hình cũng như đưa ra phương thức sử dụng tối ưu cho người sử dụng Những “đám mây” này thường
do doanh nghiệp tạo ra và việc quản lý sẽ được phân chia giữa doanh nghiệp và nhà cung cấp điện toán đám mây công cộ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
Trang 24Đối tượng sử dụng: Doang nghiệp và nhà cung cấp quản lý theo sự thỏa thuận Người sử dụng có thể sử dụng các dịch vụ của nhà cung cấp và dịch vụ riêng của doanh nghiệp
Ưu điểm: Doanh nghiệp một lúc có thể sử dụng được nhiều dịch vụ mà không bị giới hạn
Nhược điểm: Khó khăn trong việc triển khai và quản lý Tốn nhiều chi phí
Hình 1.6 Mô hình đám mây lai (Hybrid cloud)
1.4.4 Đám mây cộng đồng (Community cloud)
Đám mây cộng đồng (Community cloud) là một mô hình triển khai điện toán đám mây mới, bao gồm nhiều doanh nghiêp liên kết với nhau Các doanh
Trang 25nghiệp sẽ sử dụng các ứng dụng lẫn nhau phục vụ công việc Các doanh nghiệp tham gia mô hình này buộc phải tin tưởng lẫn nhau Các đám mây này được chia sẻ bởi một số tổ chức và hỗ trợ một cộng đồng cụ thể có mối quan tâm chung (ví dụ: chung sứ mệnh, yêu cầu an ninh, chính sách ) Nó có thể được quản lý bởi các tổ chức hoặc một bên thứ ba
Đối tượng sử dụng: Các doanh nghiệp tham gia mô hình đều có quyền sử dụng các dịch vụ được cung cấp từ các doanh nghiệp khác
Ưu điểm: Tốc độ nhanh, tiết kiệm cho phí, được sử dụng những ứng dụng tốt nhất từ các doanh nghiệp hợp tác
Nhược điểm: Rất nguy hiểm về vấn đề bảo mật giữa các doanh nghiệp
1.5 Các tính năng chính của điện toán đám mây
1.5.1 Khả năng có dãn (Rapid elasticity)
Tài nguyên có thể được cung cấp một cách nhanh chóng và mềm dẻo, có khả năng thay đổi tăng lên hay giảm đi tùy thuộc vào nhu cầu sử dụng của khách hàng Đối với khách hàng tài nguyên trên điện toán đám mây luôn luôn sẵn sàng và có thể coi là không giới hạn, có thể truy cập vào bất kỳ thời điểm nào
1.5.2 Dịch vụ theo nhu cầu (On-demand self-service)
Khách hàng có thể được cung cấp tài nguyên dưới dạng máy chủ hay dung lượng lưu trữ,…một cách tự động theo yêu cầu mà không cần phải có sự can thiệp từ phía nhà cung cấp dịch vụ
1.5.3 Không phụ thuộc vị trí (Location independent resource pooling)
Khách hàng không biết và cũng không điều khiển vị trí của tài nguyên được cung cấp, tuy nhiên họ vẫn có thể làm điều này thông qua các dịch vụ nâng cao của nhà cung cấp Tài nguyên có thể bao gồm: Lưu trữ, xử lý, bộ nhớ
và băng thông mạng
Trang 261.5.4 Truy cập dễ dàng (Broad network access)
Chỉ cần 1 ứng dụng kết nối internet từ bất cứ thiết bị nào như máy tính
để bàn, laptop, thiết bị di động,…người dùng có thể truy cập tới tài nguyên đám mây
1.5.5 Điều tiết dịch vụ (Measured service)
Các hệ thống điện toán đám mây có khả năng tự điều khiển và tinh chỉnh tài nguyên sử dụng bằng cách áp dụng các biện pháp đo lường ở các cấp độ khác nhau cho từng loại dịch vụ Tài nguyên sử dụng có thể được giám sát, đo lường và khách hàng thường sẽ chỉ trả phí cho lượng tài nguyên họ sử dụng
1.6 Các vấn đề về ảo hóa máy chủ
1.6.1 Khái niệm ảo hóa máy chủ
Ảo hóa máy chủ là một công nghệ được ra đời nhằm khai thác triệt để khả năng làm việc của các phần cứng trong một hệ thống máy chủ Nó hoạt động như một tầng trung gian giữa hệ thống phần cứng máy tính và phần mềm chạy trên nó Ý tưởng của công nghệ ảo hóa máy chủ là từ một máy vật lý đơn
lẻ có thể tạo thành nhiều máy ảo độc lập Ảo hóa cho phép tạo nhiều máy ảo trên một máy chủ vật lý, mỗi một máy ảo cũng được cấp phát tài nguyên phần cứng như máy thật gồm có Ram, CPU, Card mạng, ổ cứng, các tài nguyên khác
và hệ điều hành riêng Khi chạy ứng dụng, người sử dụng không nhận biết được ứng dụng đó chạy trên lớp phần cứng ảo
Các bộ xử lý của hệ thống máy tính lớn được thiết kế hỗ trợ công nghệ
ảo hoá và cho phép chuyển các lệnh hoặc tiến trình nhạy cảm của các máy ảo có thể ảnh hưởng trực tiếp đến tài nguyên hệ thống cho hệ điều hành chủ xử lý, sau
đó lớp ảo hóa sẽ mô phỏng kết quả để trả về cho máy ảo Tuy nhiên không phải tất cả cảc bộ xử lý đều hỗ trợ ảo hóa Các bộ xử lý cũ trên máy để bàn không có
hỗ trợ chức năng này Ngày nay hai nhà sản xuất bộ xử lý lớn trên thế giới là Intel và AMD đều cố gắng tích hợp công nghệ ảo hóa vào trong các sản phẩm
Trang 27của họ Các bộ xử lý có ứng dụng ảo hóa thường là Intel VT(Virtual Technology) hoặc AMD Pacifica
Hình 1.7 Các máy ảo trong một server vật lý
1.6.2 Sự cần thiết của ảo hóa máy chủ
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
Trang 28nay, các tập đoàn lớn 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
1.6.3 Các loại ảo hóa
Trước khi đi vào chi tiết các công nghệ ảo hóa xin được sơ lược một số khái niệm liên quan đến việc xử lý trên tài nguyên phần cứng của một hệ điều hành (HĐH) Thông thường một HĐH khi được cài đặt sẽ có 2 modes hoạt động chính:
Kernel mode: đây là không gian được bảo vệ nơi mà “nhân” của HĐH xử lý và tương tác trực tiếp với phần cứng Một ví dụ điển hình cho Kernel mode là các drivers của thiết bị Khi có sự cố thì
hệ thống ngưng hoạt động và thông báo lỗi như ở windows sẽ hiển thị màn hình xanh khi có lỗi giao tiếp phần cứng
User mode: đây là không gian nơi các ứng dụng chạy, ví dụ Office, MySQL, hay Exchange server Khi có sự cố ở các ứng dụng thì chỉ có các ứng dụng ngưng hoạt động mà không ảnh hưởng gì đến server
Khi một ứng dụng cần truy cập vào tài nguyên phần cứng, ví dụ đĩa cứng hay network interface, ứng dụng đó cần giao tiếp với driver thích hợp chạy trong kernel mode Sự chuyển đổi qua lại giữa User mode và Kernel mode cũng
là những “tiến trình-process” và cũng chiếm dụng tài nguyên hệ thống (CPU, RAM, …)
Hypervisor
Khi một ứng dụng cần truy cập vào tài nguyên phần cứng, ví dụ đĩa cứng hay network interface, ứng dụng đó cần giao tiếp với driver thích hợp chạy trong kernel mode Sự chuyển đổi qua lại giữa User mode và Kernel mode cũng
Trang 29là những “tiến trình-process” và cũng chiếm dụng tài nguyên hệ thống (CPU, RAM, …)
Tất cả các loại ảo hóa được quản lý bởi VMM (Virtual Machine Monitor) VMM về bản chất cũng được chia làm 2 loại là:
VMM đóng vai trò như một phần mềm trung gian chạy trên HĐH
để chia sẻ tài nguyên với HĐH Ví dụ: VMware workstation, Virtual PC, KVM
VMM đóng vai trò là một hypervisor chạy trên phần cứng Ví dụ: VMware ESXi, Hyper-V, Xen
Hypervisor là một phần mềm nằm ngay trên phần phần cứng hoặc bên dưới HĐH nhằm mục đích cung cấp các môi trường tách biệt gọi là các phân vùng – partition Mỗi phân vùng ứng với mỗi máy ảo-VM có thể chạy các HĐH độc lập
Hiện nay có 2 hướng tiếp cận hypervisor khác nhau (loại 2 – hypervisor VMM) với tên gọi: Monolithic và Micro hypervisor
Hình 1.8 Mô hình Monolithic hypervisor và Micro-kernelized
hypervisor
Trang 30Monolithic hypervisor: hypervisor có driver riêng biệt để truy cập tài nguyên phần cứng bên dưới Các VMs truy cập tài nguyên hệ thống thông qua drivers của hypervisor Điều này mang lại hiệu suất cao, tuy nhiên khi driver trên hypervisor bị sự cố thì cả hệ thống ngưng hoạt động, hoặc phải đối mặt với vấn đề an ninh khi drivers có thể bị giả dạng bởi malware, một rủi ro trong môi trường ảo hóa
Micro-kernelized hypervisor: loại hypervisor này không có driver bên trong hypervisor mà chạy trực tiếp trên mỗi partition Một VM sẽ đóng vai trò partition cha quản lý và khởi tạo các partition con (VM con) VM cha cũng bao gồm nhiều tính năng khác như quản lý memory, lưu trữ drivers, … Điều này mang lại sự an toàn và tin cậy Tuy nhiên nó cũng gặp phải vấn đề về độ sẵn sàng (availability) khi partition cha gặp sự cố, hệ thống cũng bị ngưng trệ
Full-virtualization
Hình 1.9 Kiến trúc Full-virtualization
Full-virtualization là công nghệ ảo hóa để cung cấp 1 loại hình máy ảo dưới dạng mô phỏng của 1 máy chủ thật với đầy đủ tất cả các tính năng bao gồm input/output operations, interrupts, memory access, … Hình 3 miêu tả mô hình ảo hóa FullVirtualization với layer Virtualization để thực hiện chức năng
ảo hóa, cung cấp các máy chủ ảo (Guest OS) [1] Tuy nhiên mô hình ảo hóa này
Trang 31không thể khai thác tốt hiệu năng khi phải thông qua một trình quản lý máy ảo (Virtual Machines monitor hay hypervisor) để tương tác đến tài nguyên hệ thống (mode switching) Vì vậy sẽ bị hạn chế bớt 1 số tính năng khi cần thực hiện trực tiếp từ CPU Xen, VMWare workstation, Virtual Box, Qemu/KVM,
và Microsoft Virtual Server hỗ trợ loại ảo hóa này [1]
Para-virtualization
Hình 1.10 Kiến trúc Para-virtualization
Para-virtualization hay còn gọi là ảo hóa “một phần” là kỹ thuật ảo hóa được hỗ trợ và điều khiển bởi 1 hypervisor nhưng các Oss của guest thực thi các lệnh không phải thông qua Hypervisor (hay bất kỳ 1 trình quản lý máy ảo nào) nên không bị hạn chế về quyền hạn Tuy nhiên nhược điểm của loại ảo hóa này
là các OS biết đang chạy trên 1 nền tảng phần cứng ảo và khó cấu hình cài đặt
Ảo hóa Para-Virtualization được hỗ trợ bởi Xen, VMware, Hyper-V, và UML [2]
OS-level virtualization (Isolation)
Trang 32Hình 1.1 Kiến trúc Para-virtualization
OS level virtualization, còn gọi là containers Virtualization hay Isolation:
là phương pháp ảo hóa mới cho phép nhân của hệ điều hành hỗ trợ nhiều instances được cách ly dựa trên một HĐH có sẵn cho nhiều users khác nhau, hay nói cách khác là tạo và chạy được nhiều máy ảo cách ly và an toàn (secure) dùng chung 1 HĐH Ưu điểm của ảo hóa này là bảo trì nhanh chóng nên được ứng dụng rộng rãi trong các lĩnh vực hosting OpenVZ, Virtuozzo, Linux-VServer, Solaris Zones, và FreeBSD Jails hỗ trợ loại ảo hóa này [2] Một lưu ý
là loại ảo hóa Isolation này chỉ tồn tại trên HĐH Linux
1.6.4 Vấn đề an ninh trong ảo hóa máy chủ
Tăng cường cho máy trạm ảo
Việc tăng cường khả năng bảo vệ phù hợp cho triển khai cài đặt máy ảo (bao gồm tường lửa, Hệ thống phòng ngừa xâm nhập trái phép máy chủ (Host Intrusion Prevension System - HIPS ), bảo vệ ứng dụng web, chống virus, giám sát tính toàn vẹn của tệp, giám sát các tệp lưu ký) có thể được phân phối thông qua phần mềm trong từng máy trạm hoặc sử dụng một máy ảo nội tuyến kết hợp với các giao diện lập trình ứng dụng API, dựa trên trình ảo hóa như VMware Vshield
An ninh của trình ảo hóa
Bản thân trình ảo hóa cần phải được “khóa” và được tăng cường sử dụng những biện pháp bảo vệ tốt nhất Các doanh nghiệp và người sử dụng ảo hóa
Trang 33cần quan tâm đến việc quản lý, thiết lập cấu hình và vận hành phù hợp, cũng như an ninh vật lý của máy chủ có chứa trình ảo hóa
Các tấn công bên trong các máy ảo và các “điểm mù” [3]
Ảo hóa có một ảnh hưởng lớn lên an ninh mạng Các máy ảo có thể giao tiếp với nhau qua một bo mạch chủ của phần cứng thay vì qua mạng Kết quả
là, các kiểm soát an ninh tiêu chuẩn của mạng bị “mù” đối với cách thức truyền dẫn này và không thể thực hiện được việc giám sát hoặc khóa nội tuyến Các thiết bị ảo nội tuyến sẽ giúp giải quyết vấn đề này khi tiến hành tích hợp mức giao diện lập trình ứng dụng (API) với các trình ảo hóa và các khung quản lý ảo hóa Việc cài đặt một tập hợp đầy đủ các công cụ an ninh lên từng máy ảo cũng
là một cách tiếp cận khác
Các mối lo về sự thực thi
Việc cài đặt phần mềm an ninh được thiết kế cho các máy chủ vật lý lên một máy chủ ảo có thể gây ra sự “thoái hóa” nghiêm trọng trong sự thực thi, khi một số nhiệm vụ về an ninh như quét virus chủ yếu tập trung vào CPU Môi trường chia sẻ trong các máy chủ được ảo hóa có thể bị xung đột về tài nguyên Đặc biệt với các máy để bàn ảo hoặc các môi trường mật độ cao, các phần mềm
an ninh cần phải có là các phần mềm “ảo hóa” hoặc nó cần phải thực hiện các chức năng về an ninh trên một máy ảo duy nhất để hỗ trợ các máy ảo khác Sự khác biệt trong mật độ có thể sẽ lớn hơn gấp tới 20 lần, phụ thuộc vào tải và khả năng thực thi của máy chủ
Sự phức tạp của vận hành từ sự “bò trườn” của các máy ảo
Do các máy ảo có thể được thiết lập và cài đặt một cách dễ dàng nên dẫn tới sự gia tăng về số lượng các yêu cầu đối với các máy ảo trong các doanh nghiệp điển hình Điều này tạo ra một giao diện dễ bị tấn công lớn hơn bởi xuất hiện thêm các lỗ hổng an ninh trong quá trình thiết lập cấu hình Do đó, chính sách dựa vào sự quản lý và sử dụng khung quản lý ảo hóa là hết sức quan trọng
Các lỗ hổng tức thời
Trang 34Do tốc độ phát sinh các mối đe dọa rất nhanh nên sẽ tạo ra một tình huống: Một máy ảo có thể được thiết lập cấu hình an ninh khi nó được tắt, nhưng vào thời điểm nó được khởi động lại, thì những mối đe dọa đã tiến hóa, nên máy tính đã xuất hiện những điểm yếu mới Những quy định về an ninh mạng và “việc vá ảo” sẽ giám sát đường đi đối với những cuộc tấn công được biết, trước khi nó có thể lây lan tới một máy ảo được chuẩn bị hoặc được khởi tạo mới Cũng có khả năng tăng cường các khả năng dạng Kiểm soát truy cập mạng NAC (Network Access Control) để cô lập các máy ảo đã phát sinh lỗ hổng cho tới khi các qui định các tệp mẫu của chúng được cập nhật và một quá trình quét được tiến hành
Mã hóa máy ảo[3]
Các “ảnh” máy ảo có khả năng bị tổn thương vì sự ăn cắp hoặc sửa đổi khi chúng ngừng hoặc đang hoạt động Giải pháp cho vấn đề này là mã hóa các ảnh máy ảo mọi lúc, nhưng khi đó sẽ xuất hiện những mối lo về sự thực thi Đối với những tổ chức, doanh nghiệp đòi hỏi mức độ an ninh cao hoặc các môi trường được điều chỉnh, thì chi phí cho sự thực thi mã hóa là đáng giá Mã hóa phải được kết hợp với với các kiểm soát và theo dõi kiểm toán hành chính để ngăn ngừa “ảnh chụp” máy ảo, kẻ tấn công có thể truy cập tới các dữ liệu trong ảnh chụp máy ảo đó
Sự hỗn tạp của các dữ liệu
Có mối lo rằng các lớp dữ liệu khác nhau (hoặc việc chứa các lớp dữ liệu khác nhau của các máy ảo) có thể bị trộn lẫn nhau trong cùng một máy vật lý Theo các điều khoản của PCI, phương thức triển khai pha trộn được khuyến cáo nên sử dụng kết hợp VLAN, tường lửa và IDS/IPS để đảm bảo cô lập các máy
ảo Cơ chế sử dụng cũng được khuyến cáo phân thành các chủng loại và chính sách cho các dữ liệu được quản lý Trong các môi trường ĐTĐM, mẫu số chung nhỏ nhất về an ninh có thể được chia sẻ một cách tiềm tàng cho tất cả các nhà cung cấp dịch vụ cùng tham gia trong một môi trường ảo
Phá hủy dữ liệu máy ảo
Trang 35Khi một máy ảo được chuyển từ máy chủ vật lý này sang máy chủ vật lý khác, thì các doanh nghiệp cần đảm bảo rằng, không bit dữ liệu nào bị bỏ quên trên ổ đĩa mà có thể phục hồi lại được Mã hóa tất cả các dữ liệu là giải pháp cho vấn đề này Hơn nữa, nếu một máy ảo được chuyển đổi trong khi nó đang chạy, thì bản thân nó có thể gặp rủi ro trong quá trình chuyển đổi nếu sự mã hóa không được sử dụng
Giả mạo ảnh máy ảo
Các thiết bị và các ảnh máy ảo được thiết lập cấu hình trước nhưng có thể không đúng hoặc có thể bị giả mạo trước khi người dùng khởi động chúng
1.6.5 Ưu nhược điểm của ảo hóa máy chủ
- Máy ảo có thể cung cấp ảnh ảo của phần cứng, hay cấu hình phần cứng mà ta không có (chẳng hạn như thiết bị SCSI, đa xử lý, ) Ảo hóa cũng có thể được sử dụng để mô phỏng mạng hay các máy tính độc lập
- Máy ảo có thể được sử dụng để chạy nhiều hệ điều hành cùng một lúc: các phiên bản khác nhau hay thậm chí các hệ điều hành khác nhau
- Máy ảo cho phép cơ chế sửa lỗi mạnh mẽ và giám sát hiệu năng Ta
có thể đặt vào một số công cụ ví dụ như là virtual machine monitor
Trang 36(VMM) Hệ điều hành có thể sửa lỗi mà không làm mất mát hiệu suất, hay thiết lập những kịch bản sửa lỗi phức tạp hơn
- Máy ảo có thể cách ly với những gì nó chạy, vì thế nó có thể ngăn chặn thiếu sót và lỗi Ta có thể chủ động đặt lỗi vào phần mềm để nghiên cứu cách xử lý tuần tự của nó
- Máy ảo làm cho phần mềm di chuyển dễ dàng hơn, vì thế những ứng dụng trợ giúp và hệ thống có tính di động
- Máy ảo là công cụ tuyệt vời để thử nghiệm lý thuyết Từ khi chúng cung cấp sự cách ly, chúng có thể làm việc an toàn hơn Chúng đóng gói toàn bộ trạng thái của hệ thống đang chạy: Người sử dụng có thể lưu trạng thái, khảo sát nó, sửa đổi nó, nạp lại nó và v.v
- Ảo hóa có thể khởi tạo hệ điều hành có sẵn để chạy trên những bộ nhớ
đa xử lý được chia sẻ
- Máy ảo có thể được sử dụng để tạo ra các kịch bản test tùy ý, và có thể dẫn đến vài ý tưởng rất sáng tạo, chất lượng, hiệu quả
- Ảo hóa có thể tạo ra các tác vụ như là di chuyển hệ thống, sao lưu, phục hồi & quản lí dễ dàng, thuận tiện hơn
Nhược điểm:
- Giải pháp ảo hóa có điểm nút sự cố (single point of failure): Hạn chế lớn nhất của ảo hóa là nó có một điểm nút sự cố Khi một máy, mà trên đó, mọi giải pháp ảo hóa đang chạy, gặp sự cố hay khi chính giải pháp ảo hóa gặp sự cố, sẽ làm crash mọi thứ Điều này nghe thật đáng
sợ nhưng thực tế rủi ro này tương đối dễ phòng Tăng sức chứa và thường xuyên sao lưu hệ điều hành ảo (cùng với ứng dụng ảo) là một cách thức giúp giảm thiểu nguy cơ mất dữ liệu và thời gian chết do single point of failure
- Ảo hóa yêu cầu những cỗ máy mạnh mẽ: Ảo hóa có thể tiết kiệm được tiền bạc bởi vì nó đòi hỏi ít phần cứng hơn và điều này cho phép hạn chế số lượng máy vật lý trong một doanh nghiệp nhưng nó không
Trang 37có nghĩa là có khả năng sử dụng các máy tính cổ lỗ sĩ để chạy các giải pháp ảo hỏa mới Các giải pháp ảo hóa đòi hỏi một cỗ máy thật sự mạnh mẽ Nếu cỗ máy được sử dụng không đủ mạnh, vẫn có thể triển khai các giải pháp ảo hóa nhưng khi mà không có đủ sức mạnh CPU
và RAM cho chúng, nó sẽ thực sự làm gián đoạn công việc
- Ảo hóa có thể dẫn đến hiệu năng thấp: Thậm chí nếu cỗ máy mà trên
đó các hệ điều hành và ứng dụng ảo đang chạy đủ mạnh, vấn đề hiệu năng vẫn có khả năng xảy ra Một trong những thực tế gặp phải đó là một ứng dụng khi chạy trên môi trường không ảo hóa thì hoạt động tốt nhưng lại gặp vấn đề khi chạy trên hệ thống ảo hóa Ví dụ: Hiệu suất của stress test trong môi trường ảo hóa có kết quả rất khác (và sai lệch) khi so sánh với stress test trên một máy dành riêng Điều tốt nhất cần làm khi triển khai trên một nền tảng ảo hóa là luôn kiểm tra và theo dõi sát sao các vấn đề tiềm ẩn
- Ứng dụng ảo hóa không phải luôn luôn khả dụng: Trong khi trong hầu hết các trường hợp không thể dự đoán chính xác được một ứng dụng
cụ thể có thể hoạt động tốt khi được ảo hóa hay không thì cũng có một
số ứng dụng khác qua thực tiễn cho thấy bị suy giảm hiệu năng khi được ảo hóa
- Rủi ro lỗi vật lý cao: Rất tuyệt vời để lưu trữ/chạy 5 Server (ảo)rất quan trọng trong chỉ một Server vật lý
Trang 38Chương 2 MÔ HÌNH KIẾN TRÚC ẢO HÓA ĐIỆN TOÁN
ĐÁM MÂY
Chương 2 sẽ nghiên cứu một số mô hình ảo hóa điện toán đám mây và đưa ra phân tích đánh giá
2.1 Mô hình kiến trúc ảo hóa điện toán đám mây từ VMware
Hình 2.1 Tổng quan kiến trúc điện toán đám mây của Vmware
Kiến trúc ảo hóa điện toán đám mây của Vmware được chia thành ba lớp:
Software-Defined Data Center Core Infrastructure (SDDC Core Infrastructure)
Cơ sở của việc triển khai vCloud Suite là lớp trừu tượng tài nguyên Bằng cách sử dụng phần mềm VMware, ta có thể ảo hóa các tài nguyên tính toán, mạng
Trang 39và lưu trữ trong trung tâm dữ liệu và tóm tắt chúng từ phần cứng cơ bản ESXi và vCenter Server cho phép thiết lập một môi trường ảo hóa mạnh mẽ trong đó tất cả các giải pháp khác tích hợp Lớp trừu tượng tài nguyên cung cấp nền tảng cho việc tích hợp các giải pháp sắp xếp và theo dõi bởi VMware Các quy trình và công nghệ
bổ sung được xây dựng trên cơ sở hạ tầng cho phép cơ sở hạ tầng như một dịch vụ
và nền tảng như một dịch vụ
Infrastructure Service
Các dịch vụ cơ sở hạ tầng giới thiệu việc cung cấp các máy ảo một cách nhanh chóng, tự cung cấp các đám mây vật lý, ảo hóa hay lai Lớp IaaS được đại diện bởi vRealize Automation, cung cấp dịch vụ cung cấp, quản lý danh mục, quản
lý chính sách và ủy quyền
Application Platform Service
Dịch vụ nền tảng ứng dụng cho phép triển khai đầu cuối và cấu hình ứng dụng
Loại bỏ sự thay đổi và đạt được một cơ sở hạ tầng có thể quản
lý và hỗ trợ, chuẩn hóa cấu hình vật lý của các máy chủ ESXi
Trang 40- vCenter server: là một ứng dụng về cơ sở dữ liệu cho phép triển khai, quản lý, giám sát, tự động hoá, và bảo mật cho cơ sở hạ tầng ảo một cách dễ dàng
- Thiết kế mạng: Khi ảo hóa và điện toán đám mây trở nên phổ biến hơn ở trung tâm dữ liệu, một sự thay đổi trong mô hình mạng ba tầng truyền thống đang diễn ra Mô hình truy cập tổng hợp cốt lõi - lõi đang được thay thế và đáp ứng các yêu cầu
Mạng phải được thiết kế để đáp ứng nhu cầu đa dạng của nhiều thực thể khác nhau Các thực thể này bao gồm các ứng dụng, dịch vụ, bộ nhớ, quản trị viên và người dùng
Thiết kế mạng cần cải thiện tính khả dụng
Thiết kế mạng phải đảm bảo mức độ an toàn An ninh có thể đạt được thông qua kiểm soát truy cập khi cần thiết và cô lập nếu cần thiết
Đơn giản hóa kiến trúc mạng
Cấu hình các tên nhóm cổng thông thường trên máy chủ để hỗ trợ di chuyển máy ảo và chuyển đổi dự phòng
Tách mạng cho các dịch vụ quan trọng để đạt được an ninh lớn hơn và hiệu năng tốt hơn