1. Trang chủ
  2. » Luận Văn - Báo Cáo

Mô hình kiến trúc và phân loại điện toán đám mây

36 1,5K 7

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 36
Dung lượng 1,79 MB

Nội dung

Mô hình tham chiếu kiến trúc và mô hình triển khai điện toán đám mây hiện nay.

Trang 1

Mô hình kiến trúc và phân loại trong điện toán đám mây

Điện toán đang được chuyển đổi sang một mô hình bao gồm các dịch vụđược sản phẩn hóa và được phân phối theo một cách tương tự như các tiện íchnhư nước, điện, khí đốt, và công nghệ Trong một mô hình như vậy, nhữngngười dùng truy cập các dịch vụ dựa trên những yêu cầu của họ, không cầnbiết nơi mà các dịch vụ đó được lưu trữ Một số mô hình điện toán, như điệntoán lưới (grid computing) chẳng hạn, đã hứa hẹn cung cấp tầm nhìn điện

toán tiện ích này Điện toán đám mây (Cloud computing) là mô hình mới nổi

gần đây nhất hứa hẹn sẽ biến tầm nhìn của “các tiện ích điện toán” thành hiệnthực

Điện toán đám mây là một tiến bộ kỹ thuật tập trung vào cách chúng tathiết kế các hệ thống điện toán, phát triển các ứng dụng, và tận dụng nhữngdịch vụ hiện có để xây dựng phần mềm Nó được dựa trên khái niệm tríc lập

dự phòng động (dynamic provisioning), được áp dụng không chỉ cho các dịch

vụ mà còn cho tính toán khả năng, lưu trữ, mạng, và cơ sở hạ tầng công nghệthông tin nói chung Các nguồn tài nguyên được làm cho có sẵn thông quaInternet và được cung cấp trên cơ sở trả cho mỗi lần sử dụng (pay-per-use) từcác nhà cung cấp điện toán đám mây Ngày nay, bất cứ ai với một thẻ tíndụng có thể đăng ký các dịch vụ đám mây và triển khai, cấu hình các máy chủcho một ứng dụng trong vài giờ, phát triển và thu hẹp cơ sở hạ tầng phục vụứng dụng của nó theo nhu cầu, và chỉ trả tiền cho thời gian mà những nguồntài nguyên này được sử dụng

Chương này cung cấp một cái nhìn tổng quan tóm tắt về hiện tượng điệntoán đám mây

Trang 2

khác cung ứng và như vậy đỡ tốn kém hơn là tự làm lấy), nền tảng và phầnmềm như một dịch vụ, và nhiều thứ khác nữa bây giờ là trọng tâm của ngànhCNTT

Khải niệm đám mây trong lịch sử được sử dụng trong ngành công nghiệp

viễn thông như là một khái niệm trừu tượng của mạng lưới trong các sơ đồ hệthống Sau đó nó đã trở thành biểu tượng của mạng máy tính phổ biến nhất:

Internet Ý nghĩa này cũng áp dụng cho điện toán đám mây, trong đó đề cập

tới một cách Internet làm trung tâm của máy tính Internet đóng một vai trò cơbản trong điện toán dám mây, vì nó đại diện cho nền tảng mà qua đó nhiềudịch vụ điện toán đám mây được cung cấp và có thể truy cập Khía cạnh nàycũng được phản ánh trong định nghĩa được đưa ra bởi Armbrust

Điện toán đám mây đề cập đến các ứng dụng cung cấp các dịch vụ trên Internet và các phần cứng và phần mềm hệ thống trong trung tập dữ liệu cung cấp các dịch vụ.

Định nghĩa này mô tả điện toán đám mây như một hiện tượng đối với toàn

bộ chuỗi: từ phần cứng cơ bản cho tới các dịch vụ phần mềm và các ứng dụngcấp cao Nó giới thiệu khái niệm về tất cả mọi thứ như một dịch vụ, chủ yếugọi là XaaS ( là một từ viết tắt của X-như là-một-dịch vụ, với X có thể là S –software, P – platform, I – infrastructure, H – hardware, D – database,…), nơicác thành phần khác nhau của một hệ thống - cơ sở hạ tâng công nghệ thôngtin, các nền tảng phát triển, cơ sở dữ liệu – được phân phối, đong đếm, và cógiá trị như một dịch vụ Cách tiếp cận mới này ảnh hưởng đáng kể không chỉcách mà chúng ta xây dựng phần mềm mà còn cách chúng ta triển khai nó,làm cho nó dễ tiếp cận, và thiết kế cơ sở hạ tầng CNTT của chúng ta, và thậmchí cả cách các công ty phân bổ chi phí cho các nhu cầu CNTT Phương pháptiếp cận được thúc đẩy bởi điện toán đám mây là toàn cầu: nó bao gồm cả nhucầu của người dụng đơn lẻ lưu trữ tài liệu trên đám mây và nhu cầu của mộtCIO quyết định triển khai một phần hoặc toàn bộ cơ sở hạ tâng CNTT củacông ty trong các đám mây công cộng Khái niệm này của nhiều bên sử dụngmột môi trường điện toán đám mây chia sẻ được nhấn mạnh trong một địnhnghĩa bởi Viện Tiêu chuẩn và Công nghệ Quốc gia Hoa Kỳ (NIST):

Điện toán đám mây là một mô hình cho phép phổ biến, thuận tiện,theo yêu cầu truy cập mạng cho một tổ hợp tác chia sẻ các tài nguyên máy tính có thể cấu hình được (ví dụ,mạng, máy chủ, lưu trữ, ứng dụng và dịch vụ) có thể được cung cấp nhanh chóng và phát hành với nỗ lực quản lý tối thiểu hoặc sự tương tác nhà cung cấp dịch vụ.

Một khía cạnh quan trọng của điện toán đám mây là phương pháp tiếp cậnhướng tiện ích của nó Hơn bất kỳ xu hướng nào khác trong điện toán phântán, điện toán đám mây tập trung vào việc cung cấp dịch vụ với một mô hìnhđịnh giá được đưa ra, trong nhiều trường hợp là một chiến lược “trả cho mỗilần sử dụng” Nó làm cho có thể truy cập lưu trữ trực tuyến, thuê phần cứng

Trang 3

ảo, hoặc sử dụng các nền tảng phát triển và chỉ trả tiền cho việc sử dụng hiệuquả của chúng, không có hoặc tối thiểu chi phí ban đầu Tất cả những hoạtđộng này có thể được thực hiện và lập hóa đơn chỉ đơn giản bằng cách nhậpchi tiết thẻ tín dụng và truy cập các dịch vụ thông qua một trình duyệt web.Điều này giúp chúng ta cung cấp một đặc tính khác nhau và thực tế hơn củađiện toán đám mây Chúng ta có thể xác định ba tiêu chí để phân biệt liệu mộtdịch vụ có được phân phối theo kiểu điện toán đám mây hay không:

 Dịch vụ có thể được truy cập thông qua trình duyệt web hoặc mộtgiao diện lập trình ứng dụng dịch vụ web

 Chi phí đầu tư để bắt đầu là bằng không

 Bạn chỉ trả tiền cho những gì bạn sử dụng khi bạn sử dụng nó

Mặc dù nhiều dịch vụ điện toán đám mây miễn phí cho người dùng đơn lẻ,các dịch vụ lớp doanh nghiêp được phân phối dựa theo một mô hình định giá

cụ thể Trong trường hợp này người dùng đăng ký dịch vụ và thiết lập với nhàcung cấp dịch vụ một thỏa thuận cấp độ dịch vụ (service-level agreement -SLA) xác định các thông số chất lượng của dịch vụ theo đó mà dịch vụ đượccung cấp Tính hướng tiện ích của điện toán đám mây được thể hiện rõ ràngbởi Buyya:

Một đám mây là một loại hệ thống song song và phân tán bao gồm mộttập các máy tính được kết nối với nhau và được áo hóa tự động cung cấp vàtrình thể hiện như một hoặc nhiều tài nguyên máy tính thống nhất dựa trêncác thỏa thuận cấp độ dịch vụ được thiết lập thông qua thương lượng giữa nhàcung cấp dịch vụ và người tiêu dùng

1.2 Mô hình kiến trúc và phân loại.

Điện toán đám mây hỗ trợ bất kỳ dịch vụ CNTT nào mà có thể được tiêuthụ như một tiện ích và được phân phối thông qua một mạng, chủ yếu làInternet Đặc tích này bao gồm các khía cạnh hoàn toàn khác nhau: cơ sở hạtầng, nền tảng phát triển, ứng dụng, và dịch vụ

1.2.1 Mô hình tham chiếu điện toán đám mây

Một đặc điểm cơ bản của điện toán đám mây là khả năng cung cấp, theoyêu cầu, một loạt các dịch vụ CNTT đa dạng Sự đa dạng này tạo ra nhữngnhận thức khác nhau về điện toán đám mây giữa những người sử dụng Mặc

dù thiếu thống nhất, có thể phân loại các dịch vụ điện toán đám mây thành baloại chính: Cơ sở hạ tầng như một dịch vụ (Infrastructure-as-a-Service –IaaS), Nền tảng như một dịch vụ (Platform-as-a-Service - PaaS), và Phầnmềm như một dịch vụ (Software-as-a-Service - SaaS) Các loại có liên quanđến nhau như mô tả trong hình dưới đây, cung cấp một cái nhìn hữu cơ về

Trang 4

điện toán đám mây Sơ đồ này được đề cập như là mô hình tham chiếu điện

toán đám mây, và sẽ được sử dụng để giải thích các công nghệ đồng thời giới

thiệu các nghiên cứu có liên quan

Hình 1.1 Mô hình tham chiếu điện toán đám mây

Trong mô hình, các giải pháp IaaS cung cấp sơ sở hạ tầng theo yêu cầudưới dạng phần cứng, lưu trữ và mạng ảo Phần cứng ảo được sử dụng đểcung cấp tính toán theo yêu cầu dưới dạng các máy ảo Những gì được tạo ratheo yêu cầu của người dùng trên cơ sở hạ tầng nhà cung cấp, và người dùngđược cung cấp các công cụ và giao diện để cấu hình phần mềm được cài đặttrên máy ảo Mô hình định giá thường được xác định bằng số đô la mỗi giờ,với chi phí hàng giờ bị ảnh hưởng bới các đặc điểm của phần cứng ảo Lưutrữ ảo được phân phối dưới dạng không gian đĩa thô hoặc đối tượng lưu trữ.Dạng thứ nhất bổ sung một cung cấp phần cứng ảo yêu cầu lưu trữ bền vững.Dạng thứ hai là một khái niệm trừu tượng mức cao hơn để lưu trữ các thực thểchứ không phải là các tập tin Mạng ảo xác định một tập các dịch vụ quản lýmạng trong các trường hợp ảo và kết nối của chúng tới Internet hoặc mạngriêng

Tiếp theo là đến các giải pháp PaaS Chúng phân phối các môi trườngruntime đàn hồi và có thể mở rộng theo nhu cầu và là nơi tổ chức thực thi củacác ứng dụng Những dịch vụ này được hỗ trợ bởi một nền tảng trung tâm

Trang 5

chịu trách nhiệm cho việc tạo ra môi trường trừu tượng nơi các ứng dụngđược triển khai và thực thi Đó là trách nhiệm của nhà cung cấp dịch vụ đểcung cấp khả năng mở rộng và quản lý khả năng chịu lỗi, trong khi ngườidùng được yêu cầu tập trung vào logic của ứng dụng được phát triển bằngcách tận dụng các API và thư viện của nhà cung cấp

Trên cùng là các giải pháp Saas cung cấp các ứng dụng và dịch vụ theonhu cầu Hầu hết các chức năng phổ biến của các ứng dụng desktop – nhưphần mềm tự động hóa văn phòng, quản lý tài liệu, chỉnh sửa ảnh, và quản lýquan hệ khách hàng (customer relationship management - CRM) – được nhânrộng trên cơ sở hạ tầng của nhà cung cấp và được mở rộng, truy cập thôngqua một trình duyệt theo yêu cầu Các ứng dụng này được chia sẻ trên nhiềungười dùng có tương tác được tách ra từ những người dùng khác Lớp SaaScũng là khu vựng của các website mạng xã hội, tận dụng cơ sở hạ tầng dựatrên đám mây để duy trì tải trọng tạo ra bởi sự phổ biến của chúng

Mỗi lớp cung cấp một dịch vụ riêng cho người dùng Các giải pháp IaaSdành cho người dùng muốn tận dụng điện toán đám mây từ việc xây dựng hệthống điện toán có thể mở rộng đòi hỏi một tập các phần mềm cụ thể Do đódịch vụ IaaS được sử dụng để phát triển các website có thể mở rộng hoặc cho

xử lý nền (background processing) Các giải pháp PaaS cung cấp nền tảng lậptrình có thể mở rộng cho phát triển các ứng dụng và phù hợp hơn khi hệ thốngmới phải được phát triển Các giải pháp SaaS mục tiêu chủ yếu vào ngườidùng muốn hưởng lợi từ khả năng mở rộng, đàn hồi của đám mây mà khôngphải thực hiện bất kỳ phát triển phần mềm, cài đặt, cấu hình bà bảo trì nào.Giải pháp này là thích hợp khi có các dịch vụ SaaS hiện có phù hợp với nhucầu người dùng (ví dụ như thư điện tử, quản lý tài liệu, CRM,…) và một mứctùy biến cần thiết tối thiểu

1.2.2 Kiến trúc

Có thể tập hợp tất cả những nhận thức cụ thể về điện toán đám mây vàomột sơ đồ các lớp được thể hiện trong hình, từ các thiết bị phần cứng tới các

hệ thống phần mềm

Trang 6

Hình 1.2 Cơ sở hạ tầng điện toán đám mây.

Các nguồn tài nguyên đám mây (Cloud Resources) được khai thác để cungcấp các dịch vụ Thông thường, lớp này được thực hiện bằng cách sử dụngmột trung tâm dữ liệu trong đó có hàng trăm tới hàng ngàn các nút được xếpchồng lên nhau Cơ sở hạ tầng đám mây (Cloud infrastructure) có thể khôngđồng nhất vì có nhiều nguồn tài nguyên, như các cụm (clusters) và thậm chí

cả các máy tính được nối mạng chẳng hạn, có thể được sử dụng để xây dựnglên nó Hơn nữa, các hệ thống cơ sở dữ liệu và các dịch vụ lưu trữ khác cũng

có thể là một phần của cơ sở hạ tầng

Cơ sở hạ tầng vật lý được quản lý bởi lõi trung gian (core middleware),các mục tiêu của chúng là cung cấp một môi trường runtime thích hợp chocác ứng dụng và sử dụng tốt nhất các nguồn tài nguyên Dưới cùng của lõitrung gian, các công nghệ ảo hóa được sử dụng để đảm bảo tùy biến môitrường runtime, cách ly ứng dụng, sanboxing, và chất lượng dịch vụ Phầncứng ảo hóa thường được sử dụng phổ biến tại mức này Hypervisor quản lýmột vùng (pool) các nguồn tài nguyên và để lộ ra cơ sở hạ tầng phân tán nhưmột tập các máy ảo Bằng cách sử dụng công nghệ máy ảo có thể phân vùngcác tài nguyên phần cứng như CPU và bộ nhớ và ảo hóa các thiết bị cụ thể,đáp ứng nhu cầu của người sử dụng và ứng dụng Giải pháp này thường đượckết hợp với các chiến lược lưu trữ ảo và mạng ảo, cho phép cơ sở hạ tầnghoàn toàn ảo hóa và được kiểm soát Theo dịch vụ cụ thể được cung cấp chongười dùng cuối, các công nghệ ảo hóa khác có thể được sử dụng; ví dụ, ảo

Trang 7

hóa mức lập trình giúp tạo ra một môi trường runtime di động nơi mà các ứngdụng có thể chạy được và được kiểm soát Kịch bản này thường có nghĩa làcác ứng dụng được lưu trữ trong đám mây được phát triển với một công nghệ

cụ thể hoặc một ngôn ngữ lập trình cụ thể, như Java, NET, hoặc Python.Trong trường hợp này, người dùng không phải xây dựng hệ thống của mình.Quản lý cơ sở hạ tầng là chức năng quan trọng của lõi trung gian, hỗ trợ khảnăng như đàm phán về chất lượng dịch vụ, kiếm soát kết nạp, quản lý thực thi

và giám sát, kế toán, và thanh toán

Sự kết hợp của nền tảng lưu trữ đám mây và các nguồn tài nguyên thườngđược phân loại như một giải pháp IaaS Chúng ta có thể tập hợp các ví dụ vềIaaS thành hai loại: Một số trong chúng cung cấp các lớp quản lý và cơ sở hạtầng vật lý; một số khác chỉ cung cấp lớp quản lý (IaaS (M)) Trong trườnghợp thứ hai, lớp quản lý thường được tích hợp với các giải pháp IaaS khác màcung cấp cơ sở hạ tầng vật lý và tăng giá trị cho chúng

Các giải pháp IaaS phù hợp với thiết kế cơ sở hạ tầng hệ thống nhưngcung cấp các dịch vụ hạn chế để xây dựng các ứng dụng Dịch vụ này đượccung cấp bởi các công cụ và môi trường lập trình đám mây, những thứ tạo nênmột lớp mới để cung cấp cho người dùng một nền tảng phát triển cho các ứngdụng Phạm vi của các công cụ bao gồm các giao diện dựa trên web, các công

cụ dòng lệnh, và các framework cho lập trình song song và phân tán Trongkịch bản này, người dùng phát triển ứng dụng của họ đặc biệt cho các đámmây bằng cách sử dụng các API tại cấp người dùng trung gian (user-levelmiddleware) Vì lý do này, phương pháp này còn được gọi là PaaS (Platform-as-a-Service) vì dịch vụ được cung cấp cho người dùng là một nền tảng pháttriển chứ không phải là một cơ sở hạ tầng Các giải pháp PaaS thường baogồm cơ sở hạ tầng đi kèm như là một phần của dịch vụ được cung cấp cho

người dùng Trong trường hợp của Pure PaaS, chỉ phần trung gian mức người

dùng (user-level middleware) được cung cấp, và nó phải được bổ sung vớimột cơ sở hạ tầng vật lý hoặc ảo

Lớp trên cùng của mô hình tham chiếu được mô tả trong Hình 1.2 baogồm các dịch vụ được phân phối tại mức ứng dụng Chúng chủ yếu được gọi

là SaaS (Software-as-a-Service) Trong nhiều trường hợp có các ứng dụng

Trang 8

trên nền web dựa trên đám mây để cung cấp dịch vụ tới người dùng cuối.Công suất của đám mây được cung cấp bởi các giải pháp IaaS và PaaS chophép các nhà cung cấp phần mềm độc lập phân phối các dịch vụ ứng dụng của

họ trên Internet Các ứng dụng khác thuộc lớp này tận dụng mạnh mẽ Internetcho các chức năng cốt lỗi dựa trên đám mây để duy trì một số lượng lớnngười dùng; đây là trường hợp của các cổng thông tin, nói chung, là cácwebsite mạng xã hội

Mô hình tham chiếu được mô tả trong Hình 1.2 cũng giới thiệu khải niệm

về mọi thứ như là một dịch vụ (XaaS) Đây là một trong những yếu tố quantrọng nhất của điện toán đám mây: Các dịch vụ đám mây từ các nhà cung cấpkhác nhau có thể được kết hợp để cung cấp một giải pháp tích hợp hoàn toànbao gồm tất cả những gì của một hệ thống Các nhà cung cấp IaaS có thể cungcấp các máy ảo nơi mà các giải pháp PaaS được triển khai Khi không cònnhu cầu cho một lớp PaaS, có thể trực tiếp điều chỉnh cơ sở hạ tầng ảo với bộphần mềm cần thiết để chạy các ứng dụng Đây là trường hợp của các trangtrại web ảo: phần mềm đóng gói sẵn một hệ thống phân tán gồm các máy chủweb, máy chủ cơ sở dữ liệu, và các cân bằng tải (load balancers) trên cùngđược cài đặt để chạy các ứng dụng web Khả năng này đã làm cho điện toánđám mây là một lựa chọn thú vị để giảm thiểu vốn đầu tư ban đầu cho cáccông ty khởi nghiệp trong CNTT, cho phép họ nhanh chóng thương mại hóa ýtưởng của họ và phát triển cơ sở hạ tầng của họ dựa theo doanh thu của họ

Bảng 1-1 Tóm tắt các đặc tính của ba loại chính được sử dụng để phân loại

các giải pháp điện toán đám mây

Phân loại Đặc điểm Loại sản phẩn Nhà cung cấp và sản

phẩmSaaS Khách hàng được

cung cấp với các ứngdụng có thể truy cậpbất cứ lúc nào và bất

cứ đâu

Các dịch vụ vàứng dụng web(web 2.0)

SalesForce.com(CRM)

Clarizen.com(projectmanagement)

Google AppsPaaS Khách hàng được

cung cấp một nền tảngcho việc phát triển cácứng dụng được lưu trữtrong đám mây

Các API vàframework

Các hệ thốngtriển khai

Google AppEngineMicrosoft AzureManjrasoft AnekaData SynapseIaaS/ Khách hàng được Cơ sở hạ tầng Amazon EC2 and S3

Trang 9

1.2.3 Infrastructure- and hardware-as-a-service

Các giải pháp IaaS/HaaS là phổ biến nhất và phân khúc thị trường pháttriển của điện toán đám mây Chúng phân phối cơ sở hạ tầng tùy theo yêucầu Các tùy chọn có sẵn trong IaaS cung cấp từ một máy chủ duy nhất chotoàn bộ cơ sở hạ tầng, bao gồm các thiết bị mạng, cân bằng tải, và máy chủweb, máy chủ cơ sở dữ liệu

Công nhệ chính được sử dụng để cung cấp và thực hiện các giải pháp này

là ảo hóa phần cứng: một hoặc nhiều máy ảo cấu hình và kết nối với nhau mộtcách thích hợp xác định hệ thống phân tán trên các ứng dụng được cài đặt vàtriển khai Các máy ảo cũng được coi là các thành phần nguyên tử được triểnkhai và định giá theo các tính năng cụ thể của phần cứng ảo: bộ nhớ, số lượng

bộ vi xử lý, và đĩa lưu trữ Các giải pháp IaaS/HaaS mang lại tất cả những lợiích của ảo hóa phần cứng: phân vùng khối lượng công việc, tách biệt ứngdụng, sandboxing, và điều chỉnh phần cứng Từ quan điểm của các nhà cungcấp dịch vụ, IaaS/HaaS cho phép khai thác tốt hơn cơ sở hạ tầng CNTT vàcung cấp môi trường an toàn hơn để thực thi các ứng dụng bên thứ ba Từquan điểm của khách hàng nó giảm chi phí quản lý và bảo trì cũng như chiphí vốn được cấp để mua phần cứng Đồng thời người dùng có thể tận dụnglợi thế của các tùy chỉnh đầy đủ được cung cấp bởi công nghệ ảo hóa để triểnkhai cơ sở hạ tầng của họ trong các đám mấy; trong hầu hết trường hợp cácmáy ảo chỉ đi kèm với hệ điều hành đã được chọn cài đặt và hệ thống có thểđược cấu hình với tất cả các gói và ứng dụng cần thiết Các giải pháp kháccung cấp các hình ảnh hệ thống đã được đóng gói sẵn mà có các bộ phần mềmcần thiết cho các sử dụng phổ biến nhất: các máy chủ web, máy chủ cơ sở dữliệu, hoặc bộ LAMP Bên cạnh khả năng quản lý máy áo cơ bản, các dịch vụ

bổ sung có thể được cung cấp, thường bao gồm: phân bổ dựa vào tài nguyênSLA, quản lý khối lượng công việc, hỗ trợ thiết kế cơ sở hạ tầng thông quagiao diện web, và khả năng tích hợp các giải pháp IaaS của bên thứ ba

Trang 10

Hình 1.3 Triển khai IaaSHình trên cung cấp một cái nhìn tổng thể các thành phần tạo nên một giảipháp IaaS Có thể phân biệt ba lớp chính: cơ sở hạ tầng vật lý (PhysicalInfrastructure), phần mềm quản lý cơ sở hạ tầng (Infrastructure ManagementSoftware), và giao diện người dùng (Web-Based Management Interface) Tạilớp trên cùng giao diện người dùng cung cấp truy cập tới các dịch vụ được thểhiện trong phần mềm quản lý cơ sở hạ tầng Một giao diện như vậy thườngdựa trên công nghệ web 2.0: các dịch vụ web, RESTful APIs, và mash-ups.Những công nghệ này cho phép hoặc các ứng dụng hoặc người dùng cuốicùng truy cập các dịch vụ được đưa ra bởi cơ sở hạ tầng cơ bản Các ứngdụng web 2.0 cho phép phát triển các console quản lý tính năng đầy đủ đượclưu trữ trong một trình duyệt hoặc một trang web Các dịch vụ web vàRESTful APIs cho phép các chương trình tương tác với dịch vụ mà không cần

sự can thiệp của con người, do đó cung cấp tích hợp đầy đủ trong một hệthống phần mềm Các tính năng cốt lõi của một giải pháp IaaS được thực hiệntrong lớp phần mềm quản lý cơ sở hạ tầng Đặc biệt, quản lý các máy ảo làchức năng quan trọng nhất được thực hiện bởi lớp này Thành phần lập lịchtrình (Scheduler) đóng vai trò trung tâm, phụ trách phân bổ thực thi của các

Trang 11

máy ảo Thành phần lập lịch trình (Scheduler) tương tác với các thành phầnkhác thực hiện các nhiệm vụ khác nhau:

 Thành phần định giá và thanh toán (pricing and billing) quản lý chiphí thực thi mỗi máy ảo và duy trì dữ liệu được sử dụng để tính phíngười dùng

 Thành phần giám sát (monitoring) theo dõi việc thực thi của mỗimáy ảo và duy trì dữ liệu cần thiết để áo cáo và phân tích hiệu suấtcủa hệ thống

 Thành phần dự phòng (reservation) lưu trữ thông tin của tất cả cácmáy ảo đã được thực thi hoặc sẽ được thực thi trong tương lai

 Nếu hỗ trợ thực thi dựa trên QoS (quality of service) được cung cấp,một thành phần quản lý (management) QoS/SLA sẽ duy trì một kholưu trữ của tất cả các SLA thực hiện cùng với người dùng; cùng vớicác thành phần giám sát, thành phần này được sử dụng để đảm bảomột máy ảo đã cho được thực thi với chất lượng mong muốn củadịch vụ

 Thành phần kho lưu trữ VM (VM repository) cung cấp một danhmục các ảnh máy ảo mà người dùng có thể sử dụng để tạo ra cáctrường hợp ảo khác nhau Một số thực hiện cũng cho phép ngườidùng tải lên ảnh máy ảo của họ

 Thành phần quản lý VM pool (VM pool manager) chịu trách nhiệmtheo dõi tất cả các máy ảo đang hoạt động

 Cuối cùng, nếu hệ thống hỗ trợ tích hợp các nguồn tài nguyên bổsung thuộc về một nhà cung cấp IaaS thứ ba, một thành phần tríchlập dự phòng (provisioning) tương tác với thành phần lập lịch trình(scheduler) để cung cấp một máy ảo ở bên ngoài cơ sở hạ tầng vật lýcục bộ được quản lý trực tiếp bởi khối chung (pool)

Lớp dưới cùng bao gồm cơ sở hạ tầng vật lý, trên đó các lớp quản lý hoạtđộng Như đã thảo luận trước đó, cơ sở hạ tầng có thể có các loại khác nhau:

cơ sở hạ tầng cụ thể được sử dụng phụ thuộc vào sử dụng cụ thể của đámmây Một nhà cung cấp dịch vụ có thể sử dụng một trung tâm dữ liệu khổng

lồ chứa hàng trăm hàng ngàn các nút Một cơ sở hạ tầng đám mây được pháttriển trong cơ sở, trong một doanh nghiệp vừa và nhỏ hoặc trong một bộ phậntrường đại học, sẽ có thể dựa trên một cụm (cluster) Ở dưới cùng của môhình cũng có thể cân nhắc một môi trường không đồng nhất nơi các loại tàinguyên khác nhau – máy tính, máy trạm, và các cụm (cluster) – có thể được

Trang 12

tổng hợp Trường hợp này chủ yếu đại diện cho sự tiến hóa của mạng lướimáy tính để bàn nơi mà bất kỳ tài nguyên máy tính có sẵn (như máy tính vàmáy trạm “nhàn rỗi” ngoài giờ làm việc) được khai thác để cung cấp mộtnăng lực tính toán khổng lồ Từ một quan điểm kiến trúc, lớp vật lý cũng baogồm các nguồn tài nguyên ảo được thuê từ các nhà cung cấp IaaS bên ngoài.Trong trường hợp các giải pháp IaaS hoàn toàn, tất cả ba mức độ đượccung cấp như dịch vụ Điều này thường là trường hợp với các nhà cung cấpđám mây công cộng như Amazon, GoGrid, Joyent, Rightscale, Terremark,Rackspace, ElasticHosts, và Flexiscale, sở hữu các trung tâm dữ liệu lớn vàcho phép truy cập vào cơ sở hạ tầng điện toán của họ sử dụng hướng tiếp cậnIaaS Các giải pháp khác thay vì chỉ bao gồm giao diện người dùng và các lớpquản lý phần mềm cơ sở hạ tầng Họ cần phải cung cấp thông tin để truy cậpcác nhà cung cáp IaaS của bên thứ ba hoặc để sở hữu một cơ sở hạ tầng riêngtrong đó phần mềm quản lý được cài đặt Đây là trường hợp với Enomaly,Elastra, Eucalyptus, OpenNebula, và các giải pháp IaaS (M) cụ thể từVMware, IBM, và Microsoft.

Kiến trúc được đề xuất chỉ đại diện cho một mô hình tham chiếu cho việctriển khai IaaS Nó đã được sử dụng để cung cấp cái nhìn sâu sắc vào các đặctính chung phổ biến nhất của phương pháp cung cấp các dịch vụ điện toánđám mây này và các hoạt động thường được thực hiện ở cấp độ này Kiến trúctham khảo áp dụng cho việc triển khai IaaS cung cấp tài nguyên máy tính, đặcbiệt cho các việc lập lịch trình (sheduling) Nếu lưu trữ là dịch vụ chính đượccung cấp, nó vẫn còn có thể phần biệt ba lớp này Vai trò của phần mềm quản

lý cơ sở hạ tầng không phải là để theo dõi và quản lý sự thực thi của máy ảo

mà là để cung cấpquyền truy cập tới các cơ sở hạ tầng lớn và triển khai cácgiải pháp ảo hóa lưu trữ trên lớp vật lý

1.2.4 Platform as a service

Các giải pháp PaaS cung cấp một nền tảng phát triển và triển khai choviệc chạy các ứng dụng trên đám mây Chúng tạo thành các trung gian để cácứng dụng được xây dựng trên đó Một cái nhìn tổng quan về các tính năng đặctrưng cho các tiếp cận PaaS được đưa ra trong sau

Trang 13

Hình 1.4 Mô hình tham chiếu PaaS.

Quản lý ứng dụng (Application Management) là chức năng cốt lõi của lớptrung gian Triển khai PaaS cung cấp các ứng dụng với một môi trườngruntime và không trình bày bất kỳ dịch vụ nào cho việc quản lý cơ sở hạ tầng

cơ bản Chúng tự động hóa quá trình triển khai các ứng dụng tới cơ sở hạtầng, cấu hình các thành phần ứng dụng, dự trữ và cấu hình các công nghệ hỗtrợ như cân bằng tải, cơ sở dữ liệu, hệ thống quản lý thay đổi dựa trên cácchính sách được thiết lập bởi người dùng Các nhà phát triển thiết kế hệ thốngcủa họ xét về mặt ứng dụng và không quan tâm tới phần cứng (vật lý hay ảo),

hệ điều hành, và các dịch vụ mức thấp khác Phần lõi trung gian (CoreMiddleware) chịu trách nhiệm quản lý nguồn tài nguyên và mở rộng các ứngdụng theo yêu cầu hoặc tự động, theo cam kết với người sử dụng Từ quanđiểm của người dùng, phần lõi trung gian trình bày các giao diện cho phép lậptrình và triển khai ứng dụng trên đám mây Đây có thể dưới dạng một giaodiện dựa trên web hoặc dưới dạng các API và thư viện lập trình

Mô hình phát triển cụ thể quyết định cho các ứng dụng xác định giao diệnthể hiện tới người dùng Một số triển khai cung cấp một giao diện hoàn toàndựa trên web được lưu trữ trong đám mây và cung cấp nhiều loại dịch vụ Có

Trang 14

thể tìm thấy môi trường phát triển thích hợp dựa trên 4GL và các khái niệmlập trình trực quan, hoặc môi trường tạo mẫu nhanh (rapid prototypingenvironmnets) nơi các ứng dụng được xây dựng bằng cách lắp ráp các mash-

up và các thành phần người dùng định nghĩa và được tùy chỉnh lần lượt Cáctriển khai khác của mô hình PaaS cung cấp một mô hình đối tượng hoàn chỉnhcho việc đại diện cho một ứng dụng và cung cấp một cách tiếp cận dựa trênngôn ngữ lập trình Cách tiếp cận này thường cung cấp nhiều cơ hội và linhhoạt hơn nhưng phải chịu chu kỳ phát triển dài hơn Các nhà phát triểnthường có toàn bộ sức mạnh của các ngôn ngữ lập trình như Java, NET,Python, hoặc Ruby, với một vài hạn chế để cung cấp khả năng mở rộng và anninh tốt hơn Trong trường hợp này, các môi trường phát triển truyền thống cóthể được sử dụng để thiết kế và phát triển các ứng dụng, sau đó được triểnkhai trên đám mây bằng cách sử dụng các API được đưa ra bởi nhà cung cấpPaaS Các thành phần cụ thể có thể được cung cấp cùng với các thư viện pháttriển để khai thác tốt hơn các dịch vụ được cung cấp bởi môi trường PaaS.Đôi khi một môi trường runtime cục bộ mô phỏng điều kiện của đám mâyđược đưa ra cho người sử dụng để thử nghiệm các ứng dụng trước khi triểnkhai Môi trường này có thể bị hạn chế về tính năng, và nó thường khôngđược tối ưu hóa cho việc mở rộng quy mô

Các giải pháp PaaS có thể cung cấp phần trung gian cho việc phát triểncác ứng dụng cùng với cơ sở hạ tầng hoặc đơn giản cung cấp cho người dùngcác phần mềm được cài đặt trên cơ sở của người dùng (user premises) Trongtrường hợp đầu tiên, nhà cung cấp PaaS cũng sở hữu các trung tâm dữ liệu lớnnơi các ứng dụng được thực thi; trong trường hợp thứ hai, được đề cập như là

Pure PaaS, phần trung gian cấu thành giá trị cốt lõi của việc cung cấp Nó

cũng có thể có các nhà cung cấp phân phối cả phần trung gian và cơ sở hạtầng và chỉ vận chuyển (ship) phần trung gian cho các cài đặt cá nhân

Bảng 4.2 cung cấp phân loại những triển khai PaaS phổ biến nhất Có thể

tổ chức các giải pháp khá nhau thành ba loại lớn: PaaS-I, PaaS-II, PaaS-III.Loại đầu tiên xác định việc triển khai PaaS hoàn toàn theo phong cách điệntoán đám mây cho phát triển và triển khai ứng dụng Chúng cung cấp một môitrường phát triển tích hợp được lưu trữ trong trình duyệt web nơi các ứngdụng được thiết kế, phát triển, tạo ra, và triển khai Đây là trường hợp của

Trang 15

