Tuy nhiên, trong giai đoạn suy thoái kinh tế như hiện nay, thì việc ứng dụng một công nghệ hay một dịch vụ CNTT đáp ứng việc quản lý tốt, hiệu quả dữ liệu của riêng công ty cũng như dữ l
Trang 1ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
NGUYỄN THỊ CHÂM ANH
TÌM HIỂU VÀ ỨNG DỤNG CÔNG NGHỆ CLOUD COMPUTING VỚI NỀN TẢNG GOOGLE APP ENGINE
LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN
Hà Nội – 2012
Trang 2ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
NGUYỄN THỊ CHÂM ANH
TÌM HIỂU VÀ ỨNG DỤNG CÔNG NGHỆ CLOUD COMPUTING VỚI NỀN TẢNG GOOGLE APP ENGINE
Ngành: Công nghệ thông tin
Chuyên ngành: Hệ thống thông tin
Mã số: 60.48.05
LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN
NGƯỜI HƯỚNG DẪN KHOA HỌC: TS Nguyễn Thế Lộc
Hà Nội – 2012
Trang 3MỤC LỤC
MỤC LỤC 3
BẢNG KÝ HIỆU CÁC CHỮ VIẾT TẮT 6
CHƯƠNG 1.TỔNG QUAN VỀ CLOUD COMPUTING 8
1.1 Khái niệm Cloud Computing 8
1.2 Tính chất cơ bản 11
1.2.1 Tự phục vụ theo nhu cầu (On-demand self-service) 11
1.2.2 Truy xuất diện rộng (Broad network access) 11
1.2.3 Dùng chung tài nguyên (Resource pooling) 12
1.2.4 Khả năng co giãn (Rapid elasticity) 12
1.2.5 Điều tiết dịch vụ (Measured service) 12
1.3 Các mô hình Cloud Computing 12
1.3.1 Mô hình dịch vụ 13
1.2.1.1 Infrastructure as a Service – IaaS 13
1.2.1.2 Platform as a Service – PaaS 13
1.2.1.3 Software as a Service – SaaS 14
1.3.2 Mô hình triển khai 14
1.3.2.1 Public Cloud 14
1.3.2.2 Private Cloud 15
1.3.2.3 Hybrid Cloud 16
1.4 Kiến trúc điện toán đám mây 17
1.5 So sánh 19
1.6 Lợi ích và hạn chế của ĐTĐM 19
1.6.1 Lợi ích của ĐTĐM 19
1.6.1.1 Miễn phí 19
1.6.1.2 Dễ tiếp cận 19
1.6.1.3 Khả năng tự phục vụ 20
1.6.1.4 Di động 20
1.6.1.5 Linh hoạt 20
1.6.1.6 Tài nguyên dùng chung 20
1.6.1.7 Khả năng liên kết 20
1.6.1.8 Khả năng tự động hoá 20
1.6.1.9 Khả năng nhận biết thiết bị đầu cuối 21
1.6.1.10 Khả năng co giãn 21
1.6.2 Một số hạn chế 21
1.6.2.1 Vấn đề bảo mật 22
1.6.2.2 Mất kiểm soát và phụ thuộc 22
CHƯƠNG 2.CÔNG NGHỆ ẢO HÓA 24
2.1 Ảo hóa là gì? 24
2.2 Lợi ích từ ảo hóa 24
2.3 Các phương pháp ảo hóa phổ biến: 25
2.3.1 Ảo hóa máy chủ (Server Vitualization) 25
2.3.2 Ảo hóa ứng dụng (Application virtualization) 25
2.3.3 Ảo hóa lưu trữ 26
2.4 Ảo hóa máy chủ với Hyper-V 27
2.4.1 Tổng quan, kiến trúc 27
2.4.2 Các tính năng 28
Trang 42.4.3 Lợi ích khi triển khai Hyper -V 30
CHƯƠNG 3.AN NINH TRÊN CLOUD 36
3.1 Những thách thức 36
3.2 Bảo mật cho SaaS 38
3.2.1 Quản trị an ninh 38
3.2.2 Quản lý rủi ro 38
3.2.3 Đánh giá rủi ro 39
3.2.4 Chính sách, tiêu chuẩn và chỉ dẫn 39
3.2.5 Chu trình phát triển phần mềm an toàn 39
3.2.6 Giám sát bảo mật và đối phó với các tình huống bất ngờ 40
3.2.7 Thiết kế cấu trúc bảo mật 40
3.2.8 An ninh Vật lý 41
CHƯƠNG 4 CÔNG NGHỆ CLOUD COMPUTING CỦA CÁC HÃNG LỚN: IBM, MICROSOFT, GOOGLE, AMAZON 42
4.1 Công nghệ ĐTĐM của IBM 42
4.2.1 Dịch vụ Amazon Simple Storage Service (S3) 44
4.2.3 Dịch vụ Amazon SimpleDB (SDB) 46
4.3 Công nghệ ĐTĐM của Google 46
4.3.1 Giới thiệu về Google Apps 47
4.3.1.1 Google Email 47
4.3.1.2 Google Docs 47
4.3.1.3 Google Calendar 48
4.3.1.4 Google Talk 48
4.3.1.5 Google Sites 48
4.3.1.6 Google Video 48
4.3.1.7 GoogleGroups 48
4.3.1.8 GoogleWave 49
4.3.2 Yêu cầu để sử dụng được Google App Engine 49
4.3.3 Dịch vụ và hình thức thanh toán Google App Engine 49
4.3.4 Giới thiệu ngôn ngữ lập trình java 2.0 trên Google Apps Engine 50
4.3.4.1 Giới thiệu lịch sử ra đời 51
4.3.4.2 Xây dựng Website trên Google App Engine dựa trên nền tảng Java 2.0 51
4.4 Công nghệ ĐTĐM của Microsoft 52
4.4.1 Nền tảng Windows Azure 52
4.4.3 Windows Azure 52
4.4.4 SQL Azure 54
4.4.5 Windows Azure Platform AppFabric 55
4.4.6 Các thành phần của Windows Azure Platform AppFabric : 55
4.4.7 Mô hình của một ứng dụng trên Windows Azure 57
CHƯƠNG 5 ỨNG DỤNG CLOUD COMPUTING TRÊN NỀN TẢNG GOOGLE APP ENGINE 58
5.1 Công nghệ Google App Engine 58
5.1.1 Tổng quan về Google App Engine 58
5.1.2 Môi trường phát triển 58
5.1.3 Mô hình kiến trúc và các dịch vụ của GAE 60
5.1.3.1 Các file server tĩnh (static server files) 61
5.1.3.2 Tổ chức và lưu trữ dữ liệu (Datastore) 61
Trang 55.1.3.3 Quản lý vùng nhớ đệm (Memcache) 62
5.1.3.4 Dịch vụ giao tiếp web (URL Fetch) 63
5.1.3.5 Dịch vụ thƣ điện tử (Mail) 64
5.1.3.6 Một số dịch vụ khác 64
5.1.4 Công cụ quản lý ứng dụng 64
5.2 Xây dựng và triển khai ứng dụng trên GAE 65
5.2.1 Công cụ xây dựng ứng dụng 65
5.2.2 Cài đặt Plugin cho Eclipse 65
5.2.3 Xây dựng ứng dụng trên GAE 67
5.2.4 Triển khai ứng dụng 68
5.3 Ứng dụng website Quản lý du lịch 69
5.3.1 Giới thiệu ứng dụng 69
5.3.2 Phân tích thiết kế hệ thống 69
5.3.2.1 Biểu đồ use case 69
5.3.2.2 Biểu đồ lớp 70
5.3.2.3 Biểu đồ hoạt động 71
5.3.2.4 Biểu đồ trạng thái 72
5.3.2.5 Biểu đồ tuần tự 72
5.3.3 Lập trình ứng dụng 73
5.3.4 Cách sử dụng trang Web Quản lý du lịch 75
5.3.3.1 Truy cập trang web Quản lý du lịch 75
5.3.3.2 Quản trị Web 76
5.3.3.3 Đặt tour 80
KẾT LUẬN 83
TÀI LIỆU THAM KHẢO 84
Trang 6BẢNG KÝ HIỆU CÁC CHỮ VIẾT TẮT
STT Tên viết
tắt
1 API Application Programming Interfaces Giao diện lập trình ứng
dụng
2 CNTT Information Technology Công Nghệ Thông Tin
4 CSDLQH Relational Database Cơ sở dữ liệu quan hệ
6 EC2 Amazon Elastic Compute Cloud Nền tảng tính toán của
Amazon
7 GAE Google App Engine Công nghệ nền tảng điện
toán đám mây của Google
8 IaaS Infrastructure as a Service Hạ tầng nhƣ một dịch vụ
9 JDK Java Development Kit Bộ công cụ phát triển ứng
dụng ngôn ngữ Java
10 JDO Java Data Objects Các đối tƣợng dữ liệu Java
12 PaaS Platform as a Service Nền tảng nhƣ một dịch vụ
13 SaaS Software as a Service Phần mềm nhƣ một dịch vụ
14 SDK Software Development Kit Bộ công cụ phát triển phần
mềm
15 URL Uniform Resource Locator Địa chỉ truy cập tài nguyên
Internet
Trang 7LỜI NÓI ĐẦU
Ngày nay công nghệ thông tin phát triển rất nhanh chóng, nắm giữ vai trò quan trọng trong việc thúc đấy sự tăng trưởng kinh tế, với sự ra đời của rất nhiều công nghệ mới, các dịch vụ CNTT đáp ứng nhu cầu của người dùng cũng như là các doanh nghiệp, Tuy nhiên, trong giai đoạn suy thoái kinh tế như hiện nay, thì việc ứng dụng một công nghệ hay một dịch vụ CNTT đáp ứng việc quản lý tốt, hiệu quả dữ liệu của riêng công ty cũng như dữ liệu khách hàng, đối tác là một trong những bài toán được
ưu tiên hàng đầu và đang không ngừng gây khó khăn cho doanh nghiệp Để có thể quản lý được nguồn dữ liệu đó, ban đầu các doanh nghiệp phải đầu tư, tính toán rất nhiều loại chi phí như chi phí cho phần cứng, phần mềm, mạng, chi phí cho quản trị viên, chi phí bảo trì, sửa chữa,…Ngoài ra họ còn phải tính toán khả năng mở rộng, nâng cấp thiết bị; phải kiểm soát việc bảo mật dữ liệu cũng như tính sẵn sàng cao của
dữ liệu Để giải quyết vấn đề trên thì chúng ta thấy được rằng nếu có một nơi tin cậy giúp các doanh nghiệp quản lý tốt nguồn dữ liệu đó, các doanh nghiệp sẽ không còn quan tâm đến cơ sở hạ tầng, công nghệ mà chỉ tập trung chính vào công việc kinh doanh của họ thì sẽ mang lại cho họ hiệu quả và lợi nhuận ngày càng cao hơn Khái niệm “điện toán đám mây” (ĐTĐM) đã ra đời trong hoàn cảnh đó và đang dần trở nên quen thuộc đối với các doanh nghiệp, đặc biệt là đối với các doanh nghiệp vừa và nhỏ Không nằm ngoài xu thế đó em xin đưa ra đề tài nghiên cứu về ĐTĐM và cụ thể nghiên cứu về công nghệ Google Apps Engine – một nền tảng ĐTĐM của hãng CNTT khổng lồ trên thế giới – Google nhằm hiểu hơn về công nghệ mới này và ứng dụng nó hiệu quả hơn vào thực tế
Trang 8CHƯƠNG 1
TỔNG QUAN VỀ CLOUD COMPUTING
Theo ước tính của các nhà phát triển trong lĩnh vực khoa học công nghệ thì từ năm 2015 sẽ có khoảng 15 tỉ thiết bị kết nối đến internet và hầu hết đó là những thiết
bị thông minh ví dụ như notebook, netbook, điện thoại thông minh, ô tô thông minh và thậm chí là cả những chiếc ti vi thông minh tất cả chúng đều kết nối đến internet vì thế chúng ta cần phải có một giải pháp sao cho linh hoạt để đáp ứng được những dịch vụ cho hàng loạt những thiết bị đó Không gì khác đó là mô hình dịch vụ của ĐTĐM Với trung tâm ĐTĐM đầu tiên được ra mắt vào nửa cuối năm 2008 thì Việt nam trở thành một trong những nước đầu tiên tại ASEAN ứng dụng công nghệ này, đến nay thì những dịch vụ cụ thể, ứng dụng cụ thể thì khái niệm về ĐTĐM đã dần trở nên quen thuộc
IBM là tổ chức phong trong khai trương trung tâm ĐTĐM đầu tiên ở Việt Nam vào tháng 9 năm 2008 với khách hàng đầu tiên là Công ty cổ phần công nghệ và truyền thông Việt Nam Còn Microsoft trong tháng 5/2009 vừa qua đã chính thức ký kết biên bản ghi nhớ với tập đoàn FPT nhằm thúc đẩy ĐTĐM tại Việt Nam
Ý tưởng nền tảng của ĐTĐM đã phát triển từ khá lâu trên thế giới nhưng cho đến gần đây cùng với sự bùng nổ của Internet và công nghệ mạng cũng như nhu cầu của thị trường các tên tuổi lớn trên thế giới mới bắt đầu đưa những ý tưởng trở thành những ứng dụng thật tại thị trường Việt Nam, năm 2011 là năm mà ĐTĐM ở Việt Nam đã chính thức được phát triển mạnh cả về hạ tầng và dịch vụ
Theo một số liệu nghiên cứu mới đây cho rằng đến 2012 sẽ có khoảng 35% các doanh nghiệp lớn của Mỹ ứng dụng ĐTĐM và khoảng 40% các doanh nghiệp vừa và nhỏ trên toàn thế giới ứng dụng công nghệ mới này
1.1 Khái niệm Cloud Computing
Hiện tại khái niệm về Cloud computing vẫn còn là một khái niệm mơ hồ và đang được các nhà nghiên cứu chỉnh sửa từng ngày, nhưng những ứng dụng của nó thì không quá phức tạp mà rất rõ ràng và cụ thể
Theo định nghĩa của Wikipedia thì ĐTĐM là môi trường tính toán dựa trên internet mà ở đó tất cả phần mềm, dữ liệu, tài nguyên được cung cấp cho máy tính và các thiết bị khác theo nhu cầu (tương tự như mạng điện)
Trang 9Hình 1.1 Mọi thứ đều tập trung vào đám mây
Đứng ở góc nhìn khoa học kỹ thuật cũng có nhiều định nghĩa khác nhau, trong
đó có hai định nghĩa của Ian Foster và Rajkumar Buyya được dùng khá phổ biến và có nhiều điểm tương đồng
Theo Ian Foster: Cloud Computing là m ột mô hình điện toán phân tán có tính co giãn lớn mà hướng theo co giãn về mặt kinh tế, là nơi chứa các sức mạnh tính toán, kho lưu trữ, các nền tảng và các dịch vụ được trực quan, ảo hóa và co giãn linh động, sẽ được phân phối theo nhu cầu cho các khách hàng bên ngoài thông qua Internet
Theo Rajkumar Buyya: Cloud là một loại hệ thống phân bố và xử lý song gồm
các máy tính ảo kết nối với nhau và được cung cấp động cho người dùng như một hoặc nhiều tài nguyên đồng nhất dựa trên sự thỏa thuận dịch vụ giữa nhà cung cấp và người sử dụng
Trang 10Hình 1.2 Hình ảnh Cloud Computing
Cả hai định nghĩa trên đều định nghĩa Cloud Computing là một hệ phân bố, cung cấp các dạng tài nguyên ảo dưới dạng dịch vụ một cách linh động theo nhu cầu của người dùng trên môi trường internet
Hình 1.3 ĐTĐM “di cư” các nguồn tài nguyên lên mạng Internet
Trang 11Theo Viện tiêu chuẩn và công nghệ quốc gia Bộ Thương mại Mỹ (NIST):
Điện toán đám mây là một mô hình cho phép truy cập mạng thuận tiện, theo
nhu cầu đến một kho tài nguyên điện toán dùng chung, có thể định cấu hình (ví
dụ như mạng, máy chủ, lưu trữ, ứng dụng) có thể được cung cấp và thu hồi một
cách nhanh chóng với yêu cầu tối thiểu về quản lý hoặc can thiệp của nhà cung
cấp dịch vụ
1.2 Tính chất cơ bản
Cloud Computing có năm tính chất nổi bật so với mô hình truyền thống
Hình 1.4 NIST Visual Model of Cloud Computing Definition
1.2.1 Tự phục vụ theo nhu cầu (On-demand self-service)
Mỗi khi có nhu cầu, người dùng chỉ cần gửi yêu cầu thông qua trang web cung cấp dịch vụ, hệ thống của nhà cung cấp sẽ đáp ứng yêu cầu của người dùng Người dùng có thể tự phục vụ yêu cầu của mình như tăng thời gian sử dụng server, tăng dung lượng lưu trữ… mà không cần phải tương tác trực tiếp với nhà cung cấp dịch vụ, mọi nhu cầu về dịch vụ đều được xử lý trên môi trường web (internet)
1.2.2 Truy xuất diện rộng (Broad network access)
Cloud Computing cung cấp các dịch vụ thông qua môi trường internet Do đó, người dùng có kết nối internet là có thể sử dụng dịch vụ Hơn nữa, Cloud Computing ở dạng dịch vụ nên không đòi hỏi khả năng xử lý cao ở phía client, vì vậy người dùng có thể truy xuất bằng các thiết bị di dộng như điện thoại, PDA, laptop… Với Cloud Computing người dùng không còn bị phụ thuộc vị trí nữa, họ có thể truy xuất dịch vụ
từ bất kỳ nơi nào, vào bất kỳ lúc nào có kết nối internet
Trang 121.2.3 Dùng chung tài nguyên (Resource pooling)
Tài nguyên của nhà cung cấp dịch vụ được dùng chung, phục vụ cho nhiều người dùng dựa trên mô hình “multi-tenant” Trong mô hình “multi-tenant”, tài nguyên sẽ được phân phát động tùy theo nhu cầu của người dùng Khi nhu cầu của một khách hàng giảm xuống, thì phần tài nguyên dư thừa sẽ được tận dụng để phục vụ cho một khách hàng khác Ví dụ như khách hàng A thuê 10 CPU mỗi ngày từ 7 giờ đến 11 giờ, một khách hàng B thuê 10 CPU tương tự mỗi ngày từ 13 giờ đến 17 giờ thì hai khách hàng này có thể dùng chung 10 CPU đó
Cloud Computing dựa trên công nghệ ảo hóa, nên các tài nguyên đa phần là tài nguyên ảo Các tài nguyên ảo này sẽ được cấp phát động theo sự thay đổi nhu cầu của từng khách hàng khác nhau Nhờ đó nhà cung cấp dịch vụ có thể phục vụ nhiều khách hàng hơn so với cách cấp phát tài nguyên tĩnh truyền thống
1.2.4 Khả năng co giãn (Rapid elasticity)
Đây là tích chất đặc biệt nhất, nổi bật nhất và quan trọng nhất của Cloud Computing Đó là khả năng tự động mở rộng hoặc thu nhỏ hệ thống tùy theo nhu cầu của người dùng Khi nhu cầu tăng cao, hệ thống sẽ tự mở rộng bằng cách thêm tài nguyên vào Khi nhu cầu giảm xuống, hệ thống sẽ tự giảm bớt tài nguyên
Ví dụ: khách hàng thuê một Server gồm 10 CPU Thông thường do có ít truy cập nên chỉ cần 5 CPU là đủ, khi đó hệ thống quản lý của nhà cung cấp dịch vụ sẽ tự ngắt bớt 5 CPU dư thừa, khách hàng không phải trả phí cho những CPU dư thừa này (những CPU này sẽ được cấp phát cho các khách hàng khác có nhu cầu) Khi lượng truy cập tăng cao, nhu cầu tăng lên thì hệ thống quản lý của nhà cung cấp dịch vụ sẽ tự
“gắn” thêm CPU vào, nếu nhu cầu tăng vượt quá 10 CPU thì khách hàng phải trả phí cho phần vượt mức theo thỏa thuận với nhà cung cấp
Khả năng co giãn giúp cho nhà cung cấp sử dụng tài nguyên hiệu quả, tận dụng triệt để tài nguyên dư thừa, phục vụ được nhiều khách hàng Đối với người sử dụng dịch vụ, khả năng co giãn giúp họ giảm chi phí do họ chỉ trả phí cho những tài nguyên thực sự dùng
1.2.5 Điều tiết dịch vụ (Measured service)
Hệ thống Cloud Computing tự động kiểm soát và tối ưu hóa việc sử dụng tài nguyên (dung lượng lưu trữ, đơn vị xử lý, băng thông…) Lượng tài nguyên sử dụng
có thể được theo dõi, kiểm soát và báo cáo một cách minh bạch cho cả hai phía nhà cung cấp dịch vụ và người sử dụng
1.3 Các mô hình Cloud Computing
Các mô hình Cloud Computing được phân thành hai loại:
Trang 13- Các mô hình dịch vụ (Service Models): Phân loại các dịch vụ của các nhà cung cấp dịch vụ Cloud Computing
- Các mô hình triển khai (Deployment Models): Phân loại cách thức triển khai dịch vụ Cloud Computing đến với khách hàng
1.3.1 Mô hình dịch vụ
Hiện tại có rất nhiều nhà cung cấp dịch vụ Cloud Computing cung cấp nhiều loại dịch
vụ khác nhau Tuy nhiên có ba loại dịch vụ Cloud Computing cơ bản là: dịch vụ cơ sở
hạ tầng (Infrastructure as a Service – IaaS), dịch vụ nền tảng (Platform as a Service – PaaS) và dịch vụ phần mềm (Software as a Service – SaaS) Cách phân loại này thường được gọi là “mô hình SPI”
Hình1.5 Các loại dịch vụ Cloud Computing
1.2.1.1 Infrastructure as a Service – IaaS
Trong loại dịch vụ này, khách hàng được cung cấp những tài nguyên máy tính
cơ bản (như bộ xử lý, dung lượng lưu trữ, các kết nối mạng…) Khách hàng sẽ cài hệ điều hành, triển khai ứng dụng và có thể nối các thành phần như tường lửa và bộ cân bằng tải Nhà cung cấp dịch vụ sẽ quản lý cơ sở hạ tầng cơ bản bên dưới, khách hàng
sẽ phải quản lý hệ điều hành, lưu trữ, các ứng dụng triển khai trên hệ thống, các kết nối giữa các thành phần
1.2.1.2 Platform as a Service – PaaS
Nhà cung cấp dịch vụ sẽ cung cấp một nền tảng (platform) cho khách hàng Khách hàng sẽ tự phát triển ứng dụng của mình nhờ các công cụ và môi trường phát triển được cung cấp hoặc cài đặt các ứng dụng sẵn có trên nền platform đó Khách hàng không cần phải quản lý hoặc kiểm soát các cơ sở hạ tầng bên dưới bao gồm cả mạng, máy chủ, hệ điều hành, lưu trữ, các công cụ, môi trường phát triển ứng dụng nhưng quản lý các ứng dụng mình cài đặt hoặc phát triển
Trang 141.2.1.3 Software as a Service – SaaS
Đây là mô hình dịch vụ mà trong đó nhà cung cấp dịch vụ sẽ cung cấp cho khách hàng một phần mềm dạng dịch vụ hoàn chỉnh Khách hàng chỉ cần lựa chọn ứng dụng phần mềm nào phù hợp với nhu cầu và chạy ứng dụng đó trên cơ sở hạ tầng Cloud Mô hình này giải phóng người dùng khỏi việc quản lý hệ thống, cơ sở hạ tầng,
hệ điều hành… tất cả sẽ do nhà cung cấp dịch vụ quản lý và kiểm soát để đảm bảo ứng dụng luôn sẵn sàng và hoạt động ổn định
Hình 1.6 Mô hình SPI
1.3.2 Mô hình triển khai
Cho dù sử dụng loại mô hình dịch vụ nào đi nữa thì cũng có ba mô hình triển khai chính là: Public Cloud, Private Cloud và Hybrid Cloud
1.3.2.1 Public Cloud
Các dịch vụ Cloud được nhà cung cấp dịch vụ cung cấp cho mọi người sử dụng rộng rãi Các dịch vụ được cung cấp và quản lý bởi một nhà cung cấp dịch vụ và các ứng dụng của người dùng đều nằm trên hệ thống Cloud
Người sử dụng dịch vụ sẽ được lợi là chi phí đầu tư thấp, giảm thiểu rủi ro do nhà cung cấp dịch vụ đã gánh vác nhiệm vụ quản lý hệ thống, cơ sở hạ tầng, bảo mật… Một lợi ích khác của mô hình này là cung cấp khả năng co giãn (mở rộng hoặc thu nhỏ) theo yêu cầu của người sử dụng
Trang 15Hình 1.7 Mô hình Public Cloud
Tuy nhiên Public Cloud có một trở ngại, đó là vấn đề mất kiểm soát về dữ liệu
và vấn đề an toàn dữ liệu Trong mô hình này mọi dữ liệu đều nằm trên dịch vụ Cloud,
do nhà cung cấp dịch vụ Cloud đó bảo vệ và quản lý Chính điều này khiến cho khách hàng, nhất là các công ty lớn cảm thấy không an toàn đối với những dữ liệu quan trọng của mình khi sử dụng dịch vụ Cloud
1.3.2.2 Private Cloud
Trong mô hình Private Cloud, cơ sở hạ tầng và các dịch vụ đƣợc xây dựng để phục vụ cho một tổ chức (doanh nghiệp) duy nhất Điều này giúp cho doanh nghiệp có thể kiểm soát tối đa đối với dữ liệu, bảo mật và chất lƣợng dịch vụ Doanh nghiệp sở hữu cơ sở hạ tầng và quản lý các ứng dụng đƣợc triển khai trên đó Private Cloud có thể đƣợc xây dựng và quản lý bởi chính đội ngũ IT của doanh nghiệp hoặc có thể thuê một nhà cung cấp dịch vụ đảm nhiệm công việc này
Nhƣ vậy, mặc dù tốn chi phí đầu tƣ nhƣng Private Cloud lại cung cấp cho doanh nghiệp khả năng kiểm soát và quản lý chặt chẽ những dữ liệu quan trọng
Hình 1.8 Private Cloud và Public Cloud
Trang 161.3.2.3 Hybrid Cloud
Như chúng ta đã phân tích ở trên, Public Cloud dễ áp dụng, chi phí thấp nhưng không an toàn Ngược lại, Private Cloud an toàn hơn nhưng tốn chi phí và khó áp dụng Do đó nếu kết hợp được hai mô hình này lại với nhau thì sẽ khai thác ưu điểm của từng mô hình Đó là ý tưởng hình thành mô hình Hybrid Cloud
Hình 1.9 Kết hợp Public Cloud và Private Cloud
Hybrid Cloud là sự kết hợp của Public Cloud và Private Cloud Trong đó doanh nghiệp sẽ “out-source” các chức năng nghiệp vụ và dữ liệu không quan trọng, sử dụng các dịch vụ Public Cloud để giải quyết và xử lý các dữ liệu này Đồng thời, doanh nghiệp sẽ giữ lại các chức năng nghiệp vụ và dữ liệu tối quan trọng trong tầm kiểm soát (Private Cloud)
Hình 1.10 Hybrid Cloud
Trang 17Một khó khăn khi áp dụng mô hình Hybrid Cloud là làm sao triển khai cùng một ứng dụng trên cả hai phía Public và Private Cloud sao cho ứng dụng đó có thể kết nối, trao đổi dữ liệu để hoạt động một cách hiệu quả
Hình 1.11 Triển khai ứng dụng trên Hybrid Cloud
Doanh nghiệp có thể chọn để triển khai các ứng dụng trên Public, Private hay Hybrid Cloud tùy theo nhu cầu cụ thể Mỗi mô hình đều có điểm mạnh và yếu của nó Các doanh nghiệp phải cân nhắc đối với các mô hình Cloud Computing mà họ chọn
Và họ có thể sử dụng nhiều mô hình để giải quyết các vấn đề khác nhau Nhu cầu về một ứng dụng có tính tạm thời có thể triển khai trên Public Cloud bởi vì nó giúp tránh việc phải mua thêm thiết bị để giải quyết một nhu cầu tạm thời Tương tự, nhu cầu về một ứng dụng thường trú hoặc một ứng dụng có những yêu cầu cụ thể về chất lượng dịch vụ hay vị trí của dữ liệu thì nên triển khai trên Private hoặc Hybrid Cloud
1.4 Kiến trúc điện toán đám mây
Mỗi hãng cung cấp có một kiến trúc ĐTĐM riêng và phát triển theo thế mạnh của mình Kiến trúc thể hiện rõ được khả năng cung cấp tài nguyên nhờ công nghệ ảo hóa máy chủ, ảo hóa mạng và tự động hóa Từ đó có thể tiết kiệm được tài nguyên
“rỗi” của máy chủ và điện năng Mỗi hãng đưa ra cho mình một mô hình kiến trúc ảo hóa, quản lý, tính toán và cấp phát động tài nguyên riêng để nâng cao chất lượng hệ thống của mình nhằm thu hút khách hàng đưa đến những thuận lợi cho khách hàng sử dụng dịch vụ
Phần lớn hạ tầng cơ sở của ĐTĐM hiện nay là sự kết hợp của những dịch vụ đáng tin cậy được phân phối thông qua các trung tâm dữ liệu (Data Center) Chúng được xây dựng trên những máy chủ với những cấp độ khác nhau của các công nghệ ảo
Trang 18hóa Những dịch vụ này có thể được truy cập từ bất kỳ nơi đâu trên thế giới, trong đó
“đám mây” là một điểm truy cập duy nhất cho tất cả các máy tính có nhu cầu của khách hàng Các dịch vụ thương mại cần đáp ứng yêu cầu chất lượng dịch vụ từ phía khách hàng đều đưa ra các mức thỏa thuận dịch vụ (Service level agreement)
Kiến trúc ĐTĐM nhìn chung gồm có các thành phần chính sau:
Hình 1.12 Kiến trúc Cloud Computing
Hạ tầng: Cơ sở hạ tầng (Infrastructure) của ĐTĐM là phần cứng được cung
cấp như là các dịch vụ, nghĩa là được chia sẻ và có thể sử dụng lại dễ dàng Các tài nguyên phần cứng được cung cấp theo thời gian cụ thể theo yêu cầu Dịch vụ kiểu này giúp cho khách hàng giảm chi phí bảo hành, chi phí sử dụng,…
Lưu trữ (Storage): Lưu trữ đám mây là khái niệm tách dữ liệu khỏi quá trình
xử lý và chúng được lưu trữ ở những vị trí từ xa Lưu trữ đám mây cũng bao gồm cả các dịch vụ CSDL, ví dụ như BigTable của Google, SimpleDB của Amazon,…
Cloud Runtime: Là dịch vụ phát triển phần mềm ứng dụng và quản lý các yêu
cầu phần cứng, nhu cầu phần mềm Ví dụ nền dịch vụ như khung ứng dụng Web, web hosting,…
Trang 19Dịch vụ: Dịch vụ đám mây là một phần độc lập có thể kết hợp với các dịch vụ
khác để thực hiện tương tác, kết hợp giữa các máy tính với nhau để thực thi chương trình ứng dụng theo yêu cầu trên mạng ví dụ các dịch vụ hiện nay như: Simple Queue Service, Google Maps, các dịch vụ thanh toán linh hoạt trên mạng của Amazon,…
Ứng dụng: Ứng dụng đám mây (Cloud application) là một đề xuất về kiến trúc
phần mềm sẵn sàng phục vụ, nhằm loại bỏ sự cần thiết phải mua phần mềm, cài đặt, vận hành và duy trì ứng dụng tại máy bàn/thiết bị của người sử dụng Ứng dụng đám mây loại bỏ được các chi phí để bảo trì và vận hành các chương trình ứng dụng
Hạ tầng khách hàng: (Client Infrastructure) là những yêu cầu phần mềm hoặc
phần cứng để sử dụng các dịch vụ ĐTĐM trên mạng Thiết bị cung cấp cho khách hàng có thể là trình duyệt, máy tính để bàn, máy xách tay, điện thoại di động,…
1.5 So sánh
Điện toán máy chủ ảo thường bị lẫn lộn với điện toán lưới, là "một dạng của
điện toán phân tán trong đó tồn tại một 'siêu máy tính ảo', là sự bao gồm một cụm mạng máy tính, những máy tính liên kết mềm, hoạt động phối hợp để thực thi những
tác vụ cực lớn", điện toán theo nhu cầu (utility computing) ("khối những tài nguyên
máy tính, như các bộ xử lý và bộ nhớ, trong vai trò một dịch vụ trắc lượng tương tự với các công trình hạ tầng kỹ thuật truyền thống chẳng hạn như điện lực hay mạng
điện thoại") và điện toán tự trị (autonomic computing) ("những hệ thống máy tính có
khả năng tự quản lý")
Thực ra việc triển khai nhiều hệ thống điện toán máy đám mây ngày nay được trang bị
hệ thống lưới, có tính năng tự trị và được tiếp thị giống như những tiện ích, nhưng điện toán đám mây có thể được nhìn nhận như một bước phát triển tự nhiên tiếp theo từ mô hình lưới-theo nhu cầu Nhiều kiến trúc đám mây thành công có cơ sở hạ tầng không quy tập hay ít quy tập hay những hệ thống tiếp thị trong đó có mạng ngang hàng như BitTorrent và Skype
1.6.1.2 Dễ tiếp cận
Điểm mấu chốt của ĐTĐM là chuyển việc tính toán về các trung tâm dữ liệu của các nhà cung cấp dịch vụ Do vậy, người sử dụng không cần phải trang bị một máy tính có cấu hình cao khi sử dụng những dịch vụ của ĐTĐM Chẳng hạn, người dùng
Trang 20chỉ cần một chiếc netbook hay điện thoại di động có khả năng kết nối Internet thì hoàn toàn có thể tiếp cận được những dịch vụ mà ĐTĐM mang lại
1.6.1.3 Khả năng tự phục vụ
Mỗi khi có yêu cầu sử dụng dịch vụ khách hàng sẽ gửi yêu cầu lên nhà cung cấp dịch vụ thông qua môi trường Web Hệ thống của nhà cung cấp sẽ đáp ứng các yêu cầu của khác hàng phù hợp với chính sách cho người sử dụng của mình Đồng thời,
khách hàng cũng có thể tự động thay đổi cấu hình hệ thống (tăng công suất, tài nguyên
tính toán cho bộ dữ liệu, chương trình của chính mình)
1.6.1.4 Di động
Người dùng luôn có dữ liệu của mình dù ở bất cứ đâu, bất cứ khi nào Chẳng hạn, như việc muốn chia sẻ cho bạn bè, đồng nghiệp xem một văn bản trong máy tính của mình Điều này không hề khó, họ chỉ cần đăng nhập và nhận văn bản này qua dịch vụ của ĐTĐM Nói cách khác, bất kỳ máy tính hay thiết bị nào và ở bất cứ đâu cũng hoàn toàn có thể truy cập được dữ liệu cá nhân của mình miễn là có kết nối Internet
1.6.1.5 Linh hoạt
Khi sử dụng dịch vụ ĐTĐM, người sử dụng sẽ không còn chịu cảnh gò bó hay khi chỉ có thể thao tác các tài liệu số trên các thiết bị thông dụng như Desktop hay Laptop nữa Có rất nhiều thiết bị có khả năng truy cập Internet hiện đã có thể sử dụng được các dịch này và bạn có thể thoải mái tải xuống các bức ảnh từ các ứng dụng của thiết bị kết nối Internet của mình và bạn cũng có thể chia sẻ các dữ liệu của mình với tất cả mọi người thông qua các dịch vụ của Internet
1.6.1.6 Tài nguyên dùng chung
Khả năng tiết kiệm tài nguyên tính toán cũng được các nhà cung cấp dịch vụ ĐTĐM tối ưu Lấy một ví dụ cụ thể như, một khách hàng thuê một phần mềm sử dụng như một dịch vụ chạy trên một máy chủ từ một nhà cung cấp trong khoảng thời gian nhất định trong ngày của tháng đó Thì phần mềm trên máy chủ đó hoàn toàn có thể cho khách hàng thứ hai chạy chương trình trong thời gian ngoài thời gian đã được cho thuê trước đó Việc làm này khiến cho ĐTĐM trở lên linh hoạt và mềm dẻo đồng thời cũng rất kinh tế
1.6.1.7 Khả năng liên kết
Là giải pháp cho phép dữ liệu và dịch vụ có thể được trao đổi dễ dàng trong nội
bộ và giữa các hạ tầng ĐTĐM Để các hệ thống liên kết được với nhau, cần có cơ chế tương tác thông suốt giữa các nền tảng và giải pháp khác nhau và ta tạm gọi là định nghĩa vật lý, công nghệ phát triển ứng dụng của ĐTĐM
1.6.1.8 Khả năng tự động hoá
Là giải pháp cho phép các dịch vụ và tài nguyên ĐTĐM có thể được định nghĩa
và cung cấp một cách bảo mật mà hầu như không cần tương tác với con người Theo tầm nhìn ĐTĐM của Intel, khả năng tự động hoá cho phép phân bổ và quản lý tài nguyên theo mức dịch vụ thoả thuận Tối ưu hoá trung tâm dữ liệu bằng cách tự động
Trang 21hoá cơ chế sử dụng tài nguyên, tự động hoá cơ chế tiết kiệm điện, tự động hoá việc lập báo cáo tiêu dùng để tính chi phí và cân bằng tải
1.6.1.9 Khả năng nhận biết thiết bị đầu cuối
Là giải pháp đáp ứng dịch vụ cho mọi thiết bị đầu cuối có kết nối bất kỳ chủng loại và phần mềm hệ thống của thiết bị nào Ngày nay, các thiết bị kết nối Internet
ngày càng trở nên đa dạng, từ các thiết bị công nghệ thông tin truyền thống (như máy
tính để bàn, máy tính xách tay đến các thiết bị khác như điện thoại thông minh, ô tô, tivi, đầu thu )
1.6.1.10 Khả năng co giãn
ĐTĐM sử dụng công nghệ ảo hóa làm nền tảng, Các tài nguyên được cấp phát động theo nhu cầu và sự thay đổi đến từ phía khách hàng Do đó, nó có khả năng tự động thu nhỏ hay mở rộng hệ thống bằng cách bớt đi hay thêm vào tài nguyên đã được
ảo hóa Khả năng này làm cho nhà cung cấp có thể phục vụ nhiều khác hàng hơn, tối
ưu tài nguyên tính toán cung cấp cho người sử dụng Mang lại hiệu quả kinh tế nhất định Đồng thời khả năng co giãn của ĐTĐM cũng giúp tiết kiệm chi phí thuê tài nguyên của các tổ chức Họ chỉ phải trả cho những gì họ thực dùng, cũng hoàn toàn có thể nâng cấp hệ thống của mình nhanh chóng, đơn giản, ngay lập tức theo thỏa thuận với nhà cung cấp
Hình 1.13: Những ưu điểm và khuyết điểm của ĐTĐM
1.6.2 Một số hạn chế
ĐTĐM là một mô hình điện toán mới mở ra cánh cửa đến với những cơ hội lớn Trong đám mây ĐTĐM, các tài nguyên và dịch vụ CNTT được tách khỏi cơ sở hạ tầng, được cung cấp theo nhu cầu, phù hợp với quy mô trong một môi trường đa người dùng Tuy nhiên, còn nhiều khó khăn trong việc triển khai ĐTĐM tại Việt Nam cũng như trên thế giới Mà nổi bật là những vấn đề về chính sách, bảo mật, đường truyền băng thông, nhận thức của các tổ chức, cá nhân đối với công nghệ mới này
Trang 221.6.2.1 Vấn đề bảo mật
Ứng dụng những tiện ích của ĐTĐM đang được xem là một trào lưu chung của thế giới và Việt Nam Song nhiều các tổ chức trong nước vẫn chần chừ với những ứng dụng này bởi họ e ngại các dịch vụ mà nhà cung cấp đưa ra chưa bảo đảm độ tin cậy
và an toàn Ngược lại, để chủ động phát triển ứng dụng thì lại vấp phải những khó khăn về nguồn nhân lực phát triển và nguồn vốn đầu tư, đặc biệt là năm 2011
Người dùng khi thuê các dịch vụ ĐTĐM bên ngoài sẽ phải quan tâm nhiều hơn đến vấn đề bảo mật thông tin bởi họ không quản lý được môi trường tác nghiệp Bên cạnh đó, mức rủi ro về rò rỉ thông tin cũng khá cao khi các tổ chức, cá nhân phải phụ thuộc vào nhà cung cấp dịch vụ và tính không rõ ràng của các ứng dụng cũng có thể gây nguy hại đến sự an toàn của thông tin
Một trong những mối lo ngại hàng đầu là dữ liệu sẽ bị trộn lẫn khi các nhà cung cấp dịch vụ lưu trữ thông tin, dữ liệu của nhiều các tổ chức trong cùng một phần cứng Trong khi đó, tâm lý của người sử dụng dịch vụ là luôn muốn dữ liệu của mình phải được tách bạch riêng rẽ, để những bí mật kinh doanh không rơi vào tay đối thủ cạnh tranh khi họ uỷ thác toàn bộ dữ liệu cho nhà cung cấp
Để trả lời câu hỏi này người dùng phải đánh giá tài sản dữ liệu và mức độ rủi ro khi tài sản này được công khai và phân phối rộng rãi nhờ vào những ứng dụng của ĐTĐM Một vấn đề khác mà người dùng quan tâm là nhân viên của nhà cung cấp dịch
vụ có quyền truy cập vào các tài sản thông tin này hay không? những quy trình tác nghiệp nào sẽ được điều khiển bởi những người ngoài doanh nghiệp Nhiều người dùng bày tỏ rằng khi đưa những dữ liệu, thông tin liên quan đến vấn đề tài chính của mình lên đám mây thì họ phải được đánh giá, kiểm soát trước những vấn đề liên quan đến việc bảo mật, an toàn thông tin phù hợp với quy định của đơn vị mình
Các tổ chức sử dụng dịch vụ ĐTĐM phải cân nhắc đến các chính sách bảo mật như quản lý dữ liệu, chuẩn bảo mật, xác thực truy cập, các công nghệ xác thực liên miền, hệ thống dự phòng và một số công cụ bảo mật khác Ngoài việc đánh giá mức
độ rủi ro khi sử dụng dịch vụ, người dùng cũng cần đánh giá mức độ đáng tin cậy của nhà cung cấp thông qua hợp đồng và trách nhiệm pháp lý
Không giống như các dịch vụ Internet truyền thống, điều khoản hợp đồng ứng dụng dịch vụ ĐTĐM phải được xem xét kỹ càng hơn bởi bản chất của những ứng dụng này là các tổ chứ là khách hàng không kiểm soát được tài nguyên thông tin, môi trường tác nghiệp Do đó, hợp đồng nên chú trọng đến các quyền và nghĩa vụ liên quan đến các thông báo vi phạm trong an ninh, truyền dữ liệu, các phát sinh như có sự thay đổi về quyền kiểm soát, truy cập vào dữ liệu của bên cung cấp dịch vụ và người
sử dụng dịch vụ Ngoài ra, Người dùng khi muốn ứng dụng ĐTĐM vào hoạt động phải quan tâm đến vấn đề sở hữu trí tuệ và chứng thực chữ ký số trong giao dịch
1.6.2.2 Mất kiểm soát và phụ thuộc
Do sử dụng hạ tầng của nhà cung cấp dịch vụ nên các người dùng phải nhường quyền kiểm soát cho nhà cung cấp trên một số vấn đề, dẫn đến việc an ninh thông tin
Trang 23sẽ bị ảnh hưởng Hiện tại có rất ít công cụ hoặc dữ liệu được định dạng theo đúng tiêu chuẩn nhằm phục vụ yêu cầu di động của dịch vụ và điều này có thể gây khó khăn cho người sử dụng khi chuyển đến một nhà cung cấp khác hoặc chuyển dữ liệu về kho ứng dụng phục vụ khách hàng Do vậy, nên những chuyên gia khuyên người sử dụng dịch
vụ có sự lựa chọn nhà cung cấp dịch vụ một cách có chọn lọc và tính toán
Tính tập trung là đặc điểm chính của những ứng dụng dựa trên nền tảng ĐTĐM, điều này dẫn đến rủi ro là nhà cung cấp không tách bạch được trong bộ nhớ lưu trữ dữ liệu của những khách hàng khác nhau nên có thể gây nên việc nhầm lẫn dữ liệu
Kết luận Chương 1
Tìm hiểu từ vấn đề tổng quát nhất của ĐTĐM cho ta nhìn nhận được một cách tổng thể về mô hình dịch vụ, mô hình triển khai của ĐTĐM từ đó ta có thể rút ra được những ưu điểm và nhược điểm của nó để đưa ra cách tiếp cận cho phù hợp với nhu cầu
Trang 24có thể tạo thành nhiều máy ảo độc lập Mỗi một máy ảo đều có một thiết lập nguồn hệ thống riêng rẽ, hệ điều hành riêng và các ứng dụng riêng
2.2 Lợi ích từ ảo hóa
Ảo hóa giải quyết các thách thức của việc quản lý trung tâm dữ liệu và cung cấp một số lợi thế như sau:
Tỷ lệ sử dụng cao hơn - Trước khi sử dụng ảo hóa, máy chủ và các thiết bị lưu trữ
trong trung tâm dữ liệu doanh nghiệp thường được sử dụng trung bình ít hơn 50% (trên thực tế, tỷ lệ sử dụng phổ biến là 10% đến 15%) Thông qua ảo hóa, công việc có thể được đóng gói và chuyển tới nơi hệ thống nhàn rỗi hoặc chưa được tận dụng - có nghĩa là hệ thống hiện tại có thể được củng cố, do đó có thể tránh hoặc trì hoãn việc mua thêm máy chủ
Hợp nhất tài nguyên - Ảo hóa cho phép hợp nhất nhiều tài nguyên CNTT Ngoài sự
hợp nhất máy chủ và thiết bị lưu trữ, ảo hóa cung cấp một cơ hội để củng cố kiến trúc
hệ thống, cơ sở hạ tầng ứng dụng, dữ liệu và cơ sở dữ liệu, giao diện, mạng, máy tính
để bàn, và thậm chí cả quy trình kinh doanh, kết quả là tiết kiệm chi phí và hiệu quả cao hơn
Sử dụng điện năng thấp hơn - chi phí điện cần thiết để chạy các trung tâm dữ liệu
doanh nghiệp không phải có sẵn trong nguồn cung cấp vô hạn, và chi phí là một xoắn
ốc đi lên Ngoài chi phí điện năng cho vận hành máy chủ còn phải quan tâm đến chi phí hao tổn và làm mát các máy chủ Sử dụng ảo hóa có thể cắt giảm tổng tiêu thụ điện năng và tiết kiệm chi phí đáng kể
Tiết kiệm không gian – Việc mở rộng, phát triển thêm các máy chủ vẫn còn là một
vấn đề tối quan trọng trong hầu hết các trung tâm dữ liệu doanh nghiệp, nhưng điều đó không phải luôn luôn được lựa chọn bởi việc xây dựng với chi phí trung bình vài ngàn USD Ảo hóa có thể loại bỏ sự tính toán căng thẳng đó bằng cách hợp nhất nhiều hệ thống ảo vào hệ thống vật lý ít hơn
Khắc phục rủi ro - Ảo hóa có thể tăng khả năng cung cấp dịch vụ và cung cấp nhiều
tùy chọn mới cho các giải pháp khắc phục rủi ro
Trang 25Giảm chi phí hoạt động – Với mỗi USD chi cho cơ sở hạ tầng mới thì trung bình các
doanh nghiệp phải dành 8USD cho việc bảo trì Ảo hóa có thể giảm tổng khối lượng công việc hành chính, và cắt giảm tổng chi phí hoạt động
2.3 Các phương pháp ảo hóa phổ biến:
2.3.1 Ảo hóa máy chủ (Server Vitualization)
Hình 2.1: Server Vitualization
Mục đích chính của việc ảo hóa máy chủ chính là tách rời mối liên hệ luồng công việc của máy chủ Do đó, từ máy chủ vật lý để từ đó có khả năng phân thành nhiều luồng công việc hơn đem đến sự hiệu quả đáng kể trong đơn vị Ví dụ, đơn cử trung bình với một máy vật lý dùng làm DHCP chỉ sử dụng hết 3/10 khả năng của máy vật lý vậy còn 7/10 sẽ về đâu Đó là sự lãng phí và không hiệu quả Với ảo hóa máy chủ cho phép dùng hết 10/10 khả năng máy vật lý lúc này máy vật lý sẽ kiêm nhiều nhiệm vụ hơn như DNS, FTP và các ứng dụng khác, tăng cao tính hiệu quả và Hyper-
V trên Windows Server 2008 sử dụng nền tảng công nghệ hypervisor là một minh chứng hiệu quả nó đem lại khả năng chạy nhiều hệ điều hành máy khách thường gọi là Partition (phân vùng) trên một máy chủ đơn lẻ Khả năng phân luồng công việc máy chủ trở thành hiện thực Bên cạnh đó Hyper-V cũng đem đến những cải thiện đáng kể cho máy chủ nâng cao tính sẵn sàng cho hệ thống và khả năng mở rộng hạ tầng, đơn giản hóa việc sao lưu và phục hồi, giảm chi phí điều hành Hyper-V của Microsoft là sản phẩm kế thừa trước đó Microsoft Virtual Server và là nền tảng giải pháp ảo hóa của Microsoft
2.3.2 Ảo hóa ứng dụng (Application virtualization)
Trang 26Ảo hóa ứng dụng là một dạng công nghệ ảo hóa khác cho phép tách rời mối liên kết giữa ứng dụng và hệ điều hành chủ bằng cách tạo ra “lớp tương thích” giúp tăng sự mềm dẻo trong quản lý và tương thích của các ứng dụng Bằng cách chạy các ứng dụng một cách tập trung thay vì cài đặt lên mỗi máy trạm, quản lý việc cập nhật phiên bản ứng dụng phần mềm trở nên dễ dàng hơn, giải quyết sự đụng độ giữa các ứng dụng và việc thử nghiệm sự tương thích của chúng cũng trở nên dễ dàng hơn Microsoft Application Virtualization (App-V) trước đây được biết đến với cái tên Microsoft SoftGird Application Virtualization là một giải pháp ảo hóa ứng dụng cho nhiều tổ chức ngày nay
2.3.3 Ảo hóa lưu trữ
Số lượng các công ty phát triển và lưu trữ dữ liệu tăng ngày càng nhanh Do sự chuyển dịch các chu trình kinh doanh sang các ứng dụng số dựa trên Web, các công ty đang bị chìm ngập trong biển dữ liệu Việc tăng quá nhanh dữ liệu đang gây ra vấn đề cho nhiều công ty
Thứ nhất, do dung lượng lưu trữ nhỏ, nhiều ứng dụng đã tạo ra quá nhiều dữ liệu hơn khả năng lưu trữ vật lý trên một máy chủ Thứ hai, nhiều ứng dụng, đặc biệt những ứng dụng dựa trên Internet, có nhiều máy cần truy cập cùng dữ liệu Tất cả các
dữ liệu trì hoãn trên một máy có thể gây ra sự tắc nghẽn, đó là không đề cập đến nguy
cơ các máy chủ có thể không hoạt động nếu một máy chủ chứa toàn bộ các dữ liệu của ứng dụng bị hỏng Cuối cùng, sự bùng nổ các máy có thể gây ra các vấn đề về sao lưu; nói cách khác, sao chép dữ liệu là nhiệm vụ không tưởng khi có hàng trăm nghìn máy cần được sao lưu dữ liệu
Vì những lý do này, dữ liệu cũng được ảo hóa Các công ty sử dụng phương pháp lưu trữ tập trung (lưu trữ ảo hóa) như một biện pháp tránh các vấn đề truy cập dữ liệu Hơn nữa, chuyển sang lưu trữ dữ liệu tập trung có thể giúp các công ty CNTT giảm chi phí và tăng hiệu quả quản lý dữ liệu
Vai trò của phần cứng
Mặc dù ảo hóa là một công nghệ phần mềm, tác động của ảo hóa là khiến phần cứng trở nên càng quan trọng hơn Đó là do việc tháo dỡ rất nhiều máy chủ và dịch chuyển các hệ điều hành đến các máy ảo khiến các máy chủ còn lại, những máy mà hỗ trợ tất cả các máy ảo đó, trở nên quan trọng hơn bao giờ hết
Mặc dù, các công ty CNTT có thể chấp nhận các máy chủ riêng rẽ trong môi trường “một ứng dụng, một máy chủ” bị hỏng bởi mỗi lỗi hệ thống sẽ ảnh hưởng đến một nhóm người sử dụng, ảo hóa thì hoàn toàn khác Mỗi máy chủ hỗ trợ nhiều máy
ảo và nhiều ứng dụng của người sử dụng Nếu một máy chủ ảo hóa gặp sự cố, nó sẽ gây ảnh hưởng đến nhiều ứng dụng và toàn bộ người sử dụng các ứng dụng đó
Phần cứng sẽ chỉ trở nên quan trọng hơn khi một phần cứng mới và sẵn sàng để
ảo hóa xuất hiện trên thị trường Các nhà sản xuất phần cứng đang tạo ra những khả
Trang 27năng ảo hóa có tầm quan trọng lớn Do vậy, khi ứng dụng phần mềm ảo hóa, một tác động không ngờ là phần cứng mới trở nên ngày càng quan trọng hơn
2.4 Ảo hóa máy chủ với Hyper-V
2.4.1 Tổng quan, kiến trúc
Được biết đến nhiều nhất cho giải pháp ảo hóa máy chủ của Microsoft là
Hyper-V, giải pháp được xem là cạnh tranh trực tiếp với VMware ESX Server Người sử dụng có thể dùng Hyper-V như là 1 role trong Windows Server 2008 và Server 2008 R2 hoặc được tích hợp miễn phí sẵn trong Hyper-V Server 2008 R2 Các phiên bản mới nhất của Hyper-V còn được gọi là Hyper-V 2.0 Hyper-V là một giải pháp ảo hóa dựa trên kiến trúc hypervisor, có nghĩa là lớp phần mềm cung cấp sự hỗ trợ ảo hóa chạy trực tiếp trên hệ thống phần cứng vật lý, cấu hình này cung cấp một nền tảng ảo hóa hiệu năng cao cho hệ thống
Hyper-V ban đầu được phát hành cùng với Server 2008, với tên gọi là Hyper-V 1.0 Hyper-V 1.0 không hỗ trợ Live Migration thay vào đó nó chỉ hỗ trợ Quick Migration, giúp làm giảm thời gian chết khi di chuyển máy ảo giữa các nút cluster Sang đến Hyper-V mới 2.0 thì với việc hỗ trợ Live Migration giúp cho việc di chuyển các máy ảo giữa các máy chủ vật lý với nhau đơn giản hơn và không có thời gian chết khi di chuyển chúng Hyper-V Server 2008 R2 hay role Hyper-V trong Server 2008 R2 được dựa trên cùng một công nghệ hypervisor với khả năng Live Migration, nâng
cao tính sẵn sàng cho hệ thống
Hình 2.2: Kiến trúc Hyper-V
Microsoft cung cấp một nền tảng ảo hóa mạnh và linh hoạt, có thể đáp ứng nhu cầu ảo hóa mọi cấp độ cho môi trường doanh nghiệp Trong cấu trúc Hyper-V gồm 3 phần chính: phân vùng cha hay con gọi là Parent, các phân vùng con (Child partition) hay còn gọi là máy ảo chạy hệ điều hành máy khách và cuối cùng mang tính quyết
Trang 28định đó là lớp Hypervisor Windows Hypervisor là một bộ giao tiếp bằng phần mềm,
nó nằm giữa lớp phần cứng vật lý và một hay nhiều hệ điều hành Hypervisor điều khiển việc truy cập đến phần nhân của phần cứng và định nghĩa ra các môi trường hoạt động độc lập tách rời gọi là partition
Máy ảo không có quyền truy cập đến bộ xử lý vật lý, mà chỉ nhìn thấy bộ xử lý được Hypervisor cấp Máy ảo cũng chỉ sử dụng được thiết bị ảo, mọi yêu cầu đến thiết
bị ảo sẽ được chuyển qua VMBus đến thiết bị ở phân vùng cha Thông tin hồi đáp cũng được chuyển qua VMBus Nếu thiết bị ở phân vùng cha cũng là thiết bị ảo, nó sẽ được chuyển tiếp cho đến khi gặp thiết bị thực ở phân vùng gốc Toàn bộ tiến trình trong suốt đối với hệ điều hành ở máy trạm
2.4.2 Các tính năng
Broad operating system support
Khả năng hỗ trợ đa dạng hệ điều hành máy khách bao gồm cả 32bit và 64bit và
đa dạng về nền tảng máy chủ như Windows, Linux và những hệ điều hành khác
Extensibility
Được hỗ trợ với khả năng mở rộng đáng kể nhờ việc xây dựng dựa trên Windows Management Instrumentation (WMI) và application programming interfaces (APIs) cho phép các nhà sản xuất phần mềm và các nhà phát triển có thể xây dựng nên
những công cụ hỗ trợ, các tiện ích và cải tiến cho nền tảng áo hóa này
Netwok Load Balancing
Được trang bị các khả năng cho phép chuyển mạch ảo từ đó cung cấp các tính năng Windows Network Load Balancing (NLB) cho các máy ảo đang chạy trên các
máy chủ vật lý khác nhau
Quick migration
Hyper-V cũng cung cấp Quick Migration, đó là khả năng di chuyển một máy qua các Cluster nodes mà không làm mất dữ liệu với sự gián đoạn dịch vụ ít nhất Để thực hiện điều này, một máy ảo được đặt trong chế độ ghi lại, tình trạng bộ nhớ Active
và bộ xử lý được Capture đến đĩa, tư cách tài nguyên lưu trữ được chuyển đến một Node khác trên Cluster Trên một Node mới, tình trạng bộ nhớ Active máy ảo, bộ xử
lý được Reload, quá trình xử lý được resume Tuỳ vào lưu trữ cơ bản và kích thước của dữ liệu, cả quá trình có có thể mất vài giây hay vài phút, tùy thuộc vào dung
lượng cần ghi lớn hay nhỏ
Scalability
Hyper-V với khả năng hỗ trợ nhiều bộ vi xử lý, cũng như khả năng nâng cao truy cập bộ nhớ giữa các máy ảo từ đó đem lại khả năng mở ra môi trường ảo hóa với tính năng mở rộng số lượng lớn máy ảo trên một máy vật lý kết hợp với tính năng Quick Migration mở rộng trên nhiều máy vật lý
Hyper-V với sự hỗ trợ đa dạng về bộ xử lý điều hành cũng như kiến trúc cải tiến truy cập bộ nhớ trong các máy ảo đã đem lại một máy chủ với khả năng mở rộng
Trang 29nhiều máy ảo hơn trên một máy chủ đồng thời kết hợp với tính năng Quick Migration tạo điều kiện cho vấn đề mở rộng áo hóa ra các host trong hạ tầng
Virtual machine snapshots
Chức năng snapshot Hyper-V cho phép cấu hình và tình trạng của một máy ảo
ở bất kì thời điểm xác định nào, cũng cung cấp khả năng reload lại bất hì Snapshot hiện hành nào chỉ trong có vài giây Các Snapshot Hyper-V có thể rất hữu ích trong bối cảnh cần thực hiện những thay đổi gia tăng đến một máy ảo với khả năng quay ngược lại tình trạng trước đó Chức năng Snapshot Hyper-V được thiết kế đặc biệt để dùng cho việc kiểm tra và phát triển các môi trường, không phải trong cấu trúc làm việc
Live Migration
Công nghệ này cho phép di chuyển các Server ảo hóa từ máy chủ vật lý này sang máy chủ vật lý khác, nhưng vẫn đảm bảo không có bất kì sự gián đoạn nào hay cảm nhận thời gian chễ của bộ xử lý trong những phiên kết nối truy cập Windows Server 2008 R2 đều cung cấp 2 cách thức di chuyển tự động là: Quick Migration và Live Migration Mặc dù cả 2 cách thức này đều nhằm mục đích là chuyển dời máy chủ
ảo hóa giữa các máy chủ Hyper-V nhưng phương pháp, cách thức hoàn thành công việc là khác nhau Cách thực hiện của Quick Migration là sẽ lưu lại, di dời VMs đến vị trí khác sau đó khôi phục sự hoạt động VMs này, có nghĩa theo cách này cần một chút thời gian chễ của hệ thống cho việc di dời máy chủ ảo hóa Trong khi đó Live Migration thì sử dụng cơ chế khác và cách thức Live Migration xử lý như sau: Giả sử
ta có hai Node trên cùng một Cluster sẽ dùng thực hiện Live Migration Node một chứa VMs sẽ dời đi, Node hai là mục tiêu mà VMs sẽ dời đến và người dùng đang truy cập kết nối với node một
Tiến trình như sau
o Bước đầu tiên của quá trình live migration một ảnh chụp ban đầu của VMs trên node một được chuyển sang node hai;
o Trong trường hợp người dùng đang truy cập tại node một thì những sự thay đổi và hoạt động trên node một vẫn diễn ra bình thường, tuy nhiên những thay đổi này sẽ được ghi lại;
o Những thay đổi trên node một được đồng bộ liên tục đến node hai Khi
đã đồng bộ xong thì node một sẽ tự động ở chế độ nghỉ và các phiên truy cập trên node một được chuyển sang node hai
Trang 30Hình 2.3: Live Migration
Quá trình Live Migration diễn ra rất nhanh nên các phiên làm việc kết nối hầu như không cảm nhận được sự gián đoạn nào, điểm này cải tiến cho Quick Migration
2.4.3 Lợi ích khi triển khai Hyper -V
Hyper-V cung cấp cho khách hàng một nền tảng lý tưởng trong các tình huống ảo hóa cơ bản, như củng cố hệ thống máy chủ, quản lý sự liên tục của hoạt động kinh doanh, chạy thử và phát triển phần mềm, xây dựng trung tâm dữ liệu động Ngoài ra, Hyper-V còn được đánh giá cao về khả năng mở rộng, hiệu năng cao, tính tin cậy, bảo mật linh hoạt và khả năng quản lý
Giảm chi phí cơ sở hạ tầng mạng thông qua việc hợp nhất Server
Tận dụng một cách tối ưu nguồn tài nguyên hệ thống máy chủ, tăng khả năng hiệu suất sử dụng của hệ thống Sự ảo hóa, giúp đơn giản hóa sự phức tạp của hệ thống, tăng tối đa việc sử dụng phần cứng, nâng cao bảo mật và dễ dàng quản lý Ngoài ra sự ảo hóa còn bảo đảm tính liên tục trong kinh doanh khi xảy ra sự cố Có thể
dễ dàng phục hồi một server ảo dự phòng sang hệ thống phần cứng khác với hệ thống gốc đã ngừng họat động với thời gian giảm thiểu
Hơn nữa, chính sách cấp phép linh hoạt cho phép tổ chức triển khai một giải pháp hợp nhất đáp ứng tốt nhất nhu cầu của họ Cung cấp các tính năng hỗ trợ an ninh mạng VLAN, Network Address Translation (NAT), tường lửa, Network Access Protection (NAP) và chính sách bảo vệ truy cập mạng
Nâng cao hiệu suất ảo hóa
Tăng cường hỗ trợ 64-bit, cho phép máy chủ ảo hóa chạy các hệ điều hành bit-64 và truy cập số lượng lớn bộ nhớ (lên đến 64 GB mỗi VM), cho phép xử lý khối lượng công việc chuyên sâu hơn Hỗ trợ đa luồng như vậy tăng đến bốn bộ vi xử lý trên máy
Trang 31chủ ảo hóa Hyper-V cũng có sẵn trên Server Core giúp thực hiện các công việc của hệ thống trong một môi trường đáng tin cậy
Đảm bảo tính sẵn sàng cao của hệ thống
Ảo hóa Hyper-V góp phần tăng cường tính liên tục trong hoạt động và bảo mật của hệ thống các ứng dụng Tăng cường tính năng cân bằng tải và chịu lỗi trên phiên bản Windows Server 2008 Enterprise và Datacenter, Hyper-V cung cấp hỗ trợ tính sẵn sàng cao trên máy ảo với Clustering và Network Load Balancing giảm thiểu thời gian chết, ngưng hoạt động của hệ thống, đảm bảo tính liên tục trong kinh doanh
Hyper-V cho phép nhanh chóng di chuyển một máy ảo chạy từ một trong những
hệ thống máy chủ vật lý sang một hệ thống máy chủ vật lý khác với thời gian dừng tối thiểu Nó nâng cao độ sẵn sàng cho hệ thống, một khả năng quen thuộc của Windows Server và giúp quản lý hệ thống với các công cụ trong System Center tốt hơn cho phép đáp ứng nghiêm ngặt các yêu đề ra
Cải thiện sự bảo mật và tin cậy
Kiến trúc Hyper-V hypervisor microkernelized kế tiếp làm giảm thiểu tối đa bề mặt tấn công và tăng cường an ninh, đặc biệt với Hyper-V trong Server Core Hypervisor không chứa các trình điều khiển thiết bị hoặc mã nguồn của bất kỳ hãng thứ ba nào, giúp thúc đẩy hơn sự ổn định và nền tảng an toàn khi chạy máy ảo Hyper-
V còn được tích hợp với Active Directory để tận dụng tính năng bảo mật cấp phần cứng giúp tăng cường độ an toàn trên các máy ảo
Bảo vệ các dữ liệu quan trọng thông qua Live Backup
Tính năng Snapshot trên Hyper-V giúp ghi lại nhanh chóng trạng thái của một máy ảo đang chạy bao gồm dữ liệu, cấu hình, và các tiến trình đang chạy , cho phép dễ dàng khôi phục lại đúng vào thời điểm backup trước đó Nó đặc biệt hữu ích khi cần thực hiện các thay đổi cấu hình phức tạp hoặc có nguy cơ cao Khi đó, chỉ đơn giản quay trở lại các thay đổi ban đầu nếu gặp phải sự cố Hyper-V cũng sử dụng Windows Server 2008 Volume Shadow Copy Service cho phép nhanh chóng phục hồi thảm họa, giảm thiểu gián đoạn, ngay cả sau khi thiên tai hay lỗi phần cứng
Ủy quyền việc quản lý máy ảo
Hyper-V cho phép sự linh hoạt trong việc quản lý các máy ảo, ủy quyền cụ thể cho khách hàng hoặc các nhân viên hỗ trợ Ví dụ, có thể giảm chi phí quản lý bằng cách chỉ định quản lý các máy ảo từ xa cho các nhân viên khác để cho phép họ thực hiện công việc thường ngày mà không ảnh hưởng đến an ninh trong hệ thống Authorization Manager (AzMan) cho phép các quản trị viên kiểm soát việc triển khai máy chủ đang chạy Hyper-V và cũng để ủy quyền quản lý máy ảo cho các nhóm người dùng cụ thể
Nâng cao khả năng quản lý tập trung
Với Hyper-V, không cần phải tạo một cơ sở hạ tầng quản lý riêng biệt cho môi trường ảo Hyper-V được thiết kế để tích hợp tối ưu với công cụ quản lý Microsoft, System Center Virtual Machine Manager (SCVMM), Microsoft System Center
Trang 32Operations Manager (SCOM) Cũng như, với công cụ quản lý của bên thứ ba Điều này cho phép quản lý các nguồn tài nguyên vật lý và ảo hóa tất cả từ một giao diện điều khiển
Thử nghiệm triển khai
Ảo hóa cung cấp môi trường cho thử nghiệm, phát triển và ứng dụng các công nghệ mới Với việc, hỗ trợ phong phú hệ điều hành khách, Hyper-V cho phép nhanh chóng triển khai thử nghiệm trên nhiều môi trường khác nhau mà không cần mở rộng, nâng cấp phần cứng và các nguồn tài nguyên vật lý Ngoài ra, VM snapshots giúp tiết kiệm thời gian bằng cách giảm thiểu việc phải gỡ bỏ cài đặt và cài đặt lại chương trình
và hệ điều hành trong thời gian thử nghiệm và phát triển
2.4.4 Triển khai
Một số bước cài đặt
Bước 1 Tải Hyper-V từ địa chỉ
http://www.windowsitpro.com/article/tsql3/download-hyper-v-server-2008 dung lượng của Hyper - V file ISO có dung lượng khá lớn khoảng 1.5GB Tải xong, tiến hành cài đặt như sau: Chọn ô tích Hyper - V và ấn next
Hình 2.4: Cài đặt Hyper-V
Trên trang Create Virtual Networks, bạn có thể tạo ra nhiều mạng ảo trên máy
chủ ảo:
Card mạng chỉ được sử dụng để giao tiếp giữa các máy ảo mà thôi
Card mạng sử dụng để giao tiếp giữa máy chủ ảo với máy ảo
Giao tiếp giữa một máy ảo và vật lý mạng bằng cách tạo ra một liên kết đến một adapter mạng vật lý trên máy chủ ảo hóa
Trang 33Chọn tích vào ô như hình minh họa và ấn next cho đến khi hoàn thành
Hình 2.5: Lựa chọn Card mạng trên máy chủ ảo
Quản lý máy chủ ảo với Hyper-V
Khởi chạy chương trình Hyper-V từ Menu Administrative Tools Tại đây, chúng ta có thể thiết lập một loạt các bước để cấu hình liên quan đến máy ảo chẳng hạn như đường dẫn đến thư mục lưu trữ máy ảo, chọn bộ nhớ Ram, cấu hình mạng, tinh chỉnh dung lượng ổ cứng, lựa chọn ổ CD thực thi trong máy ảo v.v… Sau khi hoàn tất các bước trên theo hướng dẫn thì người dùng đã có một máy ảo
Hình 2.6: Máy ảo được khởi tạo
Bước 2: Cách chia và sử dụng máy ảo
Trang 34Người sử dụng cũng có thể tạo Snapshot cho máy ảo vừa khởi tạo để lưu trữ trạng thái hiện tại của máy ảo đó Với việc click chuột phải vào máy ảo muốn lưu trữ chọn Menu Snapshot Vùng Snapshots sau đó sẽ hiển thị một cấu trúc cây hiển thị thứ bậc Snapshot của máy ảo đang sử dụng Node gốc của cây này sẽ là Snapshot vừa tạo
và bao gồm cả thời điểm tạo
Hình 2.7: Snapshot máy ảo
Công nghệ ảo hóa là một phần cốt lõi của ĐTĐM Từ cách thức hoạt động linh hoạt, sự mở rộng dễ dàng về tài nguyên tính toán, tính năng Quick Migration và Live Migration cho phép di chuyển máy ảo từ phần cứng vật lý này sang phần cứng vật lý khác hoàn toàn trong suốt đối với người sử dụng và những lợi ích của công nghệ ảo
hóa đem lại sự tiện lợi, tối ưu cho người sử dụng công nghệ này
Kết luận Chương 2
Công nghệ ảo hóa thực ra là việc chia nhỏ mỗi công việc cụ thể trên một Server thành các Server khác nhau từ đó làm tăng khả năng vận hành của một hệ thống máy tính đảm bảo tính thống nhất và lưu trữ, truy cập của hệ thống Tìm hiểu về công nghệ
ảo hóa chúng ta có thể nhận thấy ưu nhược điểm của công nghệ này từ đó đưa ra cách tiếp cận công nghệ một cách phù hợp với nhu cầu của mình Việc áp dụng công nghệ
ảo hóa tại Việt nam còn rất dè dặt Theo đánh giá ban đầu, nguyên nhân chủ yếu là do các nhà quản lý tại Việt Nam chưa nhận thức được sự cần thiết của việc tiết kiệm không gian, điện năng và nhân công trong việc ứng dụng công nghệ ảo hóa Thêm vào
đó, một nguyên nhân nữa khiến các nhà quản lý công nghệ thông tin tại Việt Nam còn
e ngại chính là tính bảo mật của những hệ thống ảo này Tuy nhiên, nếu không ảo hóa,
Trang 35Việt Nam sẽ tốn chi phí không nhỏ cho việc bảo dƣỡng và sửa chữa những hệ thống cồng kềnh Do đó, cần quảng bá cho các doanh nghiệp biết đƣợc những ƣu thế và lợi ích mà ảo hóa đem lại để áp dụng rộng rãi công nghệ này tại Việt Nam, bắt nhịp với xu thế phát triển của thế giới
Trang 36mà không có nguy cơ ảnh hưởng đến an ninh của các ứng dụng và dữ liệu Ví dụ, IDC
đã tiến hành một cuộc khảo sát (hình 3.1) với 244 nhà điều hành để đánh giá ý kiến của họ về ứng dụng dịch vụ đám mây ở các công ty này An ninh được xếp hạng đầu tiên như là thách thức lớn nhất của điện toán đám mây
Hình 3.1: Kết quả khảo sát những thách thức về an ninh trên Cloud Computing của
IDC
Chương này xác định các vấn đề an ninh có liên quan đến môi trường điện toán đám mây và mô tả các phương pháp để đảm bảo an ninh ứng dụng và dữ liệu và sự
Trang 37toàn vẹn phù hợp cho những tài nguyên này khi di chuyển lên môi trường đám mây công cộng Quan trọng hơn, chương này sẽ tập trung vào lý do tại sao và làm thế nào các nguồn lực này cần được bảo vệ trong các môi trường phần mềm như một dịch vụ (SaaS), nền tảng như một dịch vụ-(PaaS), và cơ sở hạ tầng như một dịch vụ (IaaS) và cung cấp an ninh "thực hành tốt nhất" cho các nhà cung cấp dịch vụ và doanh nghiệp
đã hoặc đang dự tính di chuyển vào môi trường điện toán đám mây
Mặc dù ảo hóa và điện toán đám mây có thể giúp các công ty hoàn thành được nhiệm vụ tốt hơn bằng cách phá vỡ các liên kết vật lý giữa cơ sở hạ tầng CNTT và người dùng, nhưng các mối đe dọa bảo mật phải được khắc phục để được hưởng lợi đầy đủ từ mô hình điện toán mới này Điều này đặc biệt đúng đối với các nhà cung cấp SaaS Một số vấn đề bảo mật có giá trị thảo luận nhiều hơn Ví dụ, trong đám mây, bạn
sẽ mất quyền kiểm soát tài sản trong một số khía cạnh, vì thế mô hình bảo mật của bạn phải được xem xét lại Bạn có thể tin tưởng khi giao dữ liệu của bạn cho nhà cung cấp dịch vụ? Tiếp theo, chúng ta thảo luận một số vấn đề bạn cần cân nhắc trước khi trả lời câu hỏi đó
Với mô hình đám mây, bạn mất kiểm soát về an ninh vật lý Trong một đám mây công cộng, bạn đang chia sẻ tài nguyên máy tính với các công ty khác Trong một môi trường được chia sẻ bên ngoài doanh nghiệp, bạn không thể biết được hoặc kiểm soát được các tài nguyên của mình đang chạy đi đâu Phơi bày dữ liệu của bạn trong một môi trường chia sẻ với các công ty khác có thể cung cấp cho chính phủ "lý do chính đáng" để giữ tài sản của bạn bởi vì một công ty khác đã vi phạm pháp luật Đơn giản là vì bạn chia sẻ trên đám mây, có thể đưa dữ liệu của bạn có nguy cơ bị tịch thu
Các dịch vụ lưu trữ cung cấp bởi một nhà cung cấp điện toán đám mây có thể không tương thích với các nhà cung cấp dịch vụ khác, bạn nên cân nhắc việc chuyển
từ nhà cung cấp này đến nhà cung cấp khác Các nhà cung cấp tạo ra những dịch vụ gọi là "dịch vụ kết dính", theo đó một người dùng cuối sẽ khó khăn khi chuyển sang nhà cung cấp điện toán đám mây khác (ví dụ, "Simple Storage Service" [S3] Amazon không tương thích với IBM Blue Cloud, hoặc Google, hay Dell)
Nếu thông tin được mã hóa khi đi qua các đám mây, ai sẽ kiểm soát các khóa
mã hóa / giải mã đó? Khách hàng hay nhà cung cấp các đám mây? Hầu hết khách hàng đều muốn mã hóa dữ liệu của họ trên Internet bằng cách sử dụng SSL (Secure Sockets Layer) Họ cũng rất muốn mã hóa dữ liệu của họ trong khi nó đang ở phần còn lại trong môi trường lưu trữ của nhà cung cấp đám mây, làm sao đảm bảo khách hàng, có thể kiểm soát các khóa mã hóa/ giải mã, cũng giống như khi các dữ liệu vẫn còn cư trú trên các máy chủ của riêng họ
Toàn vẹn dữ liệu có nghĩa là đảm bảo rằng dữ liệu được duy trì giống nhau trong bất kỳ hoạt động nào (như truyền trên mạng, lưu trữ, hoặc thu hồi) Đơn giản, toàn vẹn dữ liệu là đảm bảo rằng dữ liệu được nhất quán và chính xác trong đám mây Bảo đảm tính toàn vẹn của dữ liệu có nghĩa là đảm bảo dữ liệu chỉ thay đổi để đáp ứng
Trang 38với các giao dịch có thẩm quyền Điều này nghe vẻ đơn giản, nhưng tiêu chuẩn chung
để đảm bảo toàn vẹn dữ liệu vẫn chưa ra đời
3.2 Bảo mật cho SaaS
Các nhà phân tích và công ty tư vấn công nghệ Gartner đã liệt kê ra bẩy vấn đề về bảo mật cần được thảo luận với một nhà cung cấp ĐTĐM SaaS, gồm các nội dung sau:
Việc truy cập của người dùng được ưu tiên: yêu cầu ai là người chuyên về truy
cập dữ liệu, thuê hay quản lý các quản trị viên?
Việc tuân theo các quy tắc: Đảm bảo rằng nhà cung cấp sẵn sàng chịu sự kiểm
nghiệm bên ngoài và các xác nhận về vấn đề bảo mật?
Vị trí dữ liệu: nhà cung cấp có cho phép bất kỳ ai kiểm soát vị trí của dữ liệu
không?
Tách dữ liệu: Đảm bảo quyền truy cập thích hợp trong tất cả các công đoạn và
những chiến lược mã hóa này phải được những chuyên gia giàu kinh nghiệm thiết
kế và kiểm duyệt?
Khả năng phục hồi: Phát hiện chuyện gì sẽ xảy ra với dữ liệu khi gặp tai họa Liệu
chúng có khả năng phục hồi hoàn toàn không? Nếu có thì sẽ mất thời gian bao lâu?
Hỗ trợ điều tra: Nhà cung cấp có thể phát hiện những hành vi không thích hợp
hoặc phạm pháp không?
Khả năng tồn tại lâu dài: Chuyện gì sẽ xảy ra với dữ liệu khi công ty không còn
kinh doanh nữa? Dữ liệu sẽ được trở lại như thế nào và theo định dạng gì?
Việc thực hành an ninh cho môi trường SaaS được xây dựng như hiện nay được thảo luận trong các phần sau
3.2.1 Quản trị an ninh
Một ban chỉ đạo về an ninh cần được phát triển với mục tiêu là tập trung vào việc cung cấp hướng dẫn về sáng kiến an ninh và phù hợp với chiến lược kinh doanh
và CNTT Ban chỉ đạo này phải có điều lệ hoạt động trong đó phải xác định rõ vai trò
và trách nhiệm của đội ngũ an ninh và các nhóm có liên quan trong việc thực hiện chức năng bảo mật thông tin Thiếu một chiến lược chính thức có thể dẫn đến một mô hình hoạt động không bền vững Ngoài ra, sự thiếu quan tâm đến quản trị an ninh có thể dẫn đến những nhu cầu chính của doanh nghiệp không được đáp ứng, việc này có thể đi kèm với quản lý rủi ro, giám sát an ninh, bảo mật ứng dụng Thiếu việc quản trị
và quản lý các nhiệm vụ cũng có thể dẫn đến những nguy cơ bảo mật không được giải quyết bị bỏ lại và cơ hội để cải thiện việc kinh doanh bị bỏ qua
3.2.2 Quản lý rủi ro
Quản lý độ mạo hiểm hiệu quả đòi hỏi phải có sự xác nhận về tài sản công nghệ, dữ liệu và đường truyền tới nơi lưu trữ dữ liệu, các ứng dụng, quy trình kinh doanh Ngoài ra, cần có sự xác nhận quyền sở hữu và trách nhiệm thuộc về đối tượng
Trang 39cho thuê dịch vụ Quản lý này cũng bao gồm cả việc duy trì nơi chứa nguồn thông tin Các chủ sở hữu có quyền và trách nhiệm giải trình nguồn thông tin gồm có các yêu cầu bảo vệ, người quản lý bảo mật, tính toàn vẹn, khả năng sẵn, những kiểm soát mã truy cập
3.2.3 Đánh giá rủi ro
Việc đánh giá độ mạo hiểm bảo mật là rất quan trọng Nó giúp tổ chức an toàn thông tin đưa ra quyết sách khi cân bằng cuộc tranh chấp giữa quyền ưu tiên về khả năng kinh doanh và vấn đề bảo vệ tài sản Thiếu chú trọng đến việc này sẽ làm tăng khả năng bị kiểm soát phát hiện về bảo mật thông tin, có thể nguy hiểm tới những chiến lược phát triển của đơn vị đó, dẫn tới việc lựa chọn kiểm soát bảo mật không đủ
và không hiệu quả, khó có thể giảm bớt mức độ nguy hiểm an toàn thông tin xuống tới một mức có thể chấp nhận được
Nhiều đánh giá chi tiết về độ mạo hiểm bảo mật dưới dạng mẫu rủi ro cần được đưa vào các ứng dụng và cơ sở hạ tầng khác Khi làm như vậy, các nhóm kỹ sư và nhà quả lý sản phẩm có thể chủ động và linh hoạt hơn trong việc tiết kế cũng như kiểm duyệt độ bảo mật của ứng dụng của hệ thống, đồng thời kết hợp sâu hơn nữa với đội ngũ an ninh bên trong Việc thiết kế mẫu rủi ro đòi hỏi phải hiểu biết về CNTT, nghiệp
vụ kinh doanh, hiểu biết kỹ thuật về các ứng dụng và hệ thống khi làm việc
3.2.4 Chính sách, tiêu chuẩn và chỉ dẫn
Nhiều nguồn lực và các mẫu có sẵn để hỗ trợ trong việc phát triển các chính sách an ninh thông tin, tiêu chuẩn, và hướng dẫn Một nhóm nghiên cứu tính toán đám mây bảo mật đầu tiên phải xác định được an ninh thông tin và yêu cầu kinh doanh duy nhất cho điện toán đám mây, SaaS, và ứng dụng phần mềm hợp tác an ninh Chính sách cần được xây dựng, tài liệu, và thực hiện, cùng với các tài liệu để hỗ trợ các tiêu chuẩn và hướng dẫn Để duy trì sự liên quan, các chính sách, tiêu chuẩn, và hướng dẫn nên được xem xét lại đều đặn (ít nhất là hàng năm) hoặc khi thay đổi đáng kể xảy ra trong môi trường kinh doanh hoặc CNTT Chính sách lỗi thời, tiêu chuẩn, và các hướng dẫn có thể dẫn đến vô ý tiết lộ thông tin như là một điện toán đám mây thay đổi
mô hình kinh doanh của tổ chức Điều quan trọng là duy trì tính chính xác và phù hợp của các chính sách an ninh thông tin, tiêu chuẩn, và các hướng dẫn như các sáng kiến kinh doanh, môi trường kinh doanh, và cảnh quan nguy cơ thay đổi Chính sách như vậy, tiêu chuẩn, và các hướng dẫn cũng cung cấp các khối xây dựng mà một tổ chức
có thể đảm bảo sự nhất quán trong thực hiện và duy trì liên tục của tri thức trong thời gian doanh thu tài nguyên
3.2.5 Chu trình phát triển phần mềm an toàn
Trang 40Chu trình phát triển phần mềm an toàn bao gồm phát hiện những nguy cơ và mối
đe dọa cụ thể qua việc thiết kế và thực hiện những kiểm soát cụ thể Chu trình này phải cung cấp tính nhất quán, khả năng lặp lại và khả năng tương thích
Chu trình tạm thời có thể chia thành 6 giai đoạn chính sau:
Nghiên cứu: xác định mục tiêu và quy trình của dự án, tài liệu về chính
sách bảo mật chương trình
Phân tích: Phân tích các chương trình, chính sách, các mối đe dọa hiện
hành, kiểm tra lợi tức hợp pháp và phân tích độ mạo hiểm
Thiết kế logic: Phát triển một sơ đồ chi tiết về bảo mật, lập kế hoạch đối
phó với những trường hợp xấu, các biện pháp kinh doanh trước thảm họa và xác định tính khả thi của việc tiếp tục dự án hay thuê ngoài
Thiết kế vật lý: Chọn các công nghệ để hỗ trợ cho một bản thiết kế chi tiết
về bảo mật, đưa ra một hướng giải quyết hợp lý, các tiêu chuẩn bảo mật vật
lý để hỗ trợ các biện pháp kỹ thuật và kiểm tra, nâng cấp kế hoạch
Thi hành: Mua hoặc phát triển các biện pháp bảo mật cuối giai đoạn này,
cần phải đưa ra một gói hoàn chỉnh đã được thử nghiệm để có được sự phê duyệt của nhà quản lý
Duy trì: Ổn định việc quản lý, kiểm nghiệm, điều chỉnh, nâng cấp và sửa
đổi để có thể ứng phó với sự thay đổi của các mối đe dọa
3.2.6 Giám sát bảo mật và đối phó với các tình huống bất ngờ
Hệ thống quản lý bảo mật thông tin lẽ ra phải cung cấp các cảnh báo về lỗ hổng an ninh và để giám sát hệ thống một cách liên tục bằng các công nghệ tự động nhằm phát hiện những lợi tức tiềm năng Nhà quản lý cần phải mở rộng khả năng giám sát bảo mật nhằm bao gồm các hoạt động ứng dụng và phân dữ liệu theo cấp độ Việc này đòi hỏi phải có giám định về bảo mật ứng dụng và các mảng đặc biệt của việc duy trì mã truy cập trong đám mây Thiếu khả năng và việc giám định này, một đơn vị mà chỉ sử dụng dịch vụ cho công việc thuộc chuyên môn của mình thì không thể phát hiện, ngăn chặn các mối đe dọa cũng như những tấn công tới người dùng, dữ liệu của mình
3.2.7 Thiết kế cấu trúc bảo mật
Để thiết lập một khung cơ cấu bảo mật chúng ta phải xem xét các quá trình, quy trình triển khai, thống kê kỹ thuật, quản lý tổ chức, nhân lực, báo cáo và tuân theo chương trình bảo mật
Một bản thiết kế và một chương trình thực hiện cần được hợp nhất lại với một chu trình phát triển hệ thống nhằm bao gồm tất cả các trường hợp kinh doanh, định nghĩa yêu cầu, bản thiết kế và kế hoạch triển khai Những biện pháp thiết kế và công nghệ cũng như quy trình bảo mật là cần thiết để cung cấp các dịch vụ sau xuyên suốt tất cả các tầng công nghệ như: