Tải bản đầy đủ (.pdf) (31 trang)

TÌM HIỂU CÔNG NGHỆ ĐIỆN TOÁN ĐÁM MÂY VÀ MỘT SỐ DỊCH VỤ DỰA TRÊN NỀN ĐIỆN TOÁN ĐÁM MÂY

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.06 MB, 31 trang )


ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH
TRƯỜ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

ĐỀ TÀI

TÌM HIỂU CÔNG NGHỆ ĐIỆN TOÁN ĐÁM MÂY
VÀ MỘT SỐ DỊCH VỤ DỰA TRÊN NỀN
ĐIỆN TOÁN ĐÁM MÂY


















Thành Phố Hồ Chí Minh – 06/2014
GVHD: PGS.TS. Nguyễn Phi Khứ
HVTH: Lê Thị Thu Thảo
MSHV: CH1301057
Lớp : CH K8 - UIT

Bài thu hoạch môn Điện toán lưới và đám mây – Tìm hiểu công nghệ điện toán đám mây

HVTH: Lê Thị Thu Thảo CH1301057 Trang 2




MỤC LỤC




Trang
Mục lục
2
Lời mở đầu
3
Chương I: Tổng quan về Điện toán đám mây
4

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. Thành phần
4. Đặc điểm
5. Một số ứng dụng thực tiễn của điện toán đám mây
4
4
5
5
5
7
10
11
12
Chương II: Một số dịch vụ dựa trên nền điện toán đám mây
14
1. Google Drive
2. Dropbox
3. Google App Engine
3.1. Kiến trúc hoạt động Google App Engine
3.2. Thành phần chính và chức năng trong Google App
Engine
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)
4. Windows Azure

4.1. Mô hình ứng dụng trên Cloud
4.2. Nền tảng Windows Azure
4.3. Demo ứng Dụng HelloWorld trên Development
Fabric
14
15
16
16
17

19
20
20
21
21
22
26
Chương III: Kết luận
30
Tài liệu tham khảo
31
Bài thu hoạch môn Điện toán lưới và đám mây – Tìm hiểu công nghệ điện toán đám mây

HVTH: Lê Thị Thu Thảo CH1301057 Trang 3



LỜ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.
Bài thu hoạch môn Điện toán lưới và đám mây – Tìm hiểu công nghệ điện toán đám mây

HVTH: Lê Thị Thu Thảo CH1301057 Trang 4


CHƯƠ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
Bài thu hoạch môn Điện toán lưới và đám mây – Tìm hiểu công nghệ điện toán đám mây


HVTH: Lê Thị Thu Thảo CH1301057 Trang 5

1.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 (on-
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).

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

Bài thu hoạch môn Điện toán lưới và đám mây – Tìm hiểu công nghệ điện toán đám mây


HVTH: Lê Thị Thu Thảo CH1301057 Trang 6




Hì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),
Bài thu hoạch môn Điện toán lưới và đám mây – Tìm hiểu công nghệ điện toán đám mây

HVTH: Lê Thị Thu Thảo CH1301057 Trang 7

và 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

Bài thu hoạch môn Điện toán lưới và đám mây – Tìm hiểu công nghệ điện toán đám mây

HVTH: Lê Thị Thu Thảo CH1301057 Trang 8


Hì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
Bài thu hoạch môn Điện toán lưới và đám mây – Tìm hiểu công nghệ điện toán đám mây

HVTH: Lê Thị Thu Thảo CH1301057 Trang 9

tuyế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
dữ liệu.
 Hybrid Cloud
Là một thành phần của hai hoặc nhiều mô hình triển khai điện toán
đám mây.
Các yếu tố trong một điện toán đám mây lai vẫn còn độc đáo nhưng
những người đang bị ràng buộc với nhau bằng công nghệ tiêu chuẩn hoặc
độc quyền cho phép tính di động của dữ liệu và các ứng dụng.
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.
Bài thu hoạch môn Điện toán lưới và đám mây – Tìm hiểu công nghệ điện toán đám mây

HVTH: Lê Thị Thu Thảo CH1301057 Trang 10


Hì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:
3.1. Client (lp khách hng):
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à
Bài thu hoạch môn Điện toán lưới và đám mây – Tìm hiểu công nghệ điện toán đám mây

HVTH: Lê Thị Thu Thảo CH1301057 Trang 11

chi 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,
Bài thu hoạch môn Điện toán lưới và đám mây – Tìm hiểu công nghệ điện toán đám mây

HVTH: Lê Thị Thu Thảo CH1301057 Trang 12

hệ 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
Google.
- Firefox / Google Chrome Trình duyệt Internet

5.3. Cloud infrastructure
- Applicationsnet*com - VOIP lưu trữ, máy chủ web, ứng dụng đám mây
lưu trữ và lưu trữ máy ảo.
- Amazon Elastic Compute Cloud EC2 - Bao gồm Amazon Simple Storage
Service, Amazon DB Đơn giản và Amazon Simple Queue Service. Hệ điều
hành bao gồm Windows Server và các bản phân phối Linux khác nhau. Cơ
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.
Bài thu hoạch môn Điện toán lưới và đám mây – Tìm hiểu công nghệ điện toán đám mây

HVTH: Lê Thị Thu Thảo CH1301057 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.

5.5. Cloud service
- Paypal - Instant World tùy chọn thanh toán rộng trong nhiều loại tiền tệ bằng
cách sử dụng tài khoản người dùng Paypal hay thẻ tín dụng phổ biến.
- Google Maps
- Amazon Simple Queue Service - Cung cấp phân phối tin nhắn qua mạng
Internet.
- Google Custom Search - Cung cấp các tùy chỉnh Google tìm kiếm trên các
website khác.

5.6. Cloud storage
- 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í.


Bài thu hoạch môn Điện toán lưới và đám mây – Tìm hiểu công nghệ điện toán đám mây

HVTH: Lê Thị Thu Thảo CH1301057 Trang 14


CHƯƠNG II

MỘT SỐ DỊCH VỤ DỰA TRÊN NỀN
ĐIỆN TOÁN ĐÁM MÂY


1. GOOGLE DRIVE
Google Drive là dịch vụ lưu trữ và chỉnh sửa dữ liệu trực tuyến với 15GB
dung lượng miễn phí, cho phép người dùng lưu trữ nhiều dạng dữ liệu như văn
bản, video, âm thanh, PDF… trên nền điện toán đám mây. Google Drive với khả
năng hỗ trợ Google Docs và Google+ cao cấp giúp người dùng dễ dàng truy cập
và 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
Bài thu hoạch môn Điện toán lưới và đám mây – Tìm hiểu công nghệ điện toán đám mây

HVTH: Lê Thị Thu Thảo CH1301057 Trang 15

o 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.
o Google+ Ảnh của bạn trong Google Drive sẽ xuất hiện ngay lập
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

Bài thu hoạch môn Điện toán lưới và đám mây – Tìm hiểu công nghệ điện toán đám mây

HVTH: Lê Thị Thu Thảo CH1301057 Trang 16

Nếu công việc liên quan đến tài liệu và các loại văn bản, giấy tờ dạng Word,
Excel, PDF….thì Dropbox là công cụ tuyệt vời để sao lưu và đồng bộ các tài liệu
này. Sở dĩ nó thích hợp với các tài liệu nh nhàng là bởi vì dung lượng miễn phí
của Dropbox chỉ có 2Gb mà thôi.

Hình 12. Dropbox
Với Dropbox thi bạn dùng máy tính ở bất kỳ đâu cũng giống như dùng chiếc
máy tính riêng của mình. Hơn nữa không bao giờ lo mất dữ liệu khi cài lại máy.
Những điều này thật tuyệt vời.

3. GOOGLE APP ENGINE
Google App Engine (App Engine hay GAE) là một nền tảng điện toán đám
mây của Google để phát triển và lưu trữ ứng dụng web trong những trung tâm dữ
liệu do Google quản lý (google-managed data centers).
Google App Engine (GAE) là một Nền tảng Dịch vụ (PaaS) cho phép các
nhà phát triển đăng ký để chạy các ứng dụng mà họ viết bằng Python, Java hoặc
Go trên cơ sở hạ tầng của Google.

3.1. Kiến trúc hoạt động Google App Engine:

Kiến trúc của App Engine khác với những server lưu trữ ứng dụng web
thông thường. Ở phần lõi của nó, App Engine sẽ hạn chế những truy cập từ
ứng dụng của chúng ta đến cơ sở hạ tầng vật lý, ngăn cản chúng ta từ việc
mở các socket, chạy các tiến trình ngầm, hay các cách đi khác bằng cổng sau
để giúp chương trình của ta có quyền trên môi trường này.
Ứng dụng App Engine đang chạy như một thực thể cô lập trong môi
trường gồm nhiều thành phần. App Engine chia sẻ những nguồn tài nguyên
giữa các ứng dụng nhưng cô lập về dữ liệu và bảo mật giữa những thành phần
với nhau. Ứng dụng của chúng ta có thể sử dụng một số các dịch vụ của
Bài thu hoạch môn Điện toán lưới và đám mây – Tìm hiểu công nghệ điện toán đám mây

HVTH: Lê Thị Thu Thảo CH1301057 Trang 17

Google, như là URLFetch. Bởi vì chúng ta không thể mở cổng (port) một
cách trực tiếp trong ứng dụng của mình, nên phải lệ thuộc vào dịch vụ.
Như vậy, trong GAE, tùy vào ứng dụng viết theo ngôn ngữ nào, nó sẽ
được chạy trên môi trường Java hay Python tương ứng. Song song đó, chúng
ta sẽ được cung cấp sử dụng miễn phí các dịch vụ của google như URL Fetch,
Mail, Memcache, … và được lưu trữ trên cơ sở dữ liệu hướng đối tượng
datastore. Khi yêu cầu được gửi lên từ phía người dùng, GAE sẽ chuyển yêu
cầu đó cho ứng dụng của chúng ta. Tùy theo việc xử lý chúng mà ta cấu hình
và sử dụng các ứng dụng thích hợp của GAE.
3.2. Thành phần chính và chc năng trong Google App Engine:
 Môi trường thực thi (runtime environment):
Một ứng dụng App Engine đáp ứng các yêu cầu web. Một yêu cầu web
sẽ bắt đầu khi có một người dùng hay điển hình là các trình duyệt web của
người dùng gửi một yêu cầu truy cập vào ứng dụng thông qua giao thức
HTTP. Khi App Engine nhận được yêu cầu, nó sẽ xác định ứng dụng dựa vào
tên miền, hoặc tên miền con của <tên bạn>.appspot.com (cung cấp miễn phí
mỗi ứng dụng) hoặc là một tên miền riêng của chúng ta đã được đăng kí và

thiết lập với Google Apps. App Engine lựa chọn một máy chủ từ nhiều máy
chủ để xử lý các yêu cầu đó. Sau đó, App Engine sẽ gửi các yêu cầu đã nhận
được từ người dùng đến ứng dụng phù hợp để xử lý, sau khi đã xử lý xong
các ứng dụng này sẽ gửi dữ liệu trả về cho App Engine, App Engine sẽ nhận
dữ liệu phản hồi từ các ứng dụng và trả về cho người dùng thông qua trình
duyệt web.
Google App Engine cung cấp hai môi trường thực thi tốt cho các ứng
dụng. Đó là Java và Python.
Môi trường Java thực thi các ứng dụng được viết cho JVM6. Ứng dụng
có thể được phát triển dựa vào ngôn ngữ lập trình Java hoặc hầu hết các ngôn
ngữ có thể biên dịch và chạy trên JVM: ví dụ PHP (dùng Quercus), Ruby
(dùng JRuby), Javascript (dùng Rhino), Scala, Groovy. App Engine cũng hỗ
trợ Google Web Tootkit (GWT).
Môi trường Python thực thi các ứng dụng được viết dựa vào ngôn ngữ
lập trình Python bản 2.5. App Engine gọi các ứng dụng Python nhờ vào CGI
(Common Gateway Interface). Ứng dụng có thể dùng hầu hết các thư viện
của Python, các framework của Python như Django, web2py, Pylons.
Cả hai môi trường Java và Python đều sử dụng chung một mô hình: một
yêu cầu gửi đến ứng dụng trên server, ứng dụng được kích hoạt (nếu cần
thiết), gọi bộ phận xử lý yêu cầu và trả về kết quả cho client. Mỗi môi trường
sử dụng bộ tiền xử lý (interpreter) cho riêng mình (JVM hay Python).
Bài thu hoạch môn Điện toán lưới và đám mây – Tìm hiểu công nghệ điện toán đám mây

HVTH: Lê Thị Thu Thảo CH1301057 Trang 18

 Các file server tĩnh (static file servers):
Hầu hết các website có một số tài nguyên mà chúng chuyển đến các
trình duyệt không thay đổi trong suốt hoạt động của site. Ví dụ như các hình
ảnh và các file Css hỗ trợ hiển thị của site, các đoạn mã Javascript chạy trên
trình duyện, và các file HTML tĩnh. Vì việc gửi những file này không cần

đến việc gọi code của ứng dụng, nói cách khác, việc này không cần thiết, làm
giảm hiện quả làm việc của các server ứng dụng.
Thay vì thế, App Engine cung cấp một tập các server tách biệt chuyên
làm nhiệm vụ trao đổi các file tĩnh này. Những server nói trên tối ưu hóa cho
kiến trúc bên trong và hạ tầng mạng để xử lý các requests cho các tài nguyên
tĩnh. Đối với client, các file tĩnh này cũng giống như các tài nguyên khác
được cung cấp bởi ứng dụng của chúng ta.
Chúng ta upload các file tĩnh cùng với code ứng dụng. Chúng ta có thể
cấu hình vài cách hiển thị nhất định cho các file này, bao gồm các URL cho
file tĩnh, loại nội dung, và các hướng dẫn cho trình duyệt để lưu các bản sao
file này trong bộ nhớ cache để giảm lưu lượng và tăng tốc cho trang web.
 Kho dữ liệu (datastore):
Hầu hết mọi ứng dụng web đều cần một nơi để chứa thông tin khi xử lý
yêu cầu từ phía client và lấy thông tin cho những lần yêu cầu sau này. Việc
sử dụng một server làm một trung tâm dữ liệu là một ý tưởng rất hay nhưng
có vấn đề xảy ra khi quá nhiều kết nối được gửi tới server này.
Hệ thống database của Google App Engine gần giống như một đối
tượng database. Thiết kế của App Engine datastore chỉ là trừu tượng để cho
App Engine có thể xử lý việc phân tán và co giãn các ứng dụng. Chính vì thế
trong các đoạn mã của chúng ta sẽ quan tâm đến những thứ khác được nêu
sau đây.
 Thực thể (entities) v Thuộc tính (properties):
Một ứng dụng App Engine có thể chứa dữ liệu trong một hay nhiều thực
thể datastore. Mỗi thực thể có một hay nhiều thuộc tính, mỗi thuộc tính đều
có tên và giá trị. Mỗi thực thể đều được phân loại để tiện cho việc truy vấn.
Ở cái nhìn đầu tiên, chúng ta thấy thực thể có thể gần giống các hàng
(row) trong một bảng trong cơ sở dữ liệu quan hệ. Và mỗi thuộc tính có thể
giống với một cột. Tuy nhiên đối với các thực thể cùng loại với nhau có thể
có các thuộc tính khác nhau. Thứ 2, các thực thể có thể có cùng thuộc tính
với các thực thể cùng loại khác nhưng khác về kiểu dữ liệu. Một điểm khác

nhau nữa giữa thực thể và các hàng (row) là các thực thể có thể có nhiều giá
trị cho một thuộc tính đơn lẻ.
Bài thu hoạch môn Điện toán lưới và đám mây – Tìm hiểu công nghệ điện toán đám mây

HVTH: Lê Thị Thu Thảo CH1301057 Trang 19

Mỗi thực thể có một khóa riêng (key) phân biệt lẫn nhau được cung cấp
bởi ứng dụng hoặc do App Engine. Khác với CSDL quan hệ, khoá của thực
thể không phải là thuộc tính, nó tồn tại độc lập với thực thể. Khoá của thực
thể không được thay đổi khi thực thể đã được tạo ra.
 Truy vấn (queries) v Chỉ mục (indexes):
Một câu truy vấn trên datastore trả về không hoặc nhiều thực thể cùng
loại với nhau. Nó cũng có thể trả về các khóa của thực thể. Câu truy vấn có
thể dựa vào các giá trị thuộc tính của thực thể và được sắp xếp theo giá trị
của thuộc tính. Câu truy vấn cũng có thể làm việc với các khóa của thực thể.
Với App Engine, mỗi câu truy vấn sẽ có một chỉ mục trong datastore.
Khi ứng dụng cần thực hiên một câu truy vấn, thì datastore sẽ tìm chỉ mục
của câu truy vấn đó. Khi chúng ta tạo mới một thực thể và cập nhật cái cũ thì
datastore cũng sẽ cập nhật lại chỉ mục. Điều này giúp cho câu truy vấn được
nhanh hơn.
 Phiên giao dịch (transaction):
Khi một ứng dụng có quá nhiều client liên tục đọc hay ghi cùng một dữ
liệu ở cùng một thời điểm, thì phiên giao dịch rất cần thiết để dữ liệu không
bị đọc sai. Mỗi phiên giao dịch là đơn vị nhỏ nhất và chỉ có hai trạng thái là
thành công hoặc thất bại.
Một ứng dụng đọc hay cập nhật nhiều thực thể trong một phiên giao
dịch, nhưng nó phải nói cho App Engine biết những thực thể nào sẽ được cập
nhật khi nó tạo ra nhiều thực thể. Ứng dụng làm được điều này bởi việc tạo
ra nhóm thực thể. Nhờ nhóm thực thể, App Engine sẽ biết được các thực thể
sẽ phân tán như thế nào qua các server, vì thế nó có thể khng định chắc chắn

là phiên giao dịch thành công hay thất bại. App Engine cũng hỗ trợ những
phiên giao dịch nội bộ (local transaction).
Nếu một người dùng cố gắng cập nhật một thực thể trong khi người
khác đang cập nhật thực thể đó thì datastore sẽ ngay lập tức trả về một biệt
lệ báo lỗi. Trong thuật ngữ database, thì ta nói App Engine sử dụng
“optimistic concurrency control”. Với chỉ mục và “optimistic concurrency
control”, App Engine được thiết kế giúp cho ứng dụng có thể đọc dữ liệu
nhanh hơn và đảm bảo hơn.
3.3. Các dịch vụ (services)
Dịch vụ chính là mối quan hệ giữa datastore với môi trường thực thi.
GAE bao gồm một số các dịch vụ hữu ích cho các ứng dụng web.
Dịch vụ memcache là dịch vụ lưu trữ theo khóa - giá trị. Thuận lợi chính
của dịch vụ này trên datastore là tốc độ nhanh, rất nhanh so với việc lưu trữ
và lấy dữ liệu một cách bình thường trên datastore. Memcache lưu trữ dữ liệu
Bài thu hoạch môn Điện toán lưới và đám mây – Tìm hiểu công nghệ điện toán đám mây

HVTH: Lê Thị Thu Thảo CH1301057 Trang 20

trên bộ nhớ thay vì trên ổ đĩa để tăng tốc độ truy cập. Nó cũng phân tán như
datastore tuy nhiên không lưu trữ, vì thế nếu mất điện thì dữ liệu trên
memcache cũng mất. Và nó cũng có nhiều giới hạn sử dụng hơn datastore.
Việc sử dụng memcache tốt nhất là lưu lại các kết quả của các câu query hay
các tính toán trước đó. Ứng dụng sẽ kiểm tra trong memcache, nếu không có
dữ liệu thì sẽ tiến hành query trên datastore.
Ứng dụng App Engine có thể truy cập các tài nguyên web khác nhờ vào
dịch vụ URL Fetch. Dịch vụ này tạo ra các yêu cầu theo dạng HTTP gửi đến
các server khác trên Internet như là việc tương tác với các web service khác.
Vì khi ta truy cập đến server khác thời gian sẽ lâu nên URL Fetch hỗ trợ chạy
ngầm bên dưới trong khi xử lý các yêu cầu khác.
Ứng dụng App Engine có thể gửi mail dựa vào dịch vụ Mail, hoặc nếu

được cấu hình, nó có thể nhận được email.
Ứng dụng App Engine có thể gửi và nhận những tin nhắn đến các dịch
vụ chat có sử dụng giao thức XMPP bao gồm Google Talk.
3.4. Tài khoản Google (Google accounts):
Các chức năng của App Engine tích hợp trong các tài khoản của Google
như Google Mail, Google Docs và Google Calendar. Chúng ta có thể sử dụng
tài khoản trên Google như cho các ứng dụng của chúng ta mà không cần thiết
lập thêm. Chúng ta cũng có thể xây dựng hệ thống tài khoản riêng, hoặc sử
dụng một provider OpenID.
3.5. Các công cụ lập trình (programming tools):
Google cung cấp một số tool miễn phí cho việc phá triển ứng dụng App
Engine bằng ngôn ngữ Java và Python. Có thể download software
development kit (SDK) cho ngôn ngữ tương ứng và hệ điều hành từ website
Google.
Mỗi SDK bao gồm một server web chạy ứng dụng tại máy cá nhân,
đóng vai trò môi trường thực thi,kho dữ liệu và các service. Server này tự
động phát hiện những thay đổi trong file source và load lại chúng nếu cần, vì
thế chúng ta có thể luôn mở server trong khi đang lập trình cho ứng dụng.
Nếu chúng ta sử dụng Eclipse, chúng ta có thể chạy server cho Java
trong bộ tích hợp debugger, và có thể đặt các breakpoint trong code. Chúng
ta cũng có thể sử dụng Eclipse cho ứng dụng phát triển Python dùng PyDev,
một nhánh mở rộng của Eclipse, bao gồm bộ debugger cho Python.
Mỗi SDK cũng bao gồm một công cụ cho việc tương tác với các ứng
dụng chạy trên App Engine. Chủ yếu là sử dụng cho việc upload code lên
App Engine. Chúng ta cũng có thể sử dụng tool để download các file log từ
ứng dụng đang chạy, hoặc quản lý danh mục ứng dụng.
Bài thu hoạch môn Điện toán lưới và đám mây – Tìm hiểu công nghệ điện toán đám mây

HVTH: Lê Thị Thu Thảo CH1301057 Trang 21


SDK Python và Java gồm một chức năng mà chúng ta có thể cài đặt
trong ứng dụng cho việc truy cập có thứ tự từ xa một cách an toàn đến ứng
dụng. SDK Python bao gồm các công cụ dùng cho việc xử lý dữ liệu lớn, như
upload dữ liệu từ file text, và tải lượng lớn dữ liệu, hoặc sao lưu cho mục
đích lưu trữ. SDK cũng có command-line shell của Python cho việc test, kiểm
lỗi và thao tác với dữ liệu. (Các tool này có trong SDK cho Python, nhưng
cũng làm việc với các ứng dụng Java sử dụng phiên bản Java có chức năng
truy cập từ xa). Chúng ta có thể viết đoạn mã script và chương trình sử dụng
chức năng truy cập từ xa cho việc vận chuyển lượng lớn dữ liệu và các biện
pháp bảo trì khác.
4. WINDOWS AZURE

Windows Azure là một nền tảng Cloud Computing của Microsoft thường để
xây dựng, triển khai và quản lý các ứng dụng thông qua Datacenters. Window
Azure cho phép developers có thể sử dụng nhiều ngôn ngữ lập trình, các công cụ,
frameworks. Các developers có thể thống nhất ứng dụng Public Cloud với môi
trường IT sẵn có của họ.


Hình 13. Windows Azure

4.1. Mô hình ng dụng trên Cloud:
Windows Azure cung cấp 3 mô hình ứng dụng trên Cloud
Bài thu hoạch môn Điện toán lưới và đám mây – Tìm hiểu công nghệ điện toán đám mây

HVTH: Lê Thị Thu Thảo CH1301057 Trang 22



Hình 14. Mô hình ứng dụng trên Cloud


 Virtual Machine của Windows Azure (VMs) có thể được sử dụng trong
nhiều cách khác nhau. Bạn có thể sử dụng để tạo một nền tảng để phát triển
và kiểm thử phần mềm với ít chi phí. Bạn cũng có thể tạo ra một ứng dụng
và chạy nó bởi bất kì ngôn ngữ và thư viện mà bạn muốn. Các ứng dụng đó
có thể sử dụng bất kì chương trình quản lí dữ liệu mà Windows Azure cung
cấp, và bạn cũng có thể chọn SQL Server hay các hệ thống quản trị dữ liệu
chạy trên máy ảo. Một tùy chọn khác là sử dụng VMs như một phần mở
rộng “on-premises datacenter”. Để hỗ trợ điều này , nó có khả năng tạo các
domain trên Cloud bởi Active Directory trên VMs. Đây là cách mới để tiếp
cận Cloud Computing mà có thể nhắm tới nhiều vấn đề khác nhau.
 Web Sites: Windows Azure Web Sites sẽ rất có ích cho cả developer và
designer. Với developer, nó hỗ trợ .NET, PHP, and Node.js, cùng với SQL
Database và MySQL. Hỗ trợ cho các ứng dụng thông dụng bao gồm
WordPress, Joomla, Drupal. Mục tiêu là cung cấp nền tảng với chi phí thấp,
dễ mở rộng cho việc tạo websites và các ứng dung Web.
 Cloud Services: Đây là công nghệ giúp bạn có thể xây dựng ứng dụng và
triển khải nó ngay trên hệ thống đám mây Azure mà không cần quan tâm tới
phần cứng. Developer có thể đưa lên một Website dựa trên Windows Azure
Web Sites và một Webservice dựa trên Windows Azure Hosted Service hay
tự cấu hình một máy chủ qua Windows Azure VMs.
4.2. Nền tảng Windows Azure:
Nền tảng Windows Azure là một nhóm các công nghệ đám mây, mỗi
công nghệ cung cấp một tập các dịch vụ đặc trưng để phát triển ứng dụng.
Hình 15, nền tảng Windows Azure có thể được sử dụng bởi ứng dụng chạy
trên đám mây, và cả ứng dụng chạy on-premise.
Bài thu hoạch môn Điện toán lưới và đám mây – Tìm hiểu công nghệ điện toán đám mây

HVTH: Lê Thị Thu Thảo CH1301057 Trang 23



Hình 15. Nền tảng Windows Azure hỗ trợ ứng dụng,
dữ liệu và cơ sở hạ tầng trên đám mây.

Các thành phần của nền tảng Windows Azure :
- Windows Azure : cung cấp môi trường nền tảng Windows để chạy ứng dụng
và lưu trữ dữ liệu trên máy chủ trong trung tâm dữ liệu của Microsoft.
- SQL Azure : cung cấp dịch vụ dữ liệu trên đám mây dựa trên SQL Server.
- Windows Azure platform AppFabric : cung cấp các dịch vụ đám mây để
kết nối các ứng dụng chạy trên đám mây hoặc on-premise.

 Windows Azure
Ở cấp độ cao nhất, Windows Azure được hiểu đơn giản là một nền
tảng để chạy ứng dụng Windows và lưu trữ dữ liệu trên đám mây.

Hình 16. Windows Azure cung cấp dịch vụ tính toán và lưu trữ
cho ứng dụng đám mây.
Windows Azure chạy trên nhiều máy tính đặt trong trung tâm dữ liệu
của Microsoft và truy xuất qua Internet. Một Windows Azure fabric liên kết
chặt chẽ nhiều sức mạnh xử lí này thành một thể thống nhất.
Bài thu hoạch môn Điện toán lưới và đám mây – Tìm hiểu công nghệ điện toán đám mây

HVTH: Lê Thị Thu Thảo CH1301057 Trang 24

Dịch vụ tính toán dựa trên Windows: Lập trình viên có thể xây dựng
ứng dụng sử dụng .NET Framework, native-code,… Các ứng dụng này được
viết bằng các ngôn ngữ thông thường như : C#, Visual Basic, C++, và Java,
sử dụng Visual Studio hoặc công cụ phát triển khác. Lập trình viên có thể
tạo ứng dụng Web, sử dụng công nghệ như ASP.Net, WCF, và PHP, ứng
dụng cũng có thể chạy như một xử lí nền độc lập, hoặc kết hợp cả Web và

xử lí nền.
Các ứng dụng Windows Azure và ứng dụng on-premise có thể truy
xuất dịch vụ lưu trữ Windows Azure bằng REST API. Dịch vụ lưu trữ cho
lưu trữ các đối tượng dữ liệu lớn (blob), cung cấp các hàng đợi để liên lạc
giữa các thành phần trong ứng dụng Windows Azure, và cung cấp dạng table
với ngôn ngữ truy vấn đơn giản. Đối với các ứng dụng có nhu cầu lưu trữ
dữ liệu quan hệ truyền thống, nền tảng Windows Azure cung cấp cơ sở dữ
liệu SQL Azure.
Tuy nhiên để đạt được những thuận lợi trên đòi hỏi phải quản lí hiệu
quả. Trong Windows Azure, mỗi ứng dụng có một tập tin cấu hình. Bằng
cách cấu hình tập tin này bằng tay hoặc lập trình, người chủ ứng dụng có thể
cấu hình nhiều thành phần như thiết lập số thể hiện mà Windows Azure nên
chạy. Sau đó Windows Azure fabric giám sát ứng dụng để duy trì trạng thái
mong muốn. Để cho phép khách hàng tạo, cấu hình và giám sát ứng dụng.
Windows Azure cung cấp Windows Azure portal. Khách hàng cung cấp một
Windows Live ID, sau đó tạo một tài khoản hosting để chạy ứng dụng, và
một tài khoản lưu trữ để lưu trữ ứng dụng.

 SQL Azure
Một trong những cách hấp dẫn nhất của việc sử dụng máy chủ truy
xuất Internet là xử lí dữ liệu. Mục tiêu của SQL Azure là đánh địa chỉ vùng
này, cung cấp các dịch vụ dựa trên đám mây để lưu trữ và làm việc với thông
tin. Trong khi Microsoft nói rằng SQL Azure sẽ bao gồm một loạt các tính
năng định hướng dữ liệu, đồng bộ hóa dữ liệu, báo cáo, phân tích dữ liệu và
những chức năng khác.

Hình 17. SQL Azure cung cấp các dịch vụ định hướng dữ liệu
trong đám mây.
Bài thu hoạch môn Điện toán lưới và đám mây – Tìm hiểu công nghệ điện toán đám mây


HVTH: Lê Thị Thu Thảo CH1301057 Trang 25

SQL Azure cung cấp một hệ thống quản lí cơ sở dữ liệu dựa trên đám
mây (DBMS). Công nghệ này cho phép ứng dụng on-premise và đám mây
lưu trữ dữ liệu quan hệ và những kiểu dữ liệu khác trên các máy chủ trong
trung tâm dữ liệu Microsoft.
SQL Azure được xây dựng trên Microsoft SQL Server. Cho qui mô
lớn, công nghệ này cung cấp môi trường SQL Server trong đám mây, bổ
sung với index, view, store procedure, trigger,…và còn nữa. Dữ liệu này có
thể được truy xuất bằng ADO.Net và các giao tiếp truy xuất dữ liệu
Windows khác. Khách hàng cũng có thể sử dụng phần mềm on-premise như
SQL Server Reporting Service để làm việc với dữ liệu dựa trên đám mây.
Khi ứng dụng sử dụng Cơ sở dữ liệu SQL Azure thì yêu cầu về quản
lí sẽ được giảm đáng kể. Thay vì lo lắng về cơ chế, như giám sát việc sử
dụng đĩa và theo dõi tập tin nhật ký (log file), khách hàng sử dụng Cơ sở
dữ liệu SQL Azure có thể tập trung vào dữ liệu. Microsoft sẽ xử lí các chi
tiết hoạt động. Và giống như các thành phần khác của nền tảng Windows
Azure, để sử dụng Cơ sở dữ liệu SQL Azure chỉ phần : đến Windows Azure
Web portal và cung cấp các thông tin cần thiết.
Ứng dụng có thể dựa vào SQL Azure với nhiều cách khác nhau:
- Một ứng dụng Windows Azure có thể lưu trữ dữ liệu trong Cơ sở dữ liệu
SQL Azure. Trong khi bộ lưu trữ Windows Azure không hỗ trợ các bảng
dữ liệu quan hệ, mà nhiều ứng dụng đang tồn tại sử dụng cơ sở dữ liệu
quan hệ. Vì vậy lập trình viên có thể chuyển ứng dụng đang chạy sang
ứng dụng Windows Azure với lưu trữ dữ liệu trong SQL Azure.
- Xây dựng một ứng dụng Windows Azure lưu trữ dữ liệu trong SQL
Azure.

 Windows Azure Platform Appfabric
Windows Azure platform AppFabric cung cấp dịch vụ cơ sở hạ tầng

dựa trên đám mây.












Hình 18. Windows Azure platform AppFabric
Các thành phần của Windows Azure platform AppFabric :
- Service Bus: Mục tiêu của Service Bus là cho phép ứng dụng expose
các endpoint có thể được truy xuất bởi các ứng dụng khác. Mỗi exposed

×