Force.com và Longjump Cả hai cung cấp như nền tảng sự kết hợp của phầntrung gian và cơ sở hạ tầng Trong lớp thứ hai chúng ta có thể liệt kê tất cảcác giải pháp được tập trung vào việc cung cấp một cơ sở hạ tầng có thể mởrộng cho các ứng dụng web, chủ yếu là các website Trong trường hợp này,người phát triển thường sử dụng các API của nhà cung cấp để phát triển ứngdụng Google AppEngine là sản phẩm phổ biến nhất trong loại này Nó cungcấp một runtime có thể mở rộng dựa trên ngôn ngữ lập trình Java và Python,được sửa đổi để cung cấp môt môi trường runtime an toàn và được làm phongphú hơn với các thành phần và các API bổ sung để hỗ trợ khả năng mở rộng.AppScale, một triển khai mã nguồn mở của Google AppEngine, cung cấpgiao diện tương thích phần trung gian mà đã được cài dặt trên một cơ sở hạtầng vật lý Joyent Smart Platform cung cấp một cách tiếp cận tương tự nhưGoogle AppEngine Một cách tiếp cận khác được thực hiện bởi Heroku vàEngine Yard, trong đó cung cấp hỗ trợ khả năng mở rộng cho Ruby – vàRuby trên các website dựa trên các Rail Trong trường hợp này các nhà pháttriển thiết kế và tạo ra các ứng dụng của họ với phương pháp truyền thống vàrồi triển khai chúng bằng cách tải lên nền tảng của nhà cung cấp.

Bảng 1-2 Phân loại Paas

Phân

loại

sản phầmPaaS-I Môi trường runtime

Middleware+Infrastructure

Force.comLongjump

MiddlewareMiddleware+Infrastructure

Middleware+Infrastructure

Middleware+Infrastructure

Middleware

GoogleAppEngineAppScaleHerokuEngine YardJoyent SmartPlatformGigaSpacesXAP

PaaS- Phần trung gian và Middleware+Infrastructur Microsoft Azure

Trang 16

DataSynapseCloud IQManjrasofAnekaApprendaSaaSGridGigaSpacesDataGridLoại thứ ba bao gồm tất cả các giải pháp cung cấp một nền tảng lập trìnhđám mây cho bất cứ loại ứng dụng nào, không chi ứng dụng web Trong đó,phổ biến là Microsoft Window Azure, cung cấp một framework toàn diện đểxây dựng các ứng dụng đám mây hướng dịch vụ trên công nghệ NET, dượclưu trữ trên các trung tâm dữ liệu của Microsoft Các giải pháp khác trongcùng loại, như Manjrasoft Aneka, Apprenda SaaSGrid, Appistry Cloud IQPlatform, DataSynapse, và GigaSpaces DataGrid chỉ cung cấp phần trunggian với các dịch vụ Bảng 2 chỉ cho thấy một vài tùy chọn có sẵn trong phânkhúc thị trường PaaS.

PaaS bao gồm một loạt các giải pháp để phát triển và lưu trữ các ứng dụngtrong đám mây Mặc dù không đồng nhất, ta vẫn có thể xác định một số tiêuchí có thể xuất hiện trong bất cứ triển khai nào Theo ghi nhận của SamCharigton, quản lý sản phẩm tại Appistry.com, có một số đặc điểm quan trọngxác định một giải pháp PaaS:

 Runtime framework Framework này đại diện cho các phần mềm của

mô hình PaaS và các khía cạnh trực quan nhất khi người dùng đề cậptới các giải pháp PaaS Runtime framework thực thi mã lệnh (code)của người dùng cuối dựa trên các chính sách được thiết lập bởi ngườidùng và nhà cung cấp

 Abstraction Các giải pháp PaaS được phân biệt bởi mức độ trừutượng mức cao mà chúng cung cấp Trong khi đó, trong trường hợpcủa các giải pháp IaaS tập trung vào việc phân phối truy cập “raw”tới cơ sở hạ tầng ảo hay vật lý, trong khi PaaS tập trung vào các ứngdụng đám mây phải hỗ trợ Điều này có nghĩa là các giải pháp PaaScung cấp một cách để triển khai và quản lý các ứng dụng trên đámmây chứ không phải là một loạt các máy ảo trên đó cơ sở hạ tầngCNTT được xây dựng và cấu hình

Trang 17

 Automation Môi trường PaaS tự động hóa quá trình triên khai cácứng dụng tới cơ sở hạ tầng, mở rộng chúng bằng các nguồn tàinguyên dự trữ bổ sung khi cần thiết Quấ trình này được thực hiện tựđộng và dựa theo SLA được thiết lập giữa khách hàng và nhà cungcấp Đặc tính này thường không có trong các giải pháp IaaS, chúngchỉ cung cấp các cách để cung cấp thêm nguồn tài nguyên.

 Cloud services Dịch vụ PaaS cung cấp các nhà phát triển và kiếntrúc sư với các dịch vụ và các API, giúp họ đơn giản hóa việc tạo ra

và phân phối các ứng dụng đám mây đàn hồi và tính sẵn sàng cao.Các dịch vụ ày là những phần chính trong các giải pháp PaaS cạnhtranh và thường bao gồm các thành phần cụ thể để phát triển ứngdụng, các dịch vụ tiên tiến cho ứng dụng giám sát, quản lý và báocáo

Một thành phần cần thiết cho một cách tiếp cận dựa trên PaaS là khả năngtích hợp dịch vụ dám mây của bên thứ ba được cung cấp từ một nhà cung cấpkhác bằng cách tận dụng kiến trúc hướng dịch vụ Sự tích hợp như vậy sẽ xảy

ra thông qua các giao diện và giao thức chuẩn Điều này làm cho việc pháttriển các ứng dụng nhanh hơn và có thể phát triển theo nhu cầu của kháchhàng và người sử dụng

Một trong những mối quan tâm lớn nhất của việc tận dụng các giải pháp

PaaS cho việc thực hiện các ứng dụng là vendor lock-in (là tình huống trong

đó một khách hàng sử dụng một sản phẩm hoặc một dịch vụ không thể dễdàng chuyển tiếpsang sản phẩm hoặc dịch vụ của đối thủ cạnh tranh với nhàcung cấp đang sử dụng) Khác với các giải pháp IaaS cung cấp các máy chủ

ảo có thể được tùy chỉnh đầy đủ các phần mềm được cài đặt, môi trường PaaScung cấp một nền tảng cho việc phát triển các ứng dụng, được xác định rõ làmột tập các API và, trong nhiều trường hợp, liên kết ứng dụng với runtime cụthể của nhà cung cấp PaaS Mặc dù cách tiếp cận dựa trên nền tảng đơn giảnhóa mạnh mẽ sự phát triển và chu kỳ phát triển của các ứng dụng, nó đặt ranguy cơ làm cho các ứng dụng này hoàn toàn phụ thuộc vào nhà cung cấp Sựphụ thuộc như vậy có thể trở thành một trở ngại đáng kể trong việc đặt lạimục tiêu (retargeting) các ứng dụng tới môi trường và runtime khác nếu cáccam kết với nhà cung cấp kết thúc Tác động của vendor lock-in trên các ứngdụng rõ ràng thay đổi tùy theo các giải pháp khác nhau Một số trong số họ,

Trang 18

chẳng hạn như Force.com, dựa vào một runtime framework độc quyền, màlàm cho quá trình đặt lại mục tiêu (retargeting) rất khó khăn Một số khác,như Google AppEngine và Microsoft Azure, dựa trên các runtime tiêu chuẩncông nghiệp nhưng xử dụng thiết bị lưu trữ và cơ sở hạ tầng điện toán riêng.Trong trường hợp này có thể tìm thấy lựa chọn thay thế dựa trên các giải phápPaaS thực hiện các giao diện tương tự, với hiệu suất có lẽ khác nhau Một sốkhác như Appistry Cloud IQ Platform, Heroku, và Engine Yard, hoàn toàndựa trên các tiêu chuẩn mở, do đó làm cho việc di chuyển các ứng dụng dễdàng hơn.

Cuối cùng, từ một quan điểm tài chính, mặc dù các giải pháp IaaS chophép chuyển các chi phí đầu tư vào các chi phí hoạt động thông quaoutsourcing, các giải pháp PaaS có thể cắt giảm chi phí phát triển, triển khai,

và quản lý ứng dụng Nó giúp quản lý làm giảm nguy cơ của việc các côngnghệ luôn thay đổi bằng cách giảm tải chi phí nâng cấp công nghệ với nhàcung cấp PaaS Điều này xảy ra với khách hàng của mô hình này, nhữngngười có thể tập trung nỗ lực của họ vào giá trị cốt lỗi của kinh doanh Cáchtiếp cận PaaS, khi đi kèm với các giải pháp IaaS cơ bản, thậm chí giúp cáccông ty mới thành lập cung cấp nhanh chóng cho khách hàng các giải pháptích hợp trên nền tảng được lưu trữ với một chi phí tối thiểu Những điều nàylàm cho PaaS cung cấp một lựa chọn khả thi nhắm tới các phân khúc thịtrường khác nhau

1.2.5 Software as a service

SaaS là một mô hình phân phối phần mềm cung cấp truy cập tới các ứngdụng thông qua Internet như là một dịch vụ trên nền web Nó cung cáp mộtphương tiện cho người sử dụng miễn phí từ quản lý phần cứng và phần mềmphức tạp bằng cách giảm tải công việc cho các bên thứ ba, trong đó xây dựngcác ứng dụng có thể truy cập cho nhiều người dùng thông qua một trình duyệtweb Trong kịch bản này, khách hàng không cần phải cài đặt bất cứ thứ gìtrên cơ sở của họ cũng không phải trả chi phí đáng kể ban đầu để mua phầnmềm và các giấy phép cần thiết Họ đơn giản chỉ cần truy cập website ứngdụng, nhập các thông tin thanh toán của họ và ngay lập tức có thể sử udngjcác ứng dụng, trong hầu hết các trường hợp, có thể tùy chỉnh theo nhu cầu của

họ Về phía nhà cung cấp, các chi tiết cụ thể và các tính năng của từng ứng

Ngày đăng: 20/05/2014, 00:02

HÌNH ẢNH LIÊN QUAN

Hình 1.1 Mô hình tham chiếu điện toán đám mây. - Mô hình kiến trúc và phân loại điện toán đám mây
Hình 1.1 Mô hình tham chiếu điện toán đám mây (Trang 4)
Hình 1.2 Cơ sở hạ tầng điện toán đám mây. - Mô hình kiến trúc và phân loại điện toán đám mây
Hình 1.2 Cơ sở hạ tầng điện toán đám mây (Trang 6)
Bảng 1-1 Tóm tắt các đặc tính của ba loại chính được sử dụng để phân loại - Mô hình kiến trúc và phân loại điện toán đám mây
Bảng 1 1 Tóm tắt các đặc tính của ba loại chính được sử dụng để phân loại (Trang 8)
Hình 1.3 Triển khai IaaS - Mô hình kiến trúc và phân loại điện toán đám mây
Hình 1.3 Triển khai IaaS (Trang 10)
Hình 1.4 Mô hình tham chiếu PaaS. - Mô hình kiến trúc và phân loại điện toán đám mây
Hình 1.4 Mô hình tham chiếu PaaS (Trang 13)
Bảng 1-2 Phân loại Paas. - Mô hình kiến trúc và phân loại điện toán đám mây
Bảng 1 2 Phân loại Paas (Trang 15)
Hình 1.5 Bố trí phần cứng và phần mềm các đám mây riêng. - Mô hình kiến trúc và phân loại điện toán đám mây
Hình 1.5 Bố trí phần cứng và phần mềm các đám mây riêng (Trang 29)
Hình 1.6 Khái quát đám mây lai. - Mô hình kiến trúc và phân loại điện toán đám mây
Hình 1.6 Khái quát đám mây lai (Trang 31)
Hình 1.7 Đám mây cộng đồng. - Mô hình kiến trúc và phân loại điện toán đám mây
Hình 1.7 Đám mây cộng đồng (Trang 34)

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w