Khái niệm Điện toán đám mây: - Theo Wikipedia: “Điện toán đám mây 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
Trang 1TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
BÀI THU HOẠCH MÔN HỌC ĐIỆN TOÁN LƯỚI VÀ ĐÁM MÂY
MSHV: CH1301057 Lớp : CH K8 - UIT
Trang 2MỤC LỤC
Trang
1 Khái niệm cơ bản 1.1 Lịch sử phát triển điện toán đám mây 1.2 Khái niệm Điện toán đám mây
2 Kiến trúc điện toán đám mây
2.1 Các mô hình dịch vụ điện toán đám mây 2.2 Các mô hình triển khai
3.3 Các dịch vụ (services) 3.4 Tài khoản Google (Google accounts) 3.5 Các công cụ lập trình (programming tools)
Trang 3LỜI MỞ ĐẦU
Em xin chân thành cảm ơn thầy PGS.TS Nguyễn Phi Khứ, người
đã tận tâm truyền đạt kiến thức nền tảng, cung cấp những thông tin,
tư liệu quý giá về môn Điện toán lưới và đám mây để cho em hòan thành bài thu hoạch này
Thành phố Hồ Chí Minh, Tháng 06 Năm 2014
Trang 4CHƯƠNG I
TỔNG QUAN VỀ ĐIỆN TOÁN ĐÁM MÂY
(CLOUD COMPUTING)
1 KHÁI NIỆM CƠ BẢN
1.1 Lịch sử phát triển điện toán đám mây:
Tuy ý tưởng về điện toán đám mây có mặt rất lâu đời, nhưng sự nở rộ các công ty cung cấp các dịch vụ mới được bắt đầu từ những năm sau năm
2000 Lịch sử các công ty cung cấp phần mềm được tóm gọn trong hình dưới đây:
Hình 1 Lịch sử phát triển của cloud computing
Điện toán đám mây là cuộc cách mạng lần 3 trong công nghiệp IT tiếp sau cuộc cách mạng PC thập kỷ 80 và Internet thập kỷ 90
Hình 2 Các cuộc cách mạng trong công nghiệp IT
Trang 51.2 Khái niệm Điện toán đám mây:
- Theo Wikipedia: “Điện toán đám mây 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)”
- Theo NIST: “Điện toán đám mây là mô hình điện toán cho phép truy cập qua mạng để lựa chọn và sử dụng tài nguyên tính toán theo nhu cầu một cách thuận tiện và nhanh chóng, đồng thời cho phép kết thúc sử dụng dịch
vụ, giải phóng tài nguyên dễ dàng, giảm thiểu các giao tiếp với nhà cung cấp”
Theo đó, mô hình chính là cho phép sử dụng dịch vụ theo yêu cầu demam service); cung cấp khả năng truy cập dịch vụ qua mạng rộng rãi từ máy tính để bàn, máy tính xách tay tới thiết bị di động (broad net-work access); với tài nguyên tính toán động, phục vụ nhiều người (resource pooling for multi-tenanci), năng lực tính toán phần mềm dẻo, đáp ứng nhanh với nhu cầu thấp tới cao (rapid elasticity) Mô hình Điện toán đám mây cũng đảm bảo việc sử dụng các tài nguyên được “đo” để cung cấp dịch vụ quản trị và tối ưu được tài nguyên, đồng thời người dùng chỉ phải trả chi phí cho phần tài nguyên đã sử dụng (pay-by-use)
(on-Hình 3 Mô hình tổng quan về điện toán đám mây
2 KIẾN TRÚC ĐIỆN TOÁN ĐÁM MÂY
2.1 Các mô hình dịch vụ điện toán đám mây
Dựa vào các dịch vụ đám mây cung cấp, có 3 loại mô hình điện toán đám mây: dịch vụ cơ sở hạ tầng (IaaS), dịch vụ nền tảng (PaaS), và dịch vụ phần mềm (SaaS)
Trang 6Hình 4 Ba lớp chính của điện toán đám mây (SaaS, PaaS, IaaS)
và thêm một lớp DaaS dùng để lưu trữ cơ sở dữ liệu
Dịch vụ phần mềm (Software as a Service – SaaS)
Là một loại trình ứng dụng thích hợp đối với dịch vụ cho người dùng, cho các phần mềm như là dịch vụ trên internet và loại bỏ các nhu cầu như cài đặt và chạy các ứng dụng trên máy tính cục bộ để đơn giản hóa việc bảo trì và hỗ trợ
Một trong những khác biệt chính của việc dùng trình ứng dụng là trình ứng dụng thường được dùng mà không thể làm nhiều sự thích nghi
và cách tốt nhất không tích hợp chặt chẽ với hệ thống khác Như trình ứng dụng có thể truy cập từ các thiết bị client khác nhau bằng cách dùng giao diện client, ví dụ trình duyệt web; nhà cung cấp dịch vụ làm tất cả hoạt động và b trì các lớp ứng dụng
Trình ứng dụng là ứng cử viên được đưa ra SaaS là sự tính toán, hội nghị truyền hình, quản lý khách hàng và quản lý dịch vụ công nghệ thông tin Một trong những lợi điểm của SaaS là chi phí thấp hơn, người dùng quen thuộc với www, tính sẵn dùng và an toàn của web
Dịch vụ nền tảng (Platform as a Service – PaaS)
PaaS cung cấp tất cả những gì cần thiết để xây dựng các ứng dụng trực tiếp từ Internet mà không cần cài đặt phần mềm cục bộ
PaaS mô hình dịch vụ cho phép triển khai các ứng dụng mà không cần chi phí và độ phức tạp của việc mua / quản lý phần cứng cơ bản và các lớp phần mềm bên dưới
Khách hàng có thể triển khai một ứng dụng trực tiếp trên cơ sở hạ tầng điện toán đám mây, mà không cần phải quản lý và kiểm soát cơ sở hạ tầng, sử dụng ngôn ngữ lập trình và các công cụ hỗ trợ bởi một nhà cung cấp
Khách hàng có kiểm soát đối với các ứng dụng của nó và cấu hình lưu trữ môi trường của Nó hỗ trợ giao diện phát triển web như Simple Object Access Protocol (SOAP) và Representational State Transfer (REST) Các giao diện cho phép xây dựng nhiều dịch vụ web (mash-up),
Trang 7và cũng có thể truy cập cơ sở dữ liệu và các dịch vụ tái sử dụng có sẵn trong mạng riêng
Dịch vụ cơ sở hạ tầng (Infrastructure as a Service – IaaS)
Cơ sở hạ tầng như một dịch vụ cung cấp một cơ sở hạ tầng máy tính
là một nguồn tài nguyên cơ bản như sức mạnh xử lý, dung lượng lưu trữ
và mạng lưới khách hàng, thay vì xây dựng trung tâm dữ liệu, mua máy chủ, phần mềm hay thiết bị mạng, khách hàng mua các nguồn tài nguyên như một dịch vụ hoàn toàn bên ngoài mà không cần phải cài đặt trên máy
cá nhân
Khách hàng không cần phải quản lý cơ sở hạ tầng cơ bản nhưng có toàn quyền kiểm soát các hệ điều hành và các ứng dụng chạy trên nó Các mô hình IaaS thường cung cấp các hỗ trợ tự động theo yêu cầu khả năng mở rộng của máy tính và tài nguyên lưu trữ
Dịch vụ cơ sở dữ liệu (Database as a Service – DaaS)
Dịch vụ đám mây hỗ trợ DaaS dành cho các cơ quan nhà nước và chính quyền địa phương, DaaS còn cung cấp không gian lưu trữ mà khách hàng có thể sử dụng bao gồm cả băng thông cho lưu trữ
Các ví dụ điển hình về các dịch vụ điện toán đám mây:
- Dịch vụ EC2 của Amazon là một dịch vụ IAAS điển hình Khách hàng
có thể đăng ký sử dụng một máy tính ảo trên dịch vụ của Amazon và lựa chọn một hệ thống điều hành (ví dụ, Windows hoặc Linux) và tự cài đặt ứng dụng của mình
- Dịch vụ App Engine của Google là một dịch vụ PaaS điển hình, cho phép khách hàng xây dựng các ứng dụng web với môi trường chạy ứng dụng
và phát triển dựa trên ngôn ngữ lập trình Java hoặc Python
- Dịch vụ SaaS nổi tiếng nhất phải kể đến Salesforce.com với các ứng dụng cho doanh nghiệp mà nổi bật nhất là CRM Các ứng dụng SaaS cho người dùng cuối phổ biến là các ứng dụng office Online của Microsoft hay Google Docs của Google
2.2 Các mô hình triển khai
Trang 8Hình 5 Các mô hình triển khai điện toán đám mây
Private Cloud
Private Cloud đề cập đến cơ sở hạ tầng điện toán đám mây nội bộ cho
tổ chức và thường là không có sẵn cho công chúng Một cơ sở hạ tầng điện toán đám mây private được hoạt động bình thường và có các tổ chức sở hữu nó quản lý Tuy nhiên, một tổ chức cũng có thể có được một nhà cung cấp đám mây công cộng để xây dựng, vận hành và quản lý một cơ sở hạ tầng đám mây riêng cho một tổ chức
Private cloud (hoặc internal cloud) tham chiếu tới tính toán đám mây trên các private networks Private cloud được xây dựng để dùng riêng cho một client, client được kiểm soát hoàn toàn về dữ liệu, an ninh và chất lượng dịch vụ
Hình 6 Mô hình Private Cloud và Public Cloud
Public Cloud
Mô hình public cloud computing (hoặc external cloud computing), tài nguyên tính toán được cung cấp linh hoạt trên Internet thông qua các Web applications hoặc Web Services từ một nhà cung cấp thứ ba phi trực
Trang 9tuyến (offsite third-party provider) Public cloud được vận hành bởi các bên thứ ba, nhu cầu ứng dụng của các khách hàng khác nhau là tương tự nhau và được hợp nhất trên các cloud servers, các hệ thống lưu trữ và các mạng
Cơ sở hạ tầng điện toán đám mây được thực hiện như là "chỉ trả phí theo nhu cầu sử dụng dịch vụ" và dễ truy cập cho công chúng Một dịch
vụ đám mây công cộng được bán dọc theo dòng của khái niệm được gọi
là điện toán tiện ích Một cơ sở hạ tầng điện toán đám mây công cộng thuộc sở hữu của một tổ chức đang cung cấp các dịch vụ điện toán đám mây, ví dụ như Amazon Web Services và Google AppEngine
Community Cloud
Hạ tầng cơ sở được thiết lập bởi một tập đoàn của một số tổ chức có khả năng có những yêu cầu chung đối với một cơ sở hạ tầng điện toán đám mây Do đó, họ có thể đồng ý thực hiện một cơ sở hạ tầng chung đáng tin cậy và chi phí tốt nhất
Hình 7 Mô hình Community Cloud
Virtual Private Cloud
Virtual Private Cloud là một cơ sở hạ tầng chạy trên đầu của một đám mây công cộng mà có một mạng tùy chỉnh và thiết lập bảo mật và dành cho một tổ chức cụ thể Điện toán đám mây riêng ảo là một giải pháp cho các tổ chức muốn sử dụng điện toán đám mây mà không phải chi phí xây dựng và quản lý đám mây riêng, và để tránh các rủi ro an ninh và bảo mật
Môi trường hybrid cloud kết hợp nhiều mô hình public và private cloud Hybrid cloud thể hiện sự phức tạp khi quyết định cách phân bổ các ứng dụng trên cả public và private cloud
Trang 10Hình 8 Mô hình Hybrid Cloud
3 THÀNH PHẦN
Về cơ bản, Điện toán đám mây được chia ra thành 5 lớp riêng biệt, có tác động qua lại lẫn nhau:
Lớp Client của điện toán đám mây bao gồm phần cứng và phần mềm, để dựa vào đó, khách hàng có thể truy cập và sử dụng các ứng dụng/dịch vụ được cung cấp từ điện toán đám mây Chẳng hạn máy tính và đường dây kết nối
Internet (thiết bị phần cứng) và các trình duyệt web (phần mềm)…
3.2 Application (lớp ứng dụng):
Lớp ứng dụng của điện toán đám mây làm nhiệm vụ phân phối phần mềm như một dịch vụ thông quan Internet, người dùng không cần phải cài đặt
và chạy các ứng dụng đó trên máy tính của mình, các ứng dụng dễ dàng được chỉnh sữa và người dùng dễ dàng nhận được sự hỗ trợ
- Các hoạt động được quản lý tại trung tâm của đám mây, chứ không nằm
ở phía khách hàng (lớp Client), cho phép khách hàng truy cập các ứng dụng từ xa thông qua Website
- Người dùng không còn cần thực hiện các tính năng như cập nhật phiên bản, bản vá lỗi, download phiên bản mới… bởi chúng sẽ được thực hiện
từ các “đám mây”
3.3 Platform (lớp nền tảng):
Cung cấp nền tảng cho điện toán và các giải pháp của dịch vụ, chi phối đến cấu trúc hạ tầng của “đám mây” và là điểm tựa cho lớp ứng dụng, cho phép các ứng dụng hoạt động trên nền tảng đó Nó giảm nhẹ sự tốn kém khi triển khai các ứng dụng khi người dùng không phải trang bị cơ sở hạ tầng (phần cứng và phần mềm) của riêng mình
3.4 Infrastructure (lớp cơ sở hạ tầng):
Cung cấp hạ tầng máy tính, tiêu biểu là môi trường nền ảo hóa Thay vì khách hàng phải bỏ tiền ra mua các server, phần mềm, trung tâm dữ liệu hoặc thiết bị kết nối… giờ đây, họ vẫn có thể có đầy đủ tài nguyên để sử dụng mà
Trang 11chi phí được giảm thiểu, hoặc thậm chí là miễn phí Đây là một bước tiến hóa của mô hình máy chủ ảo (Virtual Private Server)
3.5 Server (lớp server - máy chủ):
Bao gồm các sản phẩm phần cứng và phần mềm máy tính, được thiết kế
và xây dựng đặc biệt để cung cấp các dịch vụ của đám mây Các server phải được xây dựng và có cấu hình đủ mạnh để đám ứng nhu cầu sử dụng của số lượng động đảo các người dùng và các nhu cầu ngày càng cao của họ
Hình 9 Các thành phần điện toán đám mây
4 ĐẶC ĐIỂM
Tự phục vụ theo nhu cầu (On-demand self-service):
Đặc tính kỹ thuật của điện toán đám mây 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ác lớn của hệ thống ra bên ngoài
Truy cập diện rộng (Broad network access):
Điện toán đám mây 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 thick client platforms) như : Mobile phone, Laptop và PDAs…
Dùng chung tài nguyên và độc lập vị trí (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” 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 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ảm xuố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
Người sử dụng không cần quan tâm tới việc điều khiển hoặc khô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 Ví dụ : Tài nguyên sẽ được cung cấp bao gồm : Tài nguyên lưu trữ, xử lý, bộ nhớ, băng thông mạng và máy ảo
Khả năng co giãn nhanh chóng (Rapid elasticity):
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 nhanh chóng Khi nhu cầu tăng,
Trang 12hệ thống sẽ tự động mở rộng bằng cách thêm tài nguyên vào Khi nhu cầu giảm, hệ thống sẽ tự động giảm bớt tài nguyên
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
Điều tiết dịch vụ (Measured service):
Nhiều dịch vụ điện toán đám mây sử dụng mô hình điện toán theo nhu cầu, mô hình tương tự với cách các tiện ích theo nhu cầu truyền thống như điện được tiêu thụ, trong khi một số khác tiếp thị dựa vào tiền đóng trước Điện toán đám mây cho phép giới hạn dung lượng lưu trữ, băng thông, tài nguyên máy tính và số lượng người dùng kích hoạt theo tháng
5 MỘT SỐ ỨNG DỤNG THỰC TIỄN CỦA ĐIỆN TOÁN ĐÁM MÂY
5.1 Cloud application
- Skype: điện thoại và hội nghị truyền hình sử dụng Internet
- Facebook: Trang web tương tác mạng xã hội
- Google docs: Xử lý văn bản, bảng tính, thuyết trình, chia sẻ tập tin
- Zoho suite: Email, xử lý văn bản, bảng tính, thuyết trình, Wiki, chia sẻ tập tin, cơ sở dữ liệu, hoá đơn, các dự án Miễn phí cho sử dụng cá nhân
5.2 Cloud clients
- IPhone - Apple điện thoại thông minh với các ứng dụng phụ có sẵn từ Apple
- Android - google hệ điều hành điện thoại thông minh
- GOS - google phân phối Linux với các kết nối đến dịch vụ đám mây
sở dữ liệu tùy chọn bao gồm Oracle, IBM DB2, MySQL và Microsoft SQL
2005 Máy chủ web IIS có thể được Microsoft, Apache hoặc Sphere Web IBM Ngôn ngữ lập trình bao gồm Java, Ruby on Rails, JBoss, IBM và Oracle WebLogic smash Amazon Dev phải trả tiền cho phép một giao diện thanh toán bằng cách sử dụng tài khoản Amazon với các dịch vụ phần mềm của bạn
Trang 13- Go Grid - máy ảo như Microsoft 2003/2008 Server, cơ sở dữ liệu Server và Redhat Linux Chọn địa chỉ IP, hệ điều hành, các tùy chọn, bộ nhớ yêu cầu Trả tiền cho lưu trữ, Outbound băng thông và bộ nhớ GB / giờ Hầu như ngay lập tức triển khai,
- Force*com - Nền tảng lưu trữ Salesforce phần mềm quản lý khách hàng , mối quan hệ đám mây, phần mềm y tế, phần mềm bất động sản, hợp đồng quản lý phần mềm, phần mềm quản lý nhượng quyền thương mại, hàng tồn kho phần mềm quản lý, thế chấp, ứng dụng và hơn 80.000 ứng dụng tùy chỉnh
5.4 Cloud platform
- Microsoft*NET - Một khuôn khổ chương trình cho máy tính Microsoft Windows Nhóm của lớp lập trình có thể được sử dụng bởi nhiều ngôn ngữ lập trình
- Ruby on Rails - nền tảng ứng dụng Web với một kết thúc trở lại cơ sở dữ liệu Lập trình mã nguồn mở bằng cách sử dụng Ruby mà có thể làm việc trên Linux, Windows và Mac Chương trình có thể chạy từ web Apache hoặc máy chủ Microsoft IIS Twitter được viết bằng Ruby on Rails
- Google App Engine - Sử dụng ngôn ngữ lập trình Python và Java Việc truy cập vào cơ sở dữ liệu trực tuyến, các ứng dụng, file của bạn 150 Mb file giới hạn lưu trữ và băng thông 10 GB / ngày giới hạn áp dụng cho các dịch
vụ miễn phí Chạy các ứng dụng của bạn trên phần cứng của Google
- Google Gears - Browser để cho phép truy cập cơ sở dữ liệu và đồng bộ hóa thông tin Google Docs và Zoho được viết bằng cách sử dụng nền tảng này
- Backup Direct- PC và sao lưu server
- Amazon Simple DB - Lên đến 10 GB lưu trữ cơ sở dữ liệu trên đường dây
- Mobile Me - Apple trang web, email và các tập tin lưu trữ trên đường dây lên đến 20 GB Có thể đồng bộ hóa lịch biểu giữa nhiều thiết bị Apple
- Live Mesh - đồng bộ hóa tập tin và thư mục trên nhiều máy tính bằng cách
sử dụng và quản lý lưu trữ đám mây 5 GB lưu trữ có sẵn miễn phí
Trang 14và chỉnh sửa tài liệu ở bất cứ đâu hay chia sẻ làm việc chung với bạn bè
Google Drive có sẵn và tương thích với PC, Mac và Android, có cả phiên bản dùng cho iPhone và iPad
Hình 10 Google Drive
Tính năng chính của Google Drive
Tạo và cộng tác: Trong Google Drive, bạn có thể tạo tài liệu, bảng
tính và bản trình bày mới tức thì Cùng làm việc đồng thời trên cùng tài liệu và xem các thay đổi khi chúng xuất hiện
Hoạt động tốt hơn với các sản phẩm bạn sử dụng hàng ngày
Trang 15o Gmail - Không còn phải gửi các tệp đính kèm dung lượng lớn
qua email Gửi liên kết từ Google Drive trong Gmail và mọi người sẽ có cùng một tệp, cùng một phiên bản theo cách hoàn toàn tự động
tức trong Google+ nên bạn không bao giờ phải thực hiện nhiều
cú nhấp chuột khi chia sẻ với vòng kết nối của bạn
Tìm kiếm mạnh mẽ: Google Drive giúp bạn truy cập tệp nhanh hơn
Tìm kiếm nội dung theo từ khóa và bộ lọc theo loại tệp, chủ sở hữu và hơn thế nữa Thậm chí Google Drive còn có thể nhận dạng đối tượng trong hình ảnh và văn bản của bạn trong các tài liệu đã quét
Xem bất kỳ nội dung nào: Mở hơn 30 loại tệp ngay trong trình duyệt
của bạn - bao gồm video HD, Adobe Illustrator và Photoshop -ngay cả khi bạn không cài đặt chương trình đó trên máy tính của bạn
Google Drive với các ứng dụng yêu thích của bạn: Tạo, mở và chia
sẻ tệp từ nhiều ứng dụng khác nhau ngay trong in Google Drive
Chia sẻ theo cách bạn muốn: Bạn có thể chia sẻ các tệp hoặc thư mục
với bất kỳ ai và chọn liệu họ có thể xem, chỉnh sửa hoặc nhận xét về nội dung của bạn hay không
Bắt đầu thảo luận: Tạo và trả lời các nhận xét để nhận phản hồi và
làm cho các tệp có tính cộng tác cao hơn
Quay lại kịp thời: Google Drive theo dõi mọi thay đổi bạn thực hiện
- vì vậy, khi bạn nhấn nút lưu, bản sửa đổi mới sẽ được lưu Bạn có thể
tự động xem lại trong vòng 30 ngày hoặc chọn lưu bản sửa đổi vĩnh viễn
2 DROPBOX
Dropbox là dịch vụ sao lưu, lưu trữ dữ liệu trực tuyến với khả năng đồng bộ theo thời gian thực và tự động thực hiện sao lưu, hỗ trợ miễn phí có thể lên đến 20GB dung lượng lưu trữ trực tuyến trên máy chủ của họ
Hình 11 Dropbox