48
Đề tài : Nghiên cứu điện toán đám mây. Xây dựng ứng dụng demo. Nhóm 1: - Đinh Thanh Dân _ 12L11200 - Vy Thị Hậu _ 12L1120014. - Lý Thị Kim Ngân _12L11200 - Điền Kim Thoa _12L1120058. - Ngô Thanh Vũ _12L11200..

Đề tài : Nghiên cứu điện toán đám mây. Xây dựng ứng dụng demo

  • Upload
    svea

  • View
    182

  • Download
    27

Embed Size (px)

DESCRIPTION

Đề tài : Nghiên cứu điện toán đám mây. Xây dựng ứng dụng demo. Nhóm 1: - Đinh Thanh Dân _ 12L11200 - Vy Thị Hậu _ 12L1120014. - Lý Thị Kim Ngân _12L11200 - Điền Kim Thoa _12L1120058. - Ngô Thanh Vũ _12L11200. Nội Dung. Điện toán đám mây . Xây dựng ứng dụng demo . - PowerPoint PPT Presentation

Citation preview

Page 1: Đề tài :  Nghiên cứu điện toán  đám mây. Xây dựng ứng dụng demo

Đề tài: Nghiên cứu điện toán đám mây.

Xây dựng ứng dụng demo.

Nhóm 1: - Đinh Thanh Dân _ 12L11200- Vy Thị Hậu _ 12L1120014.- Lý Thị Kim Ngân _12L11200- Điền Kim Thoa _12L1120058.- Ngô Thanh Vũ _12L11200..

Page 2: Đề tài :  Nghiên cứu điện toán  đám mây. Xây dựng ứng dụng demo

A. Điện toán đám mây.B. Xây dựng ứng dụng demo.

Nội Dung

Page 3: Đề tài :  Nghiên cứu điện toán  đám mây. Xây dựng ứng dụng demo

A. Điện toán đám mây.

Page 4: Đề tài :  Nghiên cứu điện toán  đám mây. Xây dựng ứng dụng demo

Điện toán đám mây (cloud computing): việc ảo hóa các tài nguyên tính toán và các ứng dụng.

Điện toán đám mây là mô hình điện toán sử dụng các công nghệ máy tính và phát triển dựa vào mạng Internet.

1. Khái niệm.

Page 5: Đề tài :  Nghiên cứu điện toán  đám mây. Xây dựng ứng dụng demo

Tính linh động: thoải mái lựa chọn các dịch vụ theo nhu cầu, bỏ bớt những thành phần không mong muốn.

Giảm chi phí: giảm chi phí đầu tư, chi phí bản quyền, chi phí mua và bảo trì máy chủ.

Tạo nên sự độc lập: không phụ thuộc vào thiết bị hay vị trí địa lý.

2. Lợi ích của điện toán đám mây:

Page 6: Đề tài :  Nghiên cứu điện toán  đám mây. Xây dựng ứng dụng demo

Tăng cường độ tin cậy: dữ liệu được lưu trữ phân tán tại nhiều cụm máy chủ tại nhiều vị trí khác nhau.

Bảo mật: Khả năng bảo mật được cài thiện do sự tập trung về dữ liệu.

Bảo trì dễ dàng: mọi phần mềm đều nằm trên server thuận tiện cho việc sửa chữa, bảo trì và nâng cấp.

Lợi ích của điện toán đám mây (tt):

Page 7: Đề tài :  Nghiên cứu điện toán  đám mây. Xây dựng ứng dụng demo

Tính riêng tư. Tính sẵn dùng. Mất dữ liệu. Tính di động của dữ liệu và quyền sở hữu. Khả năng bảo mật khi bị tấn công hoạc chiếm

dụng.

Nhược điểm:

Page 8: Đề tài :  Nghiên cứu điện toán  đám mây. Xây dựng ứng dụng demo

3. Cấu trúc phân lớp của mô hình điện toán đám mây.

Page 9: Đề tài :  Nghiên cứu điện toán  đám mây. Xây dựng ứng dụng demo

Client (lớp khách hàng): l◦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.

Cấu trúc phân lớp của điện toán đám mây (tt):

Page 10: Đề tài :  Nghiên cứu điện toán  đám mây. Xây dựng ứng dụng demo

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 qua Internet.◦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.

◦ không 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”.

Application (lớp ứng dụng):

Page 11: Đề tài :  Nghiên cứu điện toán  đám mây. Xây dựng ứng dụng demo

Cung cấp nền tảng cho điện toán. Cung cấp 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”. là điểm tựa cho lớp ứng dụng. Giảm nhẹ sự tốn kém.

Platform (Lớp Nền tảng):

Page 12: Đề tài :  Nghiên cứu điện toán  đám mây. Xây dựng ứng dụng demo

Cung cấp hạ tầng máy tính. chi phí được giảm thiểu. Đây là một bước tiến hóa của mô hình máy chủ

ảo (Virtual Private Server).

Infrastructure (Lớp Cơ sở hạ tầng):

Page 13: Đề tài :  Nghiên cứu điện toán  đám mây. Xây dựng ứng dụng demo

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 người dùng.

Server (Lớp Server - Máy chủ):

Page 14: Đề tài :  Nghiên cứu điện toán  đám mây. Xây dựng ứng dụng demo

Đám mây bao gồm 2 lớp:◦Lớp Back-end.◦ Lớp Front-end.

4. Cách thức hoạt động của điện toán đám mây.

Page 15: Đề tài :  Nghiên cứu điện toán  đám mây. Xây dựng ứng dụng demo

Lớp Front-end là lớp người dùng, cho phép người dùng sử dụng và thực hiện thông qua giao diện.

Khi người dùng truy cập các dịch vụ trực tuyến, họ sẽ phải sử dụng thông qua giao diện từ lớp Front-end.

Và các phần mềm sẽ được chạy trên lớp Back-end nằm ở “đám mây”.

Lớp Back-end bao gồm các cấu trức phần cứng và phần mềm để cung cấp giao diện cho lớp Front-end và được người dùng tác động thông qua giao diện đó.

Cách thức hoạt động của điện toán đám mây (tt):

Page 16: Đề tài :  Nghiên cứu điện toán  đám mây. Xây dựng ứng dụng demo

5.1. kiến trúc của ứng dụng điện toán đám mây.

5. Công nghệ.

Page 17: Đề tài :  Nghiên cứu điện toán  đám mây. Xây dựng ứng dụng demo

Điện toán đám mây là một tổ hợp tính toán dựa trên các thiết bị hạ tầng phần cứng.

Hạ tầng phần cứng bao gồm các máy chủ chứa dữ liệu nhỏ được kết nối lại với nhau như một hệ thống phục vụ cho việc lưu trữ, xử lý dữ liệu và các ứng dụng tính toán trên các tái nguyên khác.

5.1. Kiến trúc của ứng dụng điện toán đám mây (tt).

Page 18: Đề tài :  Nghiên cứu điện toán  đám mây. Xây dựng ứng dụng demo

5.2. Kiến trúc máy chủ:

Page 19: Đề tài :  Nghiên cứu điện toán  đám mây. Xây dựng ứng dụng demo

Là ứng dụng nguyên lý tách khỏi vào hệ thống điện toán đám mây nhằm tách biệt với phần cứng phức tạp của hệ thống với giao diện bên ngoài.

Tạo ra một giao diện người dùng đơn giản, dễ sử dụng hơn và tách biệt giao diện người dùng với hệ thống phần cứng.

Người dùng chỉ cần quan tâm đến ứng dụng mà không cần quan tâm phần cứng bên dưới được thực hiện như thế nào.

5.2. Kiến trúc máy chủ:

Page 20: Đề tài :  Nghiên cứu điện toán  đám mây. Xây dựng ứng dụng demo

Là mô hình lập trình. Được Google phát triển vào năm 2003. Hỗ trợ cho quá trình tính toán song song trên số lượng

tập các dữ liệu lơn lưu trữ ở các cụm máy tính thành phần trong điện toán đám mây.

Trong mô hình này, người dùng định nghĩa:◦ hàm map để tính toán một cặp khóa/giá trị đầu vào, tạo cặp

khóa/giá trị tạm thời.◦Hàm reduce gom tất cả các giá trị tạm thời có chung khóa với

nhau lại và cho ra kết quả mong muốn.

5.3. Map reduce.

Page 21: Đề tài :  Nghiên cứu điện toán  đám mây. Xây dựng ứng dụng demo

Mô hình Map – Reduce:

Page 22: Đề tài :  Nghiên cứu điện toán  đám mây. Xây dựng ứng dụng demo

Tổng quan về luồng thực thi một thao tác Map –Reduce.

Page 23: Đề tài :  Nghiên cứu điện toán  đám mây. Xây dựng ứng dụng demo

Là hệ thống phân tán dữ liệu dành cho các ứng dụng lớn.

được thiết kế nhằm mang lại sự truy xuất dữ liệu tin cậy và hiệu quả.

Cung cấp chế độ nhận lỗi để có thể chạy trên các hệ thống phần cứng có yêu cầu không cao đem lại hiệu năng tốt trên số lượng lớn các máy client.

5.4. Google File System (GFS):

Page 24: Đề tài :  Nghiên cứu điện toán  đám mây. Xây dựng ứng dụng demo

Là một framework dùng để chạy các ứng dụng trên cụm các phần cứng không đòi hỏi cấu hình cao.

Khởi tạo cho một quá trình tính toán tên là MapReduce.

Chương trình ứng dụng có thể chia thành nhiều mạng nhỏ và có thể thực thi ở bất kỳ node nào trong cụm máy tính.

Cung cấp một hệ thống phân tán file trên các node tính toán, cung cấp băng thông tổng hợp cao trên các cụm máy tính.

5.5. Hadoop:

Page 25: Đề tài :  Nghiên cứu điện toán  đám mây. Xây dựng ứng dụng demo

Framewrork Hadoop Mapreduce có cấu trúc chủ / tớ. Có một server master – job Tracker và nhiều slave –

taskTracker. Hadoop được sử dụng rộng rãi ví nó cung cấp một cơ

chế sử dụng tài nguyên hệ thống tối ưu và chi phí thấp.

5.5. Hadoop:

Page 26: Đề tài :  Nghiên cứu điện toán  đám mây. Xây dựng ứng dụng demo

Các dịch vụ điện toán đám mây. Các kiểu điện toán đám mây.

6. Mô hình điện toán dám mây.

Page 27: Đề tài :  Nghiên cứu điện toán  đám mây. Xây dựng ứng dụng demo

Đặc tính: ◦Không nằm ngay tại chỗ (Offsite), có thể được cung cấp bởi

một nhà cung cấp thứ ba. ◦Được truy cập qua mạng Internet.◦Không yêu cầu/yêu cầu kỹ năng CNTT tối thiểu để triển khai

các dịch vụ điện toán đám mây. ◦ Các công nghệ hỗ trợ hoàn toàn vô hình đối với người dùng.◦ Truy cập qua trình duyệt Web hoặc API của dịch vụ web ◦Các tài nguyên được phân bổ riêng hoặc dùng chung ◦ Là các dịch vụ được đo đếm

6.1. Các dịch vụ điện toán đám mây.

Page 28: Đề tài :  Nghiên cứu điện toán  đám mây. Xây dựng ứng dụng demo

Các giải pháp dịch vụ điện toán đám mây được phân thành ba mô hình : SaaS, PaaS, IaaS.

Các dịch vụ điện toán đám mây (tt):

Page 29: Đề tài :  Nghiên cứu điện toán  đám mây. Xây dựng ứng dụng demo

Dịch vụ hạ tầng IaaS (Infrastructure as a Service): ◦Cung cấp dịch vụ cơ bản bao gồm năng lực tính toán, không

gian lưu trữ, kết nối mạng tới khách hàng.◦Đáp ứng nhu cầu tính toán hoặc cài đặt ứng dụng

riêng cho người sử dụng.◦Với dịch vụ này khách hàng làm chủ hệ điều hành, lưu trữ và

các ứng dụng do khách hàng cài đặt.

Các dịch vụ điện toán đám mây.

Page 30: Đề tài :  Nghiên cứu điện toán  đám mây. Xây dựng ứng dụng demo

Cung cấp nền tảng điện toán cho phép khách hàng phát triển các phần mềm.

có thể được cung cấp dưới dạng các ứng dụng lớp giữa, các ứng dụng chủ (application server) cùng các công cụ lập trình với ngôn ngữ lập trình nhất định để xây dựng ứng dụng nền tảng.

Dịch vụ nền tảng PaaS (Platform as a Service)

Page 31: Đề tài :  Nghiên cứu điện toán  đám mây. Xây dựng ứng dụng demo

Có thể được xây dựng riêng và cung cấp cho khách hàng thông qua một API riêng.

Khách hàng điển hình của dịch vụ PaaS chính là các nhà phát triển ứng dụng (ISV).

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.V).

Dịch vụ nền tảng PaaS (Platform as a Service) (tt):

Page 32: Đề tài :  Nghiên cứu điện toán  đám mây. Xây dựng ứng dụng demo

Cung cấp các ứng dụng hoàn chỉnh như một dịch vụ theo yêu cầu cho nhiều khách hàng với chỉ một phiên bản cài đặt.

Khách hàng lựa chọn ứng dụng phù hợp với nhu cầu. 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.

Dịch vụ phần mềm SaaS (Software as a Service).

Page 33: Đề tài :  Nghiên cứu điện toán  đám mây. Xây dựng ứng dụng demo

6.2. Các kiểu điện toán đám mây.

Page 34: Đề tài :  Nghiên cứu điện toán  đám mây. Xây dựng ứng dụng demo

Public Cloud: là các dịch vụ đám mây được một bên thứ ba cung cấp, được lưu trữ đầy đủ và được nhà cung cấp bởi đám mây quản lý.

Private Cloud: là các dịch vụ đám mây được cung cấp trong doanh nghiệp và được doanh nghiệp quản lý.

Hybrid Cloud: là sự kết hợp của các đám mây công cộng và riêng. Những đám mây này thường do doanh nghiệp tạo ra và các trách nhiệm quản lý.

Các kiểu điện toán đám mây (tt).

Page 35: Đề tài :  Nghiên cứu điện toán  đám mây. Xây dựng ứng dụng demo

Google, Microsoft, Amazone, Sun đều đã và đang phát triển những nền tảng điện toán đám mây của riêng mình.

Các nền tảng điện toán đám mây lớn có thể kể đến bây giờ bao gồm : ◦Google App Engine của Google:

http://code.google.com/appengine/ ◦Windows Azure của Microsoft

http://www.microsoft.com/windowsazure/windowsazure/◦ Nền tảng điện toán đám mây ra đời đầu tiên: Amazone

Webservice của Amazon.com.◦ Sun Cloud của Sun

http://www.sun.com/solutions/cloudcomputing/ ◦ Facebook.

Các công ty cung cấp

Page 36: Đề tài :  Nghiên cứu điện toán  đám mây. Xây dựng ứng dụng demo

Giới thiệu Google App Engine.Hướng dẫn cài đặt.Demo.

B. Xây dựng ứng dụng demo.

Page 37: Đề tài :  Nghiên cứu điện toán  đám mây. Xây dựng ứng dụng demo

Google App Engine (AppEngine - GAE ) là giải pháp cho vấn đề điện toán đám mây.

Google cung cấp sẵn một hệ thống máy chủ điện toán đám mây, và người lập trình sẽ viết ứng dụng của mình lên đó.

Ứng dụng này sẽ chạy trên đám mây của Google.

Giới thiệu.

Page 38: Đề tài :  Nghiên cứu điện toán  đám mây. Xây dựng ứng dụng demo

Google App Engine cho phép người dùng chạy các ứng dụng web của bạn trên cơ sở hạ tầng của Google.

App Engine ứng dụng được dễ dàng để xây dựng, dễ bảo trì và nhu cầu lưu trữ dữ liệu lớn.

App Engine không có máy chủ để duy trì.

Giới thiệu (tt).

Page 39: Đề tài :  Nghiên cứu điện toán  đám mây. Xây dựng ứng dụng demo

Không phải thiết kế database, viết SQL để truy vấn data, map data vô object chỉ cần design các class và GAE tự động làm việc với database.

Hiện AppEngine hỗ trợ 2 loại ngôn ngữ là: Python và Java.

Giới thiệu (tt).

Page 40: Đề tài :  Nghiên cứu điện toán  đám mây. Xây dựng ứng dụng demo

Python Runtime: ◦Cung cấp APIs cho datastore, Google Accounts, App Engine

services.◦Để tiện lợi cho việc phát triển web AppEngine cũng cung cấp

một web framework đơn giản là webapp. ◦Do viết bằng ngôn ngữ Python nên AppEngine hỗ trợ hầu hết

các Python framework như Django, CherryPy, Pylons, web.py với một ít thay đổi nhất định.

Các thành phần chính của AppEngine.

Page 41: Đề tài :  Nghiên cứu điện toán  đám mây. Xây dựng ứng dụng demo

Java Runtime Environment: ◦Có thể phát triển ứng dụng cho Java Runtime Environment

sử dụng phổ biến công cụ phát triển web Java và các tiêu chuẩn API.

◦ Ứng dụng tương tác với môi trường bằng cách sử dụng the Java Servlet standard.

◦Các App Engine Java SDK hỗ trợ phát triển các ứng dụng bằng cách sử dụng Java 5 hoặc 6. biến như JavaServer Pages (JSP).

Các thành phần chính của AppEngine.

Page 42: Đề tài :  Nghiên cứu điện toán  đám mây. Xây dựng ứng dụng demo

Java Runtime Environment: ◦Đối với các kho dữ liệu App Engine, Java SDK bao gồm

việc triển khai của Java Data Objects (JDO) và Java Persistence API (JPA) interfaces.

◦Thông thường, các nhà phát triển Java sử dụng các ngôn ngữ lập trình Java và các API để thực hiện các ứng dụng web cho JVM.

Các thành phần chính của AppEngine.

Page 43: Đề tài :  Nghiên cứu điện toán  đám mây. Xây dựng ứng dụng demo

Datastore :◦Là cơ chế để thao tác với dữ liệu trên hệ thống dữ liệu phân

tán của Google. ◦APIs của Datastore sẽ cung cấp Interface để có thể thao tác

với các dữ liệu phía dưới.

Các thành phần chính của AppEngine.

Page 44: Đề tài :  Nghiên cứu điện toán  đám mây. Xây dựng ứng dụng demo

Google Accounts:◦AppEngine liên kết mật thiết với tài khoản Google. Người

dùng có thể cho user login vào ứng dụng của mình bằng tài khoản Google của họ.

App Engine Services :◦Cung cấp nhiều dịch vụ để có thể sử dụng cho ứng dụng. Ví dụ

như: URL Fetch, Mail,…

Các thành phần chính của AppEngine.

Page 45: Đề tài :  Nghiên cứu điện toán  đám mây. Xây dựng ứng dụng demo

Người dùng sẽ phụ thuộc hoàn toàn vào công nghệ của Google và rất khó tách ra một ứng dụng độc lập.

Hạn chế :

Page 46: Đề tài :  Nghiên cứu điện toán  đám mây. Xây dựng ứng dụng demo

YÊU CẦU : ◦ Eclipse . ◦Google plugin cho Eclise. ◦ AppEngine-java-SDK-1.3.8.zip. ◦ Có tài khoản ứng dụng trên goole app engine.

Hướng dẫn cài đặt Google App Engine.

Page 47: Đề tài :  Nghiên cứu điện toán  đám mây. Xây dựng ứng dụng demo

Các bước cài đặt:◦Đăng ký tài khoản trên Google App Engine (đăng ký trên trang

http://appengine.google.com/), tạo ứng dụng trên Google App Engine.

◦Cài đặt Eclipse và Google Plugin cho Eclipse.◦ Triển khai ứng dụng.

Hướng dẫn cài đặt Google App Engine (tt):

Page 48: Đề tài :  Nghiên cứu điện toán  đám mây. Xây dựng ứng dụng demo

Demo ứng dụng.