TIỂU LUẬN ĐỀ TÀI MÔ HÌNH TÍNH TOÁN ĐÁM MÂY Có rất nhiều định nghĩa được đưa ra theo nhiều góc nhìn khác nhau về một hệ thống tính toán đám mây như sau: Theo Wikipedia: “Tính toán đám mây (cloud computing) là một mô hình tính toán có khả năng co giãn (scalable) linh động và các tài nguyên thường được ảo hóa được cung cấp như một dịch vụ trên mạng Internet”
Trang 1TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI VIỆN CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
TIỂU LUẬN
Đề tài:
MÔ HÌNH TÍNH TOÁN ĐÁM MÂY
Hà Nội – 2012 Giảng viên hướng dẫn: TS.Vũ Thị Hương Giang
Học viên thực hiện: Đỗ Thị Nhâm
Đoàn Minh Quân Nguyễn Việt Tiến
Trang 2MỤC LỤC
1 TỔNG QUAN VỀ TÍNH TOÁN ĐÁM MÂY 1
1.1 Giới thiệu tổng quan 1
1.1.1 Định nghĩa 1
1.1.2 Những đặc trưng của tính toán đám mây 2
1.1.3 Một số ứng dụng của tính toán đám mây 5
1.2 Các mô hình triển khai của tính toán đám mây 6
1.2.1 Các đám mây công cộng- Public cloud 6
1.2.2 Các đám mây riêng- Private cloud 7
1.2.3 Các đám mây lai- Hybrid cloud 8
1.2.4 Các đám cộng đồng- Community cloud 9
2 KIẾN TRÚC CỦA TÍNH TOÁN ĐÁM MÂY 10
2.1 Dịch vụ phần mềm (SaaS: Software as a Services) 10
2.1.1 SaaS là gì 10
2.1.2 Đặc điểm của SaaS 14
2.1.3 Lợi ích và hạn chế khi sử dụng SaaS 14
2.2 Dịch vụ nền tảng (PaaS: Platform as a Service) 14
2.2.1 PaaS là gì 14
2.2.2 Đặc điểm của PaaS 15
2.2.3 Lợi ích và hạn chế khi sử dụng PaaS 17
3.3 Dịch vụ hạ tầng (Iaas: Infrastructure as a Service Operations) 18
3.3.1 IaaS là gì 18
3.3.2 Đặc điểm của IaaS 20
3.3.3 Lợi ích và hạn chế khi sử dụng IaaS 20
Trang 3MÔ HÌNH TÍNH TOÁN ĐÁM MÂY
(CLOUD COMPUTING)
1 TỔNG QUAN VỀ TÍNH TOÁN ĐÁM MÂY
1.1 Giới thiệu tổng quan
1.1.1 Định nghĩa
Có rất nhiều định nghĩa được đưa ra theo nhiều góc nhìn khác nhau vềmột hệ thống tính toán đám mây như sau:
Theo Wikipedia: “Tính toán đám mây (cloud computing) là một mô hình
tính toán có khả năng co giãn (scalable) linh động và các tài nguyên thườngđược ảo hóa được cung cấp như một dịch vụ trên mạng Internet”
Theo Ian Foster: “Một mô hình tính 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ưutrữ, các nền tảng (platform) và các dịch vụ được trực quan, ảo hóa và co giãnlinh động, sẽ được phân phối theo nhu cầu cho các khách hàng bên ngoài thôngqua Internet Tính toán đám mây là một dạng thức tính toán cung cấp các tàinguyên ảo hóa và có quy mô dưới dạng dịch vụ qua mạng Internet Người dùngkhông cần tới những kiến thức chuyên môn để quản lý hạ tầng công nghệ nàybởi phần việc đó là dành cho các nhà cung cấp dịch vụ”
Còn theo Synmatec định nghĩa: “Tính toán đám mây là 1 mạng kết nối của
các tài nguyên máy tính sẵn có được cấp phát động theo cơ chế ảo hóa và có khả năng
co dãn, tạo điều kiện cho người dùng có thể sử dụng dịch vụ theo nhu cầu dùng đếnđâu trả tiền đến đó”
Tóm lại tất cả định nghĩa trên hầu như đều nhằm minh họa tính toán đámmây là một mô hình bao gồm một số khía cạnh có lien quan đến mô hình phânphối và triển khai IT (các chương trình cũng như phần cứng) mới Nói chungtính toán đám mây liên quan đến việc phân phối các tài nguyên tính toán đếnngười dùng, người dùng chỉ cần đi thuê dịch vụ mà không cần biết dịch vụ chothuê nằm ở đâu, mấu chốt của vấn đề là Ảo hóa, không phụ thuộc vào vị trí địa lý,khi người sử dụng đặt ra yêu cầu của mình, hệ thống sẽ tự động gom nhặt các tài
Trang 4nguyên để đáp ứng các yêu cầu đó.
Mô hình tính toán đám mây (nguồn: Internet)
VD : Một Data Center được đặt ở Hà Nội, khi có nhu cầu chuyền về thành phố Hồ
Chí Minh thì bắt buộc phải di dời cả dữ liệu cùng với phần cứng, vì trước đây phầnmềm còn phụ thuộc vào chúng Hiện nay, khi đã áp dụng công nghệ ảo hóa thìphần mềm có xu hướng độc lập với phần cứng vật lý, điều đó có nghĩa là dữ liệu cóthể di dời đi đâu bất kì nơi nào mà không phụ thuộc vào Hardware
1.1.2 Những đặc trưng của tính toán đám mây
a Đặc điểm của tính toán đám mây
Tính toán đám mây có những đặc điểm chính bao gồm:
- Tính tự phục vụ theo nhu cầu: cho phép khách hàng đơn phương thiết
lập yêu cầu nguồn lực nhằm đáp ứng yêu cầu của hệ thống như: Thời gian sửdụng Server, dung lượng lưu trữ, cũng như là khả năng đáp ứng các tương táclớn của hệ thống ra bên ngoài
-Truy cập diện rộng: cung cấp các dịch vụ chạy trên môi trường Internet
do vậy khách hàng chỉ cần kết nối được với Internet là có thể sử dụng được dịch
vụ Các thiết bị truy xuất thông tin không yêu cầu cấu hình cao (thin or thickclient platforms) như : Mobile phone, Laptop và PDAs…
- Dùng chung tài nguyên và độc lập vị trí: 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 tenant” Mô hình này cho phép tài nguyên phần cứng và tài nguyên ảo hóa sẽ được
Trang 5“multi-cấp pháp động dựa vào nhu cầu của người dùng Khi nhu cầu người dùng giảmxuống hoặc tăng nên thì tài nguyên sẽ được trưng dụng để phục vụ yêu cầu.
Các hệ thống tính toán đám mây là các hệ thống tự quản lý và trong suốtđối với người dùng Người sử dụng không cần quan tâm tới việc điều khiển hoặckhông cần phải biết chính xác vị trí của các tài nguyên sẽ được cung cấp
- Khả năng co giãn nhanh chóng: Khả năng này cho phép tự động mở
rộng hoặc thu nhỏ hệ thống tùy theo nhu cầu của người sử dụng một cách nhanhchóng Khi nhu cầu tăng, hệ thống sẽ tự động mở rộng bằng cách thêm tàinguyên vào Khi nhu cầu giảm, hệ thống sẽ tự động giảm bớt tài nguyên
- Chi trả theo thực dùng: Dịch vụ tính toán đám mây sử dụng mô hình tính
toán theo nhu cầu, tương tự với cách các tiện ích theo nhu cầu truyền thống hoặc dựavào tiền đóng trước Tính toán đám mây cho phép giới hạn dung lượng lưu trữ, băngthông, tài nguyên máy tính và số lượng người dùng kích hoạt theo tháng
b Ưu điểm
Từ những đặc điểm trên ta có thể thấy Tính toán đám mây có rất nhiều ưu điểm
- Tốc độ xử lý nhanh, cung cấp cho người dùng những dịch vụ nhanhchóng và giá thành rẻ dựa trên nền tảng cơ sở hạ tầng tập trung (đám mây)
- Chi phí đầu tư ban đầu về cơ sở hạ tầng, máy móc và nguồn nhân lựccủa người sử dụng tính toán đám mây được giảm đến mức thấp nhất
- Không còn phụ thuộc vào thiết bị và vị trí địa lý, cho phép người dùngtruy cập và sử dụng hệ thống thông qua trình duyệt web ở bất kỳ đâu và trên bấtkỳ thiết bị nào mà họ sử dụng (chẳng hạn là PC hoặc là điện thoại di động…)
- Chia sẻ tài nguyên và chi phí trên một địa bàn rộng lớn, mang lại các lợiích cho người dùng
- Với độ tin cậy cao, không chỉ dành cho người dùng phổ thông, tính toánđám mây còn phù hợp với các yêu cầu cao và liên tục của các công ty kinhdoanh và các nghiên cứu khoa học Tuy nhiên, một vài dịch vụ lớn của tính toánđám mây đôi khi rơi vào trạng thái quá tải, khiến hoạt động bị ngưng trệ Khi rơivào trạng thái này, người dùng không có khả năng để xử lý các sự cố mà phảinhờ vào các chuyên gia từ “đám mây” tiến hành xử lý
Trang 6- Khả năng mở rộng được, giúp cải thiện chất lượng các dịch vụ đượccung cấp trên “đám mây”.
- Khả năng bảo mật được cải thiện do sự tập trung về dữ liệu Các ứngdụng của tính toán đám mây dễ dàng để sửa chữa và cải thiện về tính năng bởi lẽchúng không được cài đặt cố định trên một máy tính nào
- Tài nguyên sử dụng của tính toán đám mây luôn được quản lý và thống
kê trên từng khách hàng và ứng dụng, theo từng ngày, từng tuần, từng tháng.Điều này đảm bảo cho việc định lượng giá cả của mỗi dịch vụ do tính toán đámmây cung cấp để người dùng có thể lựa chọn phù hợp
c Nhược điểm
Tuy nhiên, mô hình điện toán này vẫn còn mắc phải một số nhược điểm sau:
- Tính riêng tư: Các thông tin người dùng và dữ liệu được chứa trên điệntoán đám mây có đảm bảo được riêng tư, và liệu các thông tin đó có bị sử dụng
vì một mục đích nào khác?
- Tính sẵn dùng: Liệu các dịch vụ đám mây có bị “treo” bất ngờ, khiếncho người dùng không thể truy cập các dịch vụ và dữ liệu của mình khiến ảnhhưởng đến công việc
- Mất dữ liệu: Một vài dịch vụ lưu trữ dữ liệu trực tuyến trên đám mây bấtngờ ngừng hoạt động hoặc không tiếp tục cung cấp dịch vụ, khiến cho ngườidùng phải sao lưu dữ liệu của họ từ “đám mây” về máy tính cá nhân Điều này
sẽ mất nhiều thời gian thậm chí một vài trường hợp dữ liệu người dùng có thể bịmất và không thể phục hồi được
- Tính di động của dữ liệu và quyền sở hữu: Một câu hỏi đặt ra, liệu ngườidùng có thể chia sẻ dữ liệu từ dịch vụ đám mây này sang dịch vụ của đám mâykhác? Hoặc trong trường hợp không muốn tiếp tục sử dụng dịch vụ cung cấp từđám mây, liệu người dùng có thể sao lưu toàn bộ dữ liệu của họ từ đám mây?
Và làm cách nào để người dùng có thể chắc chắn rằng các dịch vụ đám mây sẽkhông hủy toàn bộ dữ liệu của họ trong trường hợp dịch vụ ngừng hoạt động
- Khả năng bảo mật: Vấn đề tập trung dữ liệu trên các “đám mây” là cáchthức hiệu quả để tăng cường bảo mật, nhưng mặt khác cũng lại chính là mối lo
Trang 7của người sử dụng dịch vụ của điện toán đám mây Bởi lẽ một khi các đám mây
bị tấn công hoặc đột nhập, toàn bộ dữ liệu sẽ bị chiếm dụng
- Chi phí băng thông: với tính toán đám mây, người dùng có thể tiết kiệm đượctiền mua sắm các thiết bị phần cứng và phần mềm, tuy nhiên người dùng có thể sẽphải trả chi phí khá cao cho băng thông đối với các ứng dụng dựa trên Internet vớikích thước lớn và sử dụng nhiều dữ liệu
Trên đây là những nhước điểm và cũng là những thách thức đặt ra cho mô hìnhTính toán đám mây
1.1.3 Một số ứng dụng của tính toán đám mây
Các phân tích của giới nghiên cứu đã khẳng định tính toán đám mây làmột trong các xu hướng công nghệ nổi bật Với những thay đổi trong giới côngnghiệp đó, ngày càng có nhiều mô hình nền tảng cloud được xây dựng, vài tổchức học thuật và công nghiệp cũng đã bắt đầu nghiên cứu tỉ mỉ và phát triểncác công nghệ cũng như cơ sở hạ tầng cho điện toán đám mây Sau đây là mộtvài ứng dụng tiêu biểu
a Amazon Elastic Compute Cloud (EC2)
Dự án EC2 cung cấp một môi trường tính toán ảo để người dùng có thể chạycác ứng dụng trên Linux Người dùng EC2 có thể tự tạo một máy ảo mới, được gọi
là Amazone Machine Image (AMI) chứa các ứng dụng, thư viện, dữ liệu và các cấuhình thích hợp hoặc có thể chọn AMI từ một thư viện có sẵn Sau đó, người sử dụngphải upload AMI này lên Amazon Simple Stogre Service (S3) để có thể sử dụngđược Amazon EC2 sẽ tính phí dựa trên thời gian hoạt động của máy ảo người dùng
và Amazon S3 sẽ tính phí trên khối lượng dữ liệu gởi và nhận
b Google App Engine
Google App Engine cho phép người dùng chạy các ứng dụng web viếtbằng ngôn ngữ Python Ngoài việc hỗ trợ các thư viện Python chuẩn, GoogleApp Engine còn hỗ trợ một số API về lưu trữ dữ liệu, quản lý tài khoản Google,dịch vụ email… Bên cạnh đó Google App Engine còn hỗ trợ giao diện quản trịqua web cho người dùng dễ dàng quản lý các ứng dụng web đang chạy Hiện tạiGoogle App Engine đang cho sử dụng miễn phí với dung lượng lưu trữ lên đến
Trang 8500 MBs và có khoảng 5 triệu lượt truy cập mỗi tháng.
c Microsoft Live Mesh
Microsoft Live Mesh hướng tới việc cung cấp cho người dùng một nơi lưu trữ
dữ liệu, ứng dụng tập trung và có thể truy xuất được bằng nhiều loại thiết bị (có thể làmáy tính hay điện thoại di động) từ bất kỳ đâu trên thế giới Người dùng có thể truyxuất đến dữ liệu hay ứng dụng của mình thông qua Web-based Live Desktop hay từchính các thiết bị của mình bằng cách cài đặt phần mềm Lite Mesh lên thiết bị đó Mỗingười dùng sẽ có một mật khẩu bảo vệ và chứng thực thông qua Windows Live Logintrên kênh truyền sử dụng SSL để bảo vệ
1.2 Các mô hình triển khai của tính toán đám mây
1.2.1 Các đám mây công cộng- Public cloud
a Đặc điểm
Các đám mây công cộng (Public cloud ) là các dịch vụ đám mây đượcmộ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ý
Các đám mây công cộng cố gắng cung cấp cho người tiêu dùng với cácphần tử công nghệ thông tin tốt nhất bao gồm các phần mềm, cơ sở hạ tầng ứngdụng hoặc cơ sở hạ tầng vật lý Nhà cung cấp đám mây chịu trách nhiệm về càiđặt, quản lý, cung cấp và bảo trì Khách hàng chỉ chịu phí cho các tài nguyênnào mà họ sử dụng, vì thế cái chưa sử dụng được loại bỏ
Các dịch vụ thường được cung cấp với ý tưởng cung cấp các trường hợp
sử dụng phổ biến nhất Các tùy chọn cấu hình thường là một tập hợp con nhỏhơn so với những gì mà chúng đã có nếu nguồn tài nguyên đã được người tiêudùng kiểm soát trực tiếp Một điều khác cần lưu ý là kể từ khi người tiêu dùng
có quyền kiểm soát một chút trên cơ sở hạ tầng, các quy trình đòi hỏi an ninhchặt chẽ và tuân thủ quy định dưới luật sẽ không phải lúc nào cũng thích hợpcho các đám mây chung
Trang 9Đám mây công cộng (nguồn Internet)
b Trường hợp sử dụng
- Phân bố tải workload cho các ứng dụng được sử dụng bởi nhiều người,chẳng hạn như e-mail
- Cần phải thử nghiệm và phát triển các mã ứng dụng
- Có các ứng dụng SaaS từ một nhà cung cấp có một chiến lược an ninhthực hiện tốt
- Cần gia tăng công suất (khả năng bổ sung năng lực cho máy tính caonhiều lần)
ty và chúng được doanh nghiệp quản lý
Các đám mây riêng đưa ra nhiều lợi ích giống như các đám mây chungvới sự khác biệt chính: doanh nghiệp có trách nhiệm thiết lập và bảo trì đámmây này Việc thiết lập một đám mây riêng đôi khi sẽ khó khăn hơn và phải chiphí cao hơn so với sử dụng đám mây chung
Trang 10Các đám mây riêng đưa ra nhiều lợi thế hơn so với loại chung như việckiểm soát chi tiết hơn trên các tài nguyên khác nhau đang tạo thành một đámmây mang lại cho công ty tất cả các tùy chọn cấu hình có sẵn, các đám mâyriêng là lý tưởng khi các kiểu công việc đang được thực hiện cần quan tâm về anninh và về quản lý.
b Trường hợp sử dụng
- Dữ liệu và ứng dụng cần có sự kiểm soát và bảo mật cao
- Công việc đòi hỏi vấn đề an ninh nghiêm ngặt và bảo mật dữ liệu
- Công ty đủ lớn để chạy một dữ liệu trung tâm điện toán đám mây cóhiệu quả
1.2.3 Các đám mây lai- Hybrid cloud
a Đặc điểm
Các đám mây lai (Hybrid cloud ) là một sự kết hợp của các đám mây côngcộng và riêng Những đám mây này thường do doanh nghiệp tạo ra và các tráchnhiệm quản lý sẽ được phân chia giữa doanh nghiệp và nhà cung cấp đám mâycông cộng Đám mây lai sử dụng các dịch vụ có trong cả không gian công cộng
và riêng
Các đám mây lai được sử dụng 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 Một đám mây lai được xây dựng tốt cóthể phục vụ các quy trình nhiệm vụ-tới hạn, an toàn, như nhận các khoản thanh
Trang 11toán của khách hàng, cũng như những thứ là không quan trọng bằng kinh doanh,như xử lý bảng lương nhân viên.
Hạn chế: khó khăn trong việc tạo ra và quản lý có hiệu quả một giải phápnhư vậy Phải có thể nhận được và cung cấp các dịch vụ lấy từ các nguồn khácnhau như thể chúng có chung nguồn gốc Việc tương tác giữa các thành phầnriêng và chung có thể làm cho việc thực hiện cực kỳ phức tạp
b Trường hợp sử dụng
- Người dùng muốn sử dụng một ứng dụng SaaS nhưng quan tâm về bảomật Nhà cung cấp SaaS có thể tạo ra một đám mây riêng cho người dùng bên trongtường lửa và cung cấp cho bạn một mạng riêng ảo (VPN) để bổ sung bảo mật
- Người dùng cung cấp dịch vụ được thay đổi cho thị trường khác nhau.Người dùng có thể sử dụng một đám mây công cộng để tương tác với kháchhàng nhưng giữ dữ liệu của mình được bảo đảm trong vòng một đám mây riêng
1.2.4 Các đám cộng đồng- Community cloud
Các đám mây cộng đồng là các đám mâ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ộtbên thứ ba Một đám mây cộng đồng có thể được thiết lập bởi một số tổ chức cóyêu cầu tương tự và tìm cách chia sẻ cơ sở hạ tầng để thực hiện một số lợi íchcủa điện toán đám mây Tùy chọn này là tốn kém hơn nhưng có thể đáp ứng về
sự riêng tư, an ninh hoặc tuân thủ các chính sách tốt hơn
Trang 122 KIẾN TRÚC CỦA TÍNH TOÁN ĐÁM MÂY
Mô hình tổng quan kiến trúc các tầng dịch vụ của điện toán đám mây
2.1 Dịch vụ phần mềm (SaaS: Software as a Services)
2.1.1 SaaS là gì.
Đây là mô hình dịch vụ mà trong đó nhà cung cấp dịch vụ sẽ cung cấpcho 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ầnlự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
SaaS cung cấp các ứng dụng hoàn chỉnh như một dịch vụ theo yêu cầucho nhiều khách hàng thông qua internet Trong SaaS cần 1 server đóng vai tròhosting quản lý ứng dụng Server này có thể là 1 cloud hoặc một mainframe.Người dùng truy xuất ứng dụng này thông qua website Như vậy SaaS gồm 1phần mềm được sở hữu, cài đặt và điều khiển từ xa so với các phần mềm truyềnthống được cài đặt trực tiếp trên máy người dùng
SaaS đưa ra các cơ hội mới cho các nhà cung cấp phần mềm Cụ thể bốnnhân tố động lực được các nhà cung cấp phần mềm SaaS trích dẫn như các nhân
tố hàng đầu để làm tăng lợi tức đầu tư:
- Tốc độ triển khai tăng lên
- Sự chấp nhận của người dùng tăng lên
- Các yêu cầu hỗ trợ giảm xuống
- Chi phí thực hiện và nâng cấp giảm xuống