34
TRƯỜNG ĐẠI HỌC BÁCH KHOA TP. HỒ CHÍ MINH KHOA KHOA HỌC MÁY TÍNH BÁO CÁO SEMINAR Đề tài: TÌM HIỂU VỀ GRID MIDDLEWARE Môn học: TÍNH TOÁN LƯỚI GVGD: TS. Phạm Trần Vũ Học viên: Vũ Chí Hiếu - 09070437 Trần Thị Thanh Nga – 10070489 TP. Hồ Chí Minh, tháng 5 năm 2011

Tìm hiểu về Grid Middleware - University of Technologyptvu/gc/2011/pub/GridMiddleware-rep.pdf · kết cấu, cấu trúc, dịch vụ cơ bản của một ứng dụng và

  • Upload
    others

  • View
    10

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Tìm hiểu về Grid Middleware - University of Technologyptvu/gc/2011/pub/GridMiddleware-rep.pdf · kết cấu, cấu trúc, dịch vụ cơ bản của một ứng dụng và

TRƯỜNG ĐẠI HỌC BÁCH KHOA TP. HỒ CHÍ MINH

KHOA KHOA HỌC MÁY TÍNH

BÁO CÁO SEMINAR

Đề tài:

TÌM HIỂU VỀ GRID MIDDLEWARE

Môn học: TÍNH TOÁN LƯỚI

GVGD: TS. Phạm Trần Vũ

Học viên:

Vũ Chí Hiếu - 09070437

Trần Thị Thanh Nga – 10070489

TP. Hồ Chí Minh, tháng 5 năm 2011

Page 2: Tìm hiểu về Grid Middleware - University of Technologyptvu/gc/2011/pub/GridMiddleware-rep.pdf · kết cấu, cấu trúc, dịch vụ cơ bản của một ứng dụng và

Tìm hiểu về Grid Middleware

2

MỤC LỤC

1. Giới thiệu chung ........................................................................................................................................ 3

1.1. Hệ thống lưới ..................................................................................................................................... 3

1.2. Các thành phần trong kiến trúc Grid tổng quát .................................................................................. 5

1.3. Chuẩn hóa Grid .................................................................................................................................. 6

1.4. Grid Middleware ................................................................................................................................ 9

1.4.1. Định nghĩa Grid Middleware .................................................................................................... 10

1.4.2. Nhiệm vụ và lợi ích của Grid Middleware ................................................................................ 10

1.4.3. Kiến trúc Grid Middleware ....................................................................................................... 12

2. Một số Grid Middleware ......................................................................................................................... 15

2.1. Unicore ............................................................................................................................................. 15

2.1.1. Kiến trúc của UNICORE .......................................................................................................... 16

2.1.2. Các chức năng và đặc tính chính của UNICORE ..................................................................... 17

2.1.3. UNICORE 6 .............................................................................................................................. 18

2.2. Globus .............................................................................................................................................. 21

2.2.1. Mô hình kiến trúc GT2.............................................................................................................. 23

2.2.2. Mô hình kiến trúc GT3.............................................................................................................. 24

2.2.3. Mô hình kiến trúc GT4.............................................................................................................. 26

2.3. gLite ................................................................................................................................................. 30

2.3.1 Kiến trúc của gLite ..................................................................................................................... 31

TÀI LIỆU THAM KHẢO .......................................................................................................................... 34

Page 3: Tìm hiểu về Grid Middleware - University of Technologyptvu/gc/2011/pub/GridMiddleware-rep.pdf · kết cấu, cấu trúc, dịch vụ cơ bản của một ứng dụng và

Tìm hiểu về Grid Middleware

3

1. Giới thiệu chung

1.1. Hệ thống lưới

Ngày nay với sự phát triển mạnh mẽ trong nền công nghiệp sản xuất phần cứng

máy tính, những thế hệ máy tính đã trở nên mạnh mẽ và rẻ hơn rất nhiều so với thế hệ

trước đó. Với sự hữu ích, máy tính đã được sử dụng trong hầu hết mọi công việc của con

người, từ công việc hàng ngày, công sở, kinh doan đến sản xuất, nghiên cứu khoa học.

Do đó số lượng máy tính hiện nay rất lớn với tổng cộng năng lực xử lý và lưu trữ khổng

lồ.

Tuy nhiên, các ứng dụng ngày nay chỉ mới sử dụng được một phần rất nhỏ năng

lực xử lý và lưu trữ do ứng dụng thường chạy trên máy tính cục bộ, phân tán khắp nơi

trên thế giới dẫn tới vấn đề lãng phí quá lớn. Vậy làm sao để tận dụng tốt hơn năng lực

của máy tính?

Ngoài ra cùng với sự phát triển của nhiều lĩnh vực khác nhau, con người ngày

càng đối mặt với nhiều vấn đề lớn, phức tạp trong khoa học, thương mại đòi hỏi xử lý

tính toán, lưu trữ lớn. Một máy tính đơn hay một nhóm các máy tính (cluster) hay thậm

chí một siêu máy tính chuyên dụng cũng không thể đáp ứng được nhu cầu tính toán, lưu

trữ ngày càng lớn như vậy. Một số bài toán có thể được giải quyết nhưng rất khó khăn,

chi phí cao mà không phải tổ chức nào, quốc gia nào cũng thực hiện được. Trong khi đó

còn nhiều bài toán khác không thể giải quyết được với công nghệ tính toán hiện nay.

Thực tế đó khiến người ta nảy sinh ý tưởng kết hợp nhiều máy tính phân tán khắp

nơi trên thế giới thành một siêu máy tính khổng lồ nhằm tận dụng năng lực tính toán, lưu

trữ hiện đang lãng phí để giải quyết bài toán phức tạp với chi phí thấp hơn.

Cùng với sự phát triển của công nghệ mạng, ý tưởng về “siêu máy tính” toàn cầu

đã có cơ sở để trở thành hiện thực. Đến những năm cuối thế kỷ XX, các dự án nghiên cứu

đầu tiên về lĩnh vực này đã khai sinh ra công nghệ Grid Computing. Công nghệ Grid

Computing ra đời được dự đoán là công nghệ nền tảng của thế kỷ XXI, làm thay đổi cách

Page 4: Tìm hiểu về Grid Middleware - University of Technologyptvu/gc/2011/pub/GridMiddleware-rep.pdf · kết cấu, cấu trúc, dịch vụ cơ bản của một ứng dụng và

Tìm hiểu về Grid Middleware

4

thức tính toán. Công nghệ này đã mở ra cơ hội cho các nước không có nền công nghiệp

thiết kế, chế tạo phần cứng máy tính mạnh tạo ra siêu máy tính để giải quyết các bài toán

của riêng mình với chi phí thấp.

“Grid là một hệ thống song song, phân tán cho phép chia sẻ, lựa chọn, kết hợp các tài

nguyên phân tán theo địa lý, thuộc nhiều tổ chức khác nhau dựa trên tính sẵn sàng, khả

năng, chi phí của chúng và yêu cầu về chất lượng dịch vụ (QoS) của người dùng để giải

quyết các bài toán, ứng dụng có quy mô lớn trong khoa học, kỹ thuật và thương mại. Từ

đó hình thành nên các tổ chức ảo “Virtual Organization (V))”, các liên minh tạm thời

giữa các tổ chức và tập đoàn, liên kết với nhau để chia sẻ tài nguyên và/hoặc kỹ năng

nhằm đáp ứng tốt hơn các cơ hội kinh doanh hoặc các dự án có nhu cầu lớn về tính toán

và dữ liệu, toàn bộ việc liên minh này dựa trên mạng máy tính” (Ian Foster).

Một hệ thống Grid có những đặc trưng sau:

- Có sự kết hợp, chia sẻ các tài nguyên không được quản lý tập trung: Grid tích hợp

và phối hợp tài nguyên, người dùng thuộc nhiều vùng quản lý khác nhau, nhiều

đơn vị khác nhau trong một tổ chức hay nhiều tổ chức khác nhau. Công nghệ Grid

tập trung giải quyết các vấn đề bảo mật, chính sách quản trị, chi phí, thành viên,

… nảy sinh trong quá trình chia sẻ và sử dụng tài nguyên.

- Sử dụng các giao diện và giao thức chuẩn, mang tính mở, đa dụng: Grid được xây

dựng dựa trên các giao thức và giao diện tổng quát, đa dụng để giải quyết các vấn

đề cơ bản như chứng thực người dùng, phân quyền, tìm kiếm và truy xuất tài

nguyên.

- Đáp ứng yêu cầu cao về chất lượng dịch vụ: Grid cho phép sử dụng phối hợp các

tài nguyên để cung cấp nhiều loại dịch vụ với các mức chất lượng khác nhau, liên

quan đến nhau, ví dụ như thời gian đáp ứng, hiệu suất, tính sẵn sàng, bảo mật, cho

phép kết hợp nhiều kiểu tài nguyên để đáp ứng nhu cầu phức tạp của người dùng.

Mục tiêu là phải phối hợp làm sao để khả năng của hệ thống sau khi kết hợp phải

lớn hơn hẳn tổng khả năng của từng đơn vị cấu thành nên Grid.

Page 5: Tìm hiểu về Grid Middleware - University of Technologyptvu/gc/2011/pub/GridMiddleware-rep.pdf · kết cấu, cấu trúc, dịch vụ cơ bản của một ứng dụng và

Tìm hiểu về Grid Middleware

5

1.2. Các thành phần trong kiến trúc Grid tổng quát

Tổ chức ảo (VO): là đơn vị cơ bản quan trọng trong hệ thống Grid. Việc thiết lập,

quản lý, khai thác các quan hệ chia sẻ tài nguyên giữa các tổ chức ảo đòi hỏi phải có kiến

trúc hệ thống mới, kiến trúc Grid.

Kiến trúc Grid phải là kiến trúc dựa chuẩn, hướng mở để dễ sử dụng, liên kết hoạt

động tốt, có tính khả chuyển (portability) cao. Những protocol chuẩn sẽ giúp định nghĩa

các service chuẩn, nhờ đó có thể xây dựng các service cao cấp hơn một cách dễ dàng.

Hình 1: Kiến trúc Grid tổng quát

Tầng Fabric: là tầng thấp nhất của kiến trúc lưới, đại diện cho các thiết bị vật lý

và toàn bộ tài nguyên của lưới mà các tổ chức, người dùng muốn chia sẻ, sử dụng.

Tầng Connectivity: định nghĩa các giao thức liên lạc và chứng thực cơ bản cần

thiết cho các giao dịch mạng đặc trưng của lưới. Các giao thức liên lạc cho phép trao đổi

Page 6: Tìm hiểu về Grid Middleware - University of Technologyptvu/gc/2011/pub/GridMiddleware-rep.pdf · kết cấu, cấu trúc, dịch vụ cơ bản của một ứng dụng và

Tìm hiểu về Grid Middleware

6

dữ liệu giữa các tài nguyên tầng Fabric. Các giao thức chứng thực xây dựng trên những

dịch vụ liên lạc nhằm cung cấp cơ chế mã hóa, bảo mật, xác minh và nhận dạng người

dùng và tài nguyên.

Tầng Resource: dựa trên các giao thức liên lạc và chứng thực của tầng

Connectivity để xây dựng các giao thức, API, và SDK nhằm hỗ trợ việc thương lượng,

khởi tạo, theo dõi, điều khiển, tính toán chi phí và chi trả cho các hoạt động chia sẻ trên

từng tài nguyên riêng lẻ một cách an toàn. Bản cài đặt các giao thức của tầng Resource sẽ

gọi các chức năng của tầng Fabric để truy cập và điều khiển các tài nguyên cục bộ.

Tầng Collective: Trong khi tầng Resource tập trung vào các tài nguyên đơn lẻ,

tầng Collective chứa các giao thức, dịch vụ, API, SDK không liên hệ đến bất kỳ một tài

nguyên cụ thể nào mà thực hiện quản lý toàn cục, tập trung vào các giao tác giữa các tập

tài nguyên.

Tầng Application: tầng trên cùng của kiến trúc lưới bao gồm các ứng dụng của

người dùng chạy trong môi trường VO.

1.3. Chuẩn hóa Grid

Một trong các vấn đề lớn của bất kỳ công nghệ tính toán nào là làm sao để những

thành phần khác nhau có thể “nói chuyện” được với nhau. Đây cũng là một thách thức

của tính toán lưới (Grid Computing), vì tính toán lưới cần phải đáp ứng nhiều nhu cầu

khác nhau, hỗ trợ nhiều loại công nghệ, tài nguyên, trải rộng khắp thế giới, do nhiều tổ

chức tham gia xây dựng, nên để các thành phần lưới, ứng dụng lưới tương thích được với

nhau cần phải có một chuẩn chung thống nhất.

Ngoài lợi ích mang lại khả năng mở rộng các số lượng tài nguyên sẵn sàng cho

lưới. Bên cạnh đó, còn mang lại nhiều lợi ích khác:

Liên kết hoạt động: cho phép hệ thống lưới có thể được thiết kế và phát triển theo

nhiều ngôn ngữ lập trình, nhiều môi trường, nhiều nền tảng khác nhau một cách dễ

dàng và hiệu quả.

Tăng tính mềm dẻo: người dùng có thể chuyển đổi qua lại giữa các hệ thống lưới.

Page 7: Tìm hiểu về Grid Middleware - University of Technologyptvu/gc/2011/pub/GridMiddleware-rep.pdf · kết cấu, cấu trúc, dịch vụ cơ bản của một ứng dụng và

Tìm hiểu về Grid Middleware

7

Tăng năng lực của lưới: khả năng phát hành các dịch vụ sẽ dễ dàng hơn và từ đó

làm tăng năng lực của hệ thống lưới.

Tăng tốc độ phát triển ứng dụng: sử dụng các bộ toolkit được chuẩn hóa sẽ làm

giảm thời gian xây dựng, phát triển những hệ thống lưới. Thay vì dành nhiều thời

gian xây dựng các chức năng giao tiếp, các hệ thống quản lý, với việc sử dụng các

hệ thống chuẩn hóa có sẵn, các nhà phát triển ứng dụng có nhiều thời gian hơn để

tối ưu các chức năng xử lý dữ liệu.

Để đáp ứng nhu cầu xây dựng các chuẩn, tổ chức Global Grid Forum (GGF) ra đời và

đang phát triển các chuẩn về Grid Computing như: Open Grid Services Architecture

(OGSA), Open Grid Services Infrastructure (OGSI), Web Services Resource Framework

(WSRF).

Open Grid Services Architecture (OGSA): chuẩn OGSA xác định toàn bộ các

kết cấu, cấu trúc, dịch vụ cơ bản của một ứng dụng và có thể được áp dụng trong

bất kỳ một hệ thống lưới nào. Thực chất OGSA định nghĩa các dịch vụ lưới là gì,

chúng cần có những khả năng gì, được xây dựng trên những công nghệ nào. Nó

cũng xác định mô hình lập trình cho Grid service. Tuy nhiên, OGSA không đi sâu

vào mặt kỹ thuật của vấn đề, nó chỉ giúp phân biệt cái gì là lưới và cái gì không

phải là lưới. OGSA xác định Grid service phải được xây dựng dựa trên các chuẩn

về Web service hiện hành, xem Grid service như là các Web service được chỉnh

sửa để đáp ứng các yêu cầu mới. Ví dụ, bản thân các Grid service được định nghĩa

bằng chuẩn WSDL (Web Services Definition Language) với một số mở rộng.

Điều này rất quan trọng, vì nó cung cấp một loạt các công nghệ dựa trên một

chuẩn chung và mở để truy cập nhiều loại Grid service dựa trên các chuẩn hiện

hành như SOAP, XML và WS-Security. Với điều kiện như vậy, có thể thêm và

tích hợp các Grid service mới một cách đơn giản, dễ dàng. Nó cung cấp một

phương pháp chung nhất để tìm kiếm, xác định, sử dụng các service mới khi

chúng có mặt. Từ đó giải quyết được vấn đề liên kết hoạt động giữa các lưới và tài

nguyên.

Page 8: Tìm hiểu về Grid Middleware - University of Technologyptvu/gc/2011/pub/GridMiddleware-rep.pdf · kết cấu, cấu trúc, dịch vụ cơ bản của một ứng dụng và

Tìm hiểu về Grid Middleware

8

Open Grid Service Infrastructure (OGSI): OGSI là một bản đặc tả chính thức

các khái niệm được mô tả trong OGSA. OGSI 1.0 xác định một tập các service cơ

bản, xác định cách xây dựng một Grid service, định nghãi các hoạt động chung

nhất của tất cả Grid service, vạch ra các cơ chế để tạo lập; quản lý những Grid

service, cơ chế trao đổi thông tin giữa các Grid service. Chuẩn OGSI dựa trên các

chuẩn khác như XML, Web service, WSDL, … do đó nó cũng là một chuẩn mở.

Web Services Resource Framework (WSRF): là một bước phát triển của OGSI,

nó kết hợp kiến trúc lưới vào công nghệ Web service hiện hành. Thay vì xây dựng

một kiểu Grid service mới, những đặc tả này cho phép các dịch vụ xác định trong

OGSI được xây dựng hoàn toàn dựa trên Web service.

Hình 2: Mối quan hệ giữa các chuẩn về Grid Service

Giải thích hình vẽ: OGSA định nghĩa và dựa trên Grid service, OGSI đặc tả Grid service

theo OGSA, Grid service là một mở rộng của Web service, một công nghệ cho phép các

thành phần phân tán giao tiếp với nhau, GT3 (Globus Toolkit) là một bản cài đặt hoàn

chỉnh OGSI với ngôn ngữ Java.

Page 9: Tìm hiểu về Grid Middleware - University of Technologyptvu/gc/2011/pub/GridMiddleware-rep.pdf · kết cấu, cấu trúc, dịch vụ cơ bản của một ứng dụng và

Tìm hiểu về Grid Middleware

9

1.4. Grid Middleware

Hệ thống lưới có một số đặc điểm chính sau đây:

Tính không đồng nhất (heterogeneity): tài nguyên trên hệ thống lưới rất đa dạng,

thuộc nhiều loại khác nhau từ kiến trúc phần cứng (CPU, các loại thiết bị lưu trữ,

thiết bị truyền thông, …) đến phần mềm (hệ điều hành, thư viện, những công

cụ,…), ngôn ngữ.

Tính quy mô lớn (large-scale): một hệ thống lưới kết hợp nhiều dạng tài nguyên

trên phạm vi cả thế giới cho nên một hệ thống lưới sẽ rất phức tạp và khó mà có

thể biết được một hình thù cụ thể của nó tại một thời điểm.

Tính thích nghi, đáp ứng cao và khả năng mở rộng: hệ thống lưới phát triển trên

môi trường không đồng nhất đương nhiên phải có khả năng xử lý ngoại lệ, chịu

đựng lỗi tốt, có thể bắt tay với một số hệ thống khác để thực hiện tác vụ nhưng vẫn

đảm bảo vấn đề an toàn thông tin. Bên cạnh đó, hệ thống lưới phải có khả năng

mở rộng, hệ thống phải đảm bảo là khi gia tăng hay giảm đi các phần tử trên lưới

(tăng giảm quy mô) thì hệ thống không cần phải điều chỉnh lớn lao làm ảnh hưởng

đến hoạt động của cả hệ thống, chẳng hạn như cả hệ thống phải dừng lại tạm thời

khi thêm, bớt một đơn vị lưới nào đó sau đó mới hoạt động trở lại.

Do đó hệ thống lưới cần phải có một thành phần đáp ứng được các yêu cầu, một nhóm

chương trình có chức năng, nhiệm vụ làm trung gian để tương tác giữa các ứng dụng từ

phía người dùng và môi trường lưới bên dưới, gọi là middleware.

Page 10: Tìm hiểu về Grid Middleware - University of Technologyptvu/gc/2011/pub/GridMiddleware-rep.pdf · kết cấu, cấu trúc, dịch vụ cơ bản của một ứng dụng và

Tìm hiểu về Grid Middleware

10

Hình 3: Người dùng chỉ cần cắm và sử dụng dịch vụ mà không cần quan tâm phía

sau đó là gì

1.4.1. Định nghĩa Grid Middleware

- Grid middleware là gói phần mềm nằm giữa lớp ứng dụng và hệ điều hành.

- Grid middleware quản lý security, truy cập và trao đổi thông tin:

o Cung cấp khả năng kết nối số lượng người dùng lớn.

o Che giấu tài nguyên chia sẻ như máy tính, trung tâm dữ liệu, những thiết bị

cần thiết khác…

o Cung cấp các công cụ để quản lý, khởi tạo các liên kết trao đổi thông tin.

1.4.2. Nhiệm vụ và lợi ích của Grid Middleware

Có 3 mục đích:

o Xây dựng các giao tiếp và các giao thức có tính mục đích chung, tính mở

và tính chuẩn. Vì hệ thống lưới được xây dựng trên những giao tiếp và giao

thức với rất nhiều mục đích khác nhau. Những giao tiếp và giao thức này

đều chỉ ra được những kết quả cơ bản mang tính nền tảng như việc xác

thực, khám phá tài nguyên, truy xuất tài nguyên. Do đó, việc xây dựng các

Page 11: Tìm hiểu về Grid Middleware - University of Technologyptvu/gc/2011/pub/GridMiddleware-rep.pdf · kết cấu, cấu trúc, dịch vụ cơ bản của một ứng dụng và

Tìm hiểu về Grid Middleware

11

giao tiếp, giao thức chuẩn và mở là rất quan trọng, nếu không chúng ta chỉ

xây dựng được những ứng dụng mang tính đặc thù mà thôi.

o Định nghĩa những giao thức chuẩn: grid middleware định nghĩa nội dung

và chuỗi các sự kiện trao đổi thông điệp sử dụng các thao tác yêu cầu từ xa.

Điều này rất quan trọng và cấp thiết để thực hiện tính interoperability (khả

năng mà 2 thực thể khác nhau có thể làm việc với nhau và được thực hiện

bởi các giao thức thông thường) mà hệ thống lưới phụ thuộc vào.

o Cung cấp các API chuẩn: đó là các giao diện lập trình ứng dụng chuẩn,

định nghĩa những giao tiếp chuẩn để viết mã thư viện, và cấu trúc các thành

phần của Grid bằng cách cho phép những thành phần mã nguồn được sử

dụng lại.

Lợi ích của Grid Middleware:

o Tránh cho các nhà phát triển ứng dụng không phải lập trình ở mức thấp,

tránh được các error-prone flatform như việc lập trình mạng mức socket.

o Giảm chi phí thời gian phát triển phần mềm khi tập trung phát triển chuyên

môn trước rồi mới phát triển ứng dụng bằng cách tái sử dụng framework

chứ không cần xây dựng lại từ đầu.

o Cung cấp các trừu tượng hướng mạng ở mức cao gần với yêu cầu ứng dụng

cho việc phát triển hệ thống rời rạc.

o Cung cấp nhiều dịch vụ phát triển, như đăng nhập và bảo mật giúp cho việc

hoạt động hiệu quả trong môi trường mạng.

Page 12: Tìm hiểu về Grid Middleware - University of Technologyptvu/gc/2011/pub/GridMiddleware-rep.pdf · kết cấu, cấu trúc, dịch vụ cơ bản của một ứng dụng và

Tìm hiểu về Grid Middleware

12

1.4.3. Kiến trúc Grid Middleware

Hình 4: Các thành phần của middleware nằm giữa Application và Fabric

Grid Middleware nằm giữa 2 lớp:

Lớp ứng dụng (Application): chứa các ứng dụng của người dùng, như việc mô

phỏng hay những vấn đề đòi hỏi sức mạnh tính toán, truy cập dữ liệu từ xa, và kết

nối với các thiết bị khoa học. Lớp ứng dụng cung cấp những dịch vụ ứng dụng

dạng Web cho phép người dùng cung cấp thông số, và thu thập các kết quả cho

những công việc trên những tài nguyên từ xa thông qua Web.

Lớp kết cấu (fabric): bao gồm những giao thức, giao diện ứng dụng và toolkit cho

phép phát triển các ứng dụng cùng những thành phần cho phép truy cập, điều

khiển các tài nguyên như máy tính, tài nguyên lưu trữ, các thiết bị khoa học…Tài

nguyên tính toán có rất nhiều cấu trúc như clusters, siêu máy tính, server, PC chạy

trên nhiều hệ điều hành khác nhau (UNIX, Windows…) Các thiết bị khoa học như

kính hiển vi, cảm biến cung cấp dữ liệu thời gian thực được truyền trực tiếp qua bộ

phận tính toán hay được lưu trữ trong cơ sở dữ liệu

Page 13: Tìm hiểu về Grid Middleware - University of Technologyptvu/gc/2011/pub/GridMiddleware-rep.pdf · kết cấu, cấu trúc, dịch vụ cơ bản của một ứng dụng và

Tìm hiểu về Grid Middleware

13

Grid middleware gồm 2 lớp chính:

Lớp các dịch vụ tập hợp (Collective services): Có khả năng quản lý một tập các

tài nguyên trong khi lớp tài nguyên chỉ tập trung vào việc tương tác giữa các

tài nguyên đơn lẻ. Và nó dựa trên lớp kết nối và lớp tài nguyên để hiện thực rất

nhiều hành vi chia sẻ mà không cần phải thay thế những yêu cầu mới ứng với

mỗi tài nguyên được chia sẻ. Chẳng hạn:

o Directory service cho phép các thành viên tham gia vào tổ chức ảo có

thể khám phá ra tài nguyên hay các thuộc tính của tài nguyên. Nó cho

phép người dùng truy vấn về tài nguyên bằng tên hoặc các thuộc tính

như kiểu, sự sẵn sàng, hay tải.

o Coallocation-allocation, scheduling, and brokering services cho phép

các thành viên của tổ chức ảo yêu cầu việc định vị cho 1 hay nhiều tài

nguyên và phân bổ nhiệm vụ cho những tài nguyên thích hợp.

o Monitoring and diagnotics services hỗ trợ việc theo dõi các tài nguyên

của tổ chức ảo về lỗi, việc tấn công hay việc quá tải.

o Data replication services hỗ trợ quản lý việc lưu trữ tài nguyên để tối đa

hiệu quả truy xuất như thời gian đáp ứng, khả năng tin cậy, chi phí,…

o Grid-enabled programming systems cho phép các mô hình lập trình thân

thiện, chẳng hạn như MPI (Message-passing Interfaces),…

o Workload management systems and collaboration frameworks

o Software discovery service

o Community authorization servers

Page 14: Tìm hiểu về Grid Middleware - University of Technologyptvu/gc/2011/pub/GridMiddleware-rep.pdf · kết cấu, cấu trúc, dịch vụ cơ bản của một ứng dụng và

Tìm hiểu về Grid Middleware

14

o Community accounting and payment services

o Collaboratory services

Lớp các giao thức kết nối tài nguyên – Resource and Connectivity Protocols:

Đây là lớp có chức năng giao tiếp một cách dễ dàng và an toàn. Lớp kết nối

định nghĩa giao thức giao tiếp (communication) và giao thức xác thực

(authentication). Giao thức giao tiếp cho phép các thông điệp có thể được trao

đổi với nhau giữa các tài nguyên của lớp Fabric. Giao thức xác thực xây dựng

trên các dịch vụ giao tiếp bằng cách cung cấp cơ chế bảo mật mã hóa cho việc

xác định người dùng và tài nguyên. Các giải pháp xác thực cho môi trường tổ

chức ảo (VO – Virtual Organization) có thể có 4 đặc tính sau:

o Single sign-on: Người dùng có thể được xác thực chỉ 1 lần bằng cách

đăng nhập vào hệ thống và có thể truy xuất vào nhiều tài nguyên lưới.

o Việc ủy quyền: Người dùng có khả năng ủy quyền cho 1 chương trình

khác để thực thi giống như những hành vi của người dùng khi người

dùng đã được xác thực. Đến lượt chương trình có thể ủy quyền cho

nhưng chương trình khác 1 cách tùy chọn.

o Việc tích hợp với nhiều giải pháp bảo mật cục bộ: Đó là việc mỗi tổ

chức, mỗi tài nguyên đã có nhưng giải pháp bảo mật riêng cho mình. Do

đó, các giải pháp bảo mật của hệ thống lưới sẽ tận dụng các giải pháp

bảo mật cục bộ có sẵn này mà không cần phải thay thế 1 giải pháp bảo

mật mới, và chỉ cần cho phép ánh xạ vào môi trường cục bộ.

o Mối quan hệ đáng tin cậy dựa trên người dùng: Để người dùng có khả

năng truy xuất vào tài nguyên từ nhiều nhà cung cấp khác nhau, thì hệ

thống bảo mật không cần phải yêu cầu các nhà cung cấp tài nguyên phải

liên lạc với nhau để cấu hình cho môi trường mạng. Chẳng hạn, nếu

Page 15: Tìm hiểu về Grid Middleware - University of Technologyptvu/gc/2011/pub/GridMiddleware-rep.pdf · kết cấu, cấu trúc, dịch vụ cơ bản của một ứng dụng và

Tìm hiểu về Grid Middleware

15

người dùng có quyền truy xuất vào tài nguyên của tổ chức A và B, thì

người dùng có thể truy xuất vào cả 2 tài nguyên của tổ chức A và B với

nhau mà không cần sự liên lạc giữa những nhà quản trị bảo mật của tổ

chức A và B .

Cũng trong lớp này, các tài nguyên đơn lẻ có khả năng chia sẻ. Nó định nghĩa các

giao thức về sự thương lượng an toàn, khởi tạo, theo dõi, điều khiển, tài khoản và sự trả

chi phí cho việc chia sẻ các thao tác trên những tài nguyên đơn lẻ. Lớp tài nguyên sẽ

được hiện thực bởi các giao thức để truy xuất và điều khiển các tài nguyên cục bộ, bao

gồm 2 lớp chính:

Giao thức thông tin (Information protocol) được sử dụng để rút ra thông tin về cấu

trúc và trạng thái của tài nguyên chẳng hạn như cấu hình của tài nguyên, tải hiện

thời, hay chính sách sử dụng,…

Giao thức quản lý (Management protocol) được sử dụng để thỏa thuận việc truy

xuất vào tài nguyên chia sẻ, chẳng hạn về yêu cầu tài nguyên (bao gồm việc đặt

chỗ và chất lượng dịch vụ) và các thao tác thực hiện như khởi tạo, truy xuất tài

nguyên,…

2. Một số Grid Middleware

2.1. Unicore

UNICORE là một môi trường Grid tích hợp theo chiều thẳng đứng nhằm hỗ trợ:

- Khả năng truy cập tài nguyên một cách đơn giản, an toàn, bảo mật, trực quan trong

môi trường phân tán cho người dùng.

- Tích hợp các cơ chế chứng thực trong các thủ tục quản trị, nhằm giảm chi phí đào

tạo và hỗ trợ cho các Grid site.

- Phân phối dễ dàng các công việc trên nhiều nền tảng khác nhau.

Page 16: Tìm hiểu về Grid Middleware - University of Technologyptvu/gc/2011/pub/GridMiddleware-rep.pdf · kết cấu, cấu trúc, dịch vụ cơ bản của một ứng dụng và

Tìm hiểu về Grid Middleware

16

2.1.1. Kiến trúc của UNICORE

Là kiến trúc 3 tầng (three-tier) bao gồm:

- Một Client chạy trên máy trạm hoặc PC có hỗ trợ Java.

- Các thể hiện của Network Job Supervisors (NJS) chạy trên các server dành riêng.

- Nhiều thể hiện của Target System Interfaces (TSI) chạy trên các node để cung cấp giao

diện sử dụng các hệ quản trị tài nguyên cục bộ như hệ điều hành, hệ xử lý theo lô,…

Hình 5: Mô hình kiến trúc hoạt động của UNICORE

Theo quan điểm của người dùng, UNICORE là một hệ thống dựa trên mô hình client-

server có 3 lớp:

- Lớp người dùng: người dùng chạy UNICORE Client trên máy trạm cục bộ hoặc

PC. Giao diện của UNICORE Client gồm 2 thành phần: JPA (Job Preparation

Page 17: Tìm hiểu về Grid Middleware - University of Technologyptvu/gc/2011/pub/GridMiddleware-rep.pdf · kết cấu, cấu trúc, dịch vụ cơ bản của một ứng dụng và

Tìm hiểu về Grid Middleware

17

Agent) và JMC (Job Monitor Component). Các công việc được xây dựng bằng

JPA, trạng thái và kết quả công việc được lấy từ JMC. Các công việc và truy vấn

về trạng thái và kết quả của chúng được định dạng bằng Abstract Job Object

(AJO).

- Lớp server: ở mức cao nhất, mỗi trung tâm máy tính thành viên phải xác định một

hoặc nhiều UNICORE Grid site (USite) để người dùng kết nối vào.

- Lớp Target System: một USite cho phép truy cập đến các tài nguyên tính toán và

lưu trữ. Chúng được tổ chức thành các site ảo (VSite) đại diện cho các hệ thống

thực thi và/hoặc lưu trữ tron trung tâm máy tính. Một VSite cũng gồm hai thành

phần: NJS (Network Job Supervisor) và TSI (Target System Interface).

o NIS Server quản lý tất cả các công việc của UNICORE và thực hiện phân

quyền bằng cách tìm ánh xạ tương ứng giữa chứng chỉ người dùng và tài

khoản đăng nhập trong UUDB (UNICORE User Data Base). NJS chuyển

đổi các định nghĩa AJO thành các lệnh tương ứng cho hệ thống thực thi

được chọn dựa trên các đặc tả trong Incarnition Data Base (IDB).

o UNICORE TSI chấp nhận các công việc được xây dựng bởi NJS và chuyển

chúng cho hệ thống thực thi cục bộ để xử lý.

Client kết nối đến UNICORE USite gateway, đây là điểm vào duy nhất cho tất cả các kết

nối UNICORE đến USite. Nó cung cấp một địa chỉ IP và số hiệu cổng để người dùng có

thể kết nối vào thông qua giao thức SSL.

2.1.2. Các chức năng và đặc tính chính của UNICORE

- Tạo lập và đệ trình các công việc hướng người dùng: cung cấp giao diện GUI hỗ

trợ người dùng tạo những công việc phức tạp có thể chạy trên bất kỳ UNICORE

Site nào mà không cần thay đổi đặc tả công việc.

- Có hệ thống quản lý công việc: cho phép người dùng toàn quyền điều khiển công

việc và dữ liệu.

- Có hệ thống quản lý dữ liệu: trong quá trình tạo lập các công việc, người dùng có

thể xác định các tập dữ liệu đầu vào và đầu ra từ Uspace (Uspace là tập các file

Page 18: Tìm hiểu về Grid Middleware - University of Technologyptvu/gc/2011/pub/GridMiddleware-rep.pdf · kết cấu, cấu trúc, dịch vụ cơ bản của một ứng dụng và

Tìm hiểu về Grid Middleware

18

sẵn sàng cho một công việc UNICORE) và các tập dữ liệu nào cần phải truyền qua

lại giữa các Uspace. UNICORE sẽ thực hiện việc di chuyển dữ liệu trong thời gian

thi thành mà không cần sự can thiệp của người dùng.

- Hỗ trợ ứng dụng: để hỗ trợ những ứng dụng khoa học đặc biệt của các nhà khoa

học, giao diện của UNICORE được xây dựng dưới dạng mở để có thể thêm các

thành phần mới cho phép nhập liệu hướng ứng dụng.

- Điều khiển luồng: một công việc của người dùng có thể được mô tả dưới dạng một

tập các đồ thị có hướng không vòng.

- Cho phép đăng nhập một lần: UNICORE cho phép đăng nhập một lần thông qua

các chứng chỉ X.509V3.

- Hỗ trợ các công việc kế thừa lại: UNICORE hỗ trợ công nghệ xử lý theo lô truyền

thống bằng cách cho phép người dùng đính kèm các công việc trước đó vào công

việc hiện hành.

- Có hệ thống quản lý tài nguyên: người dùng chọn các hệ thống đích và xác định

các yêu cầu tài nguyên. Hệ thống UNICORE Client sẽ kiểm tra tính đúng đắn của

các công việc, báo lỗi ngay lập tức và thực hiện cấp phát tài nguyên.

2.1.3. UNICORE 6

Kiến trúc của UNICORE 6 là kiến trúc 3 tầng: tầng client, tầng server và tầng

system như hiển thị trong Hình 6:

Page 19: Tìm hiểu về Grid Middleware - University of Technologyptvu/gc/2011/pub/GridMiddleware-rep.pdf · kết cấu, cấu trúc, dịch vụ cơ bản của một ứng dụng và

Tìm hiểu về Grid Middleware

19

Hình 6: Kiến trúc của UNICORE 6

a. Tầng Client

Tầng đầu tiên của kiến trúc này là nhiều loại client luôn sẵn sàng cho những người

dùng, từ những client đồ họa như Eclipse-based URC, một giao diện dòng lệnh UCC tới

API lập trình có tên là HiLA.

b. Tầng Service

Tầng nằm ở giữa bao gồm các dịch vụ và nhiều thành phần của kiến trúc hướng dịch

vụ (SOA). Hình 6 chỉ ra ba tập dịch vụ, tập bên trái và phải chứa các dịch vụ tại một site

đơn lẻ trong khi tập ở giữa dịch vụ trung tâm, như registry trung tâm, các dịch vụ

workflow và information service, phục vụ tất cả các site và người dùng trong UNICORE

Grid.

Page 20: Tìm hiểu về Grid Middleware - University of Technologyptvu/gc/2011/pub/GridMiddleware-rep.pdf · kết cấu, cấu trúc, dịch vụ cơ bản của một ứng dụng và

Tìm hiểu về Grid Middleware

20

Thành phần Gateway hoạt động như điểm vào (entry point) tới một UNICORE site và

thực hiện xác thực tất cả những yêu cầu đang đến. Nó được dùng cho cả các dịch vụ

trung tâm và các dịch vụ site đơn lẻ.

Thành phần XNJS là bộ máy thực thi và quản lý job của UNICORE 6. Nó thực hiện

job incarnation, đó là ánh xạ của mô tả job trừu tượng tới mô tả job cụ thể cho một

resource cụ thể cùng với những quy tắc chứa trong IDB (Incarnation Database). Chức

năng của XNJS là khả năng truy cập thông qua hai giao diện dịch vụ trong môi trường

máy chủ WS-RF của UNICORE 6. Giao diện chủ của UNICORE 6 được gọi là UAS

(UNICORE Atomic Services) và đưa ra chức năng đầy đủ tới các dịch vụ, client và người

dùng mức cao hơn. Cùng với UAS, một tập các giao diện được chuẩn hóa dựa trên những

chuẩn mở thông dụng (được mô tả trong hình 6 là “OGSA-*”).

Để cấp phép cho người dùng, XNJS dùng cơ sở dữ liệu người dùng XUUDB để thực

hiện việc ánh xạ từ những chứng chỉ X.509 tới việc đăng nhập của người dùng hiện tại.

Thành phần XUUDB tự nó là một Web service, cho phép nó được dùng từ nhiều cài đặt

UNICORE, ví dụ, bên trong cùng một trung tâm tính toán. Giống như trong nhiều môi

trường hướng dịch vụ, một service registry trung tâm luôn sẵn sàng, trong đó các dịch vụ

khác nhau có thể đăng ký chỉ một lần khi chúng bắt đầu. Service registry trung tâm là cần

thiết để xây dựng và vận hành một cơ sở hạ tầng UNICORE phân tán. Service registry

này được liên lạc bởi client để mà “kết nối với Grid”. Một cơ sở hạ tầng có thể có nhiều

registry trung tâm.

Hỗ trợ workflow có một tầm quan trọng lớn với UNICORE. Hai tầng thiết kế với sự

ngăn cách của workflow engine và service orchestrator được làm cho khả năng mở rộng

tốt hơn mà còn cung cấp plug-in cho ngôn ngữ workflow domain-specific và workflow

engines. Bên cạnh chuỗi job (job-chains) đơn giản, vòng lặp while, for, các biến

workflow và sự thực thi có điều kiện được hỗ trợ. Service orchestrator xử lý việc bẻ gẫy

việc thực thi, giám sát các workflow và những thành phần tương ứng của nó cũng như

cung cấp cơ chế call-back tới workflow engine. Resource brokering được thực hiện thông

Page 21: Tìm hiểu về Grid Middleware - University of Technologyptvu/gc/2011/pub/GridMiddleware-rep.pdf · kết cấu, cấu trúc, dịch vụ cơ bản của một ứng dụng và

Tìm hiểu về Grid Middleware

21

qua chiến lược có thể kết hợp (pluggable strategies). Năng lực workflow dduwwojc đưa

tới người dùng trên tầng client thông qua URC. Hơn nữa, việc định nghĩa, sự đệ trình,

giám sát và điều khiển các workflow cũng có thể từ UCC. Tracing Service thu thập thông

tin runtime từ hệ thống workflow và cho phép tạo ra tiêu chuẩn hiệu suất. Người dùng

cuối có thể dùng dịch vụ tracer để hình dung quá trình thực thi của một workflow phức

tạp từ bên trong URC.

c. Tầng System

Trên tầng cuối, thành phần TSI (Target System Interface) là giao diện giữa

UNICORE và quản lý tài nguyên riêng biệt/batch system và hệ điều hành của một Grid

resource. Trong thành phần TSI các lệnh trừu tượng từ tầng Grid được chuyển đổi tới

lệnh hệ thống, ví dụ, trong trường hợp job submission, các lệnh cụ thể như llsubmit hoặc

qsub của hệ thống quản lý tài nguyên được gọi. Thành phần TSI thực hiện thiết lập thích

hợp của UID của người dùng và gọi ra môi trường của họ. Vì vậy thành phần TSI cần

được thực hiện với quyền root. Tất cả những thành phần UNICORE 6 khác tại một site

được thực thi dưới một tài khoản người dùng chuẩn, tốt nhất là một tài khoản UNICORE-

related. Uspace là thư mục job của UNICORE. Một thư mục riêng biệt tồn tại cho mọi

job, trong đó XNJS và TSI chứa tất cả dữ liệu đầu vào và tất cả các output bao gồm

stdout và stderr được ghi vào. TSI cũng cho phép truy cập tới hệ thống file cục bộ như

thư mục Home của người dùng. Những thành phần này được gọi là UNICORE Storage

và có thể được dùng trong thao tác stage-in và stage-out.

2.2. Globus

Dự án Globus cung cấp một bộ tookit mã nguồn mở, có thể được sử dụng để xây

dựng các Grid tính toán và những ứng dụng dựa trên Grid. Nó cho phép chia sẻ năng lực

tính toán, dữ liệu, các công cụ khác một cách bảo mật, an toàn trực tuyến giữa các tập

đoàn, viện nghiên cứu mà không cần loại bỏ các chính sách quản trị cục bộ. Những

service, interface, protocol nền tảng trong bộ Globus Toolkit cho phép người dùng truy

Page 22: Tìm hiểu về Grid Middleware - University of Technologyptvu/gc/2011/pub/GridMiddleware-rep.pdf · kết cấu, cấu trúc, dịch vụ cơ bản của một ứng dụng và

Tìm hiểu về Grid Middleware

22

cập đến các tài nguyên ở xa một cách đơn giản trong khi vẫn giữ được quyền điều khiển

cục bộ cho phép ai được dùng tài nguyên và khi nào.

Bộ Globus Toolkit (GT) giải quyết các vấn đề của công nghệ Grid Computing dựa

trên 4 thành phần chính. Ba thành phần: Resource Management, Information Service,

Data Management liên kết hoạt động trên nền tảng bảo mật chung, Security

Infrastructure. Ngoài ra GT còn cung cấp một bộ các hàm API và SDK nhằm giúp phát

triển, xây dựng những ứng dụng Grid.

GT3 được thiết kế lại để hỗ trợ hoàn toàn OGSI. Tuy nhiên, cần phải chú ý rằng

GT3 không chỉ là một bản cài đặt của OGSI. GT3 bao gồm rất nhiều dịch vụ, chương

trình, công cụ, … Một số trong chúng được xây dựng trên OGSI và được gọi là WS (Web

Services) component, một số khác không dựa trên OGSI, được gọi là pre-WS component.

Bộ GT3 tồn tại song song 2 mô hình kiến trúc như trong hình vẽ. Các nhà phát triển

có thể sử dụng một trong hai mô hình này để xây dựng các ứng dụng và các hệ thống

Grid của mình. Tuy nhiên, mô hình Grid service dựa theo OGSI được khuyến khích sử

dụng.

Page 23: Tìm hiểu về Grid Middleware - University of Technologyptvu/gc/2011/pub/GridMiddleware-rep.pdf · kết cấu, cấu trúc, dịch vụ cơ bản của một ứng dụng và

Tìm hiểu về Grid Middleware

23

(a) Kiến trúc non-OGSI based (GT2) (b) Kiến trúc OGSI based(GT3)

Hình 1. 1: Kiến trúc của bộ Globus Toolkit

2.2.1. Mô hình kiến trúc GT2

Trong mô hình kiến trúc GT2, có thể thấy rõ ràng 4 thành phần của bộ GT:

- GRAM đảm nhiệm phần Resource Management

- MDS đảm nhận phần Information Service

- GridFTP đảm nhận phần Data management.

Ba thành phần này được xây dựng trên nền tảng bảo mật chung là Grid Security

Infrastructure (GSI). Các thành phần được thiết kế theo mô đun, có thể sử dụng độc lập

hoặc phối hợp với nhau thông qua giao diện của từng thành phần.

Mô hình hệ thống Grid sử dụng GT2 như sau:

Page 24: Tìm hiểu về Grid Middleware - University of Technologyptvu/gc/2011/pub/GridMiddleware-rep.pdf · kết cấu, cấu trúc, dịch vụ cơ bản của một ứng dụng và

Tìm hiểu về Grid Middleware

24

Hình 1. 2: Mô hình các thành phần của một hệ thống sử dụng GT2

2.2.2. Mô hình kiến trúc GT3

Mô hình GT3 hơi khác biệt mô hình GT2, cũng gồm 4 thành phần nhưng các

thành phần này được thiết kế để trở thành các OGSI Grid service, được truy xuất thông

qua một giao diện chung, điều này giúp việc những ứng dụng sử dụng các service dễ

dàng hơn.

Page 25: Tìm hiểu về Grid Middleware - University of Technologyptvu/gc/2011/pub/GridMiddleware-rep.pdf · kết cấu, cấu trúc, dịch vụ cơ bản của một ứng dụng và

Tìm hiểu về Grid Middleware

25

Hình 7: Mô hình tổ chức các thành phần GT 3 (nguồn [1])

Các khung có nền trắng là các thành phần cung cấp bởi GT3 Core. Chúng là các

khối cơ bản để xây dựng các Grid service. Thành phần OGSI Reference Implementation

cài đặt cho tất cả các interface xác định bởi OGSI cũng như hàm API và công cụ để phát

triển OGSI Grid service. Thành phần Security Infrastructure cung cấp những dịch vụ

truyền thông SOAP cũng như thực hiện bảo vệ những thông điệp, chứng thực hai chiều

(mutual authentication) và đăng nhập một lần; thiết kế lại nền tảng GSI trong GT2 để

hoạt động trong môi trường OGSI. Hai khối cơ bản này không cung cấp các service thực

thi được nhưng là cơ sở của các service khác. Tuy nhiên, GT3 Core cũng có một số

service có khả năng thực thi nền tảng đủ tổng quát để được sử dụng và liên kết với tất cả

các Grid service khác. Những service này được gọi là System-Level Service, được xây

dựng trên cơ sở OGSI Reference Implementation và Security Infrastructure. GT3 cũng

cung cấp một số service cấp cao hơn, Base Service, như những service quản lý tài nguyên

(MMJFS), quản lý dữ liệu (RFT).

Tất cả các service và các thành phần cơ bản tương tác với một môi trường thực thi

OGSI ảo, gọi là Grid Service Container. Mục đích của container là làm lớp phân cách

Page 26: Tìm hiểu về Grid Middleware - University of Technologyptvu/gc/2011/pub/GridMiddleware-rep.pdf · kết cấu, cấu trúc, dịch vụ cơ bản của một ứng dụng và

Tìm hiểu về Grid Middleware

26

ứng dụng với cấu hình môi trường thực thi cụ thể. Container cũng điều khiển chu kỳ sống

của các Grid service và phân phối yêu cầu đến các service instance. Container mở rộng

cũng như bao gôm các interface chuẩn của một Web Service Engine (WSE), WSE chịu

trách nhiệm xử lý các thông điệp XML.

WSE và Grid Service Container được đặt trong một Hosting Environment, chịu trách

nhiệm triển khai các chức năng của một Web Server truyền thống như sử dụng protocol

vận chuyển HTTP.

2.2.3. Mô hình kiến trúc GT4

GT4 là một bộ toolkit mã nguồn mở được tổ chức như tập các thành phần từng cặp

lỏng lẻo. Những thành phần này bao gồm dịch vụ, thư viện lập trình và những công cụ

phát triển được thiết kế để xây dựng những ứng dụng dựa-trên-Grid.

Page 27: Tìm hiểu về Grid Middleware - University of Technologyptvu/gc/2011/pub/GridMiddleware-rep.pdf · kết cấu, cấu trúc, dịch vụ cơ bản của một ứng dụng và

Tìm hiểu về Grid Middleware

27

Hình 8: Các thành phần GT4

Như trong hình 8, những thành phần của GT4 được chia vào 5 vùng: Security, Data

Management, Execution Management, Information Services và Common Runtime.

a. Security

Thành phần Security được tham chiếu tới như Grid Security Infrastructure (GSI), làm

cho những truyền thông bảo mật thuận tiện hơn và ứng dụng của những chính sách đồng

bộ thông qua những hệ thống riêng biệt.

Page 28: Tìm hiểu về Grid Middleware - University of Technologyptvu/gc/2011/pub/GridMiddleware-rep.pdf · kết cấu, cấu trúc, dịch vụ cơ bản của một ứng dụng và

Tìm hiểu về Grid Middleware

28

- Authentication và Authorization: bao gồm các thư viện và công cụ để điều khiển

truy cập tới những service và tài nguyên, cùng với một framework mà cho phép sử

dụng những phương thức authorization khác nhau, bao gồm những phương thức

do người dùng viết ra (user-written method).

- Delegation: Bộ toolkit bao gồm một dịch vụ mà ủy quyền những ủy nhiệm tới một

container..

- Community Authorization: các tổ chức ảo (VO) có thể dùng Community

Authorization Service (CAS) để quản lý những chính sách cho phép dành cho các

tài nguyên VO.

- Credential Management: bao gồm SimpleCA và MyProxy. SimpleCA là một

Certificate Authority đơn giản cho người dùng mà không truy cập với CA mạnh

mẽ; MyProxy, một kho chứa trực tuyến đáng tin cậy.

b. Data Management

Thành phần Data Management cung cấp việc khai thác, truyền và truy cập dữ liệu lớn.

- GridFTP: thành phần này bao gồm một máy chủ GridFTP có chức năng đầy đủ

và một vài tiện ích bên phía client. Giao thức GridFTP được tối ưu hóa đặc biệt để

truyền một lượng lớn dữ liệu giữa các host.

- RFT: dịch vụ truyền file tin cậy (Reliable File Transfer) là một dịch vụ cho-phép-

WSRF mf dùng GridFTP để di chuyển một lượng lớn dữ liệu. Nó cung cấp vài

tính năng thú vị trên GridFTP như khả năng hồi phục lại những việc truyền file bị

ngắt quãng giữa chừng.

- Replica Location Service (RLS): RLS cho phép người dùng giữ những theo dõi

về những bản sao khác nhau của một tập dữ liệu được đặt tại một tổ chức ảo.

- OGSA-DAI (OGSA Data Access and Integration) cung cấp một framework để

truy cập và tích hợp những tập dữ liệu trên một hệ thống Grid để có thể sẵn sàng

trong những định dạng khác nhau (plain text file, database, XML,…).

c. Execution Management

Page 29: Tìm hiểu về Grid Middleware - University of Technologyptvu/gc/2011/pub/GridMiddleware-rep.pdf · kết cấu, cấu trúc, dịch vụ cơ bản của một ứng dụng và

Tìm hiểu về Grid Middleware

29

Những thành phần Execution Management xem sự triển khai, lập lịch và giám sát

những chương trình thực thi được xem như là các job.

- Grid Resource Allocation & Management (GRAM): là trái tim của GT

Execution Management, cung cấp những dịch vụ để triển khai và giám sát job trên

Grid.

- Community Scheduler Framework (CSF): cung cấp một giao diện đơn tới

những resource scheduler khác như PBS, Condor, LSF và SGE.

- Workspace Management: là thành phần mới của toolkit và cho phép người dùng

linh động trong việc tạo và quản lý workspace trên những host từ xa.

- Grid Telecontrol Protocol: cung cấp giao diện dịch vụ WSRF-enabled để điều

khiển từ xa (điều khiển những thiết bị từ xa).

d. Information Services

Information Services thường được xem như là MDS (Monintoring and Discovery

System), bao gồm một tập các thành phần để giám sát và khám phá những tài nguyên

trong một tổ chức ảo (VO).

- Index Service: được dùng để tập hợp các tài nguyên đáng quan tâm tới một VO.

- Trigger Service: giống như Index Service, Trigger Service cũng thu thập dữ liệu

từ các resource, nhưng được cấu hình để thực hiện những hành động nào đó trên

dữ liệu đó.

- WebMDS: cung cấp một view dựa trên trình duyệt (browser-based view) của dữ

liệu được thu thập bởi GT4 aggregator services.

e. Common Runtime

Thành phần Common Runtime cung cấp một tập các thư viện và công cụ cơ sở cho

tạo những dịch vụ sẵn có cũng như phát triển những dịch vụ mới.

- C Runtime: bao gồm các công cụ, thư viện và môi trường máy chủ WS (WS

hosting environment) cho các nhà phát triển Python.

Page 30: Tìm hiểu về Grid Middleware - University of Technologyptvu/gc/2011/pub/GridMiddleware-rep.pdf · kết cấu, cấu trúc, dịch vụ cơ bản của một ứng dụng và

Tìm hiểu về Grid Middleware

30

- Java Runtime: bao gồm các công cụ, thư viện và môi trường máy chủ dịch vụ

cho các nhà phát triển Java.

2.3. gLite

gLite là một tập hợp của các thành phần được thiết kế để cho phép chia sẻ tài

nguyên trên lưới. gLite được tạo ra từ dự án EGEE và nó hiện đang được phát triển bởi

dự án EMI. gLite cung cấp cho người dùng với dịch vụ cấp cao như: lập lịch và thực thi

các công việc tính toán truy cập và chuyển dữ liệu thu thập thông tin về cơ sở hạ tầng

lưới cũng như các ứng dụng lưới.

gLite được phát triển dựa trên kiến trúc hướng dịch vụ (SOA) do đó nó dễ dàng

tương tác của các dịch vụ, thích ứng tốt với tiêu chuẩn mở. Các dịch vụ có thể làm việc

độc lập hoặc có thể làm việc cùng nhau. gLite đồng thời còn đưa ra framework chung cho

phát triển ứng dụng trong môi trường lưới.

Các dịch vụ có sẵn trong bản phân phối gLite có thể được chia thành hai loại

chính:

Các dịch vụ cơ bản (Grid Middleware Foundation): bao gồm các cơ sở hạ tầng bảo

mật, thông tin, giám sát và hệ thống kế toán, truy cập các tài nguyên máy tính và

lưu trữ, cung cấp thành phần cơ sở cho một cơ sở hạ tầng phù hợp và đáng tin

cậy;

Các dịch vụ mức cao (Higher-level Grid Middleware): bao gồm các dịch vụ để

quản lý công việc, danh mục dữ liệu và sao chép dữ liệu, cung cấp các ứng dụng

với giải pháp withend-to-end.

Page 31: Tìm hiểu về Grid Middleware - University of Technologyptvu/gc/2011/pub/GridMiddleware-rep.pdf · kết cấu, cấu trúc, dịch vụ cơ bản của một ứng dụng và

Tìm hiểu về Grid Middleware

31

Hình 9: các thức truy cập dịch vụ từ ứng dụng trong gLite

Các ứng dụng hoạt động trên môi trường gLite phải truy cập đến cả hai tầng dịch

vụ cơ bản và dịch vụ mức cao. Các truy cập có thể thông qua CLI hoặc API

2.3.1 Kiến trúc của gLite

Kiến trúc của gLite bao gồm các nhóm dịch vụ mức cao và giao diện CLI và API

để truy cập vào các dịch vụ. Các nhóm dịch vụ mức cao bao gồm: nhóm dịch vụ trợ giúp

(Helper Services), nhóm dịch vụ bảo mật (Security Services), nhóm dịch vụ dữ liệu (Data

Services), nhóm dịch vụ thông tin và giám sát (Information and Monitoring Services) và

nhóm dịch vụ quản lý công việc (Job Management Services).

Security Services:

Authentication: xác định các thực thể (người sử dụng, hệ thống, và dịch vụ), căn

cứ vào chứng nhận X.509

Authorization: cho phép hoặc từ chối truy cập đến các dịch vụ và nguồn lực cụ thể,

ba mô hình phân quyền cơ bản: đại diện (agent), đẩy (push) và kéo (pull).

Auditing: theo dõi và cung cấp thông tin phân tích thử nghiệm các sự kiện bảo mật

liên quan.

Page 32: Tìm hiểu về Grid Middleware - University of Technologyptvu/gc/2011/pub/GridMiddleware-rep.pdf · kết cấu, cấu trúc, dịch vụ cơ bản của một ứng dụng và

Tìm hiểu về Grid Middleware

32

Dynamic Connectivity Service: nhằm giải quyết những vấn đề phát sinh khi kết nối

bị hạn chế bởi các chủ sở hữu tài nguyên

Information & Monitoring Services:

R-GMA Components: cung cấp một phương pháp thống nhất để truy cập và công

bố thông tin phân phối và giám sát dữ liệu.

Job Mornitoring service: giám sát tình trạng thực thi của các công việc trên lưới.

Discovery service: cung cấp một tiêu chuẩn thiết lập các phương pháp để định vị

lưới dịch vụ

Network Performance Monitoring: giám sát hiệu suất của mạng.

Hình 10: các lớp dịch vụ cấp cao trong gLite

Job Management Services

Page 33: Tìm hiểu về Grid Middleware - University of Technologyptvu/gc/2011/pub/GridMiddleware-rep.pdf · kết cấu, cấu trúc, dịch vụ cơ bản của một ứng dụng và

Tìm hiểu về Grid Middleware

33

Accounting: tích lũy thông tin về cách sử dụng các nguồn tài nguyên trong lưới

Computing element: đại diện cho một nguồn tài nguyên máy tính (một cụm, siêu

máy tính, máy trạm duy nhất).

Workload Management: bao gồm một tập hợp các thành phần Grid middleware

chịu trách nhiệm phân phối và quản lý các tác vụ trên các tài nguyên trong lưới

Job Provenance: ghi lại các định nghĩa của công việc được gửi, điều kiện và môi

trường thực thi.

Package Manager: là một dịch vụ trợ giúp tự động hóa quá trình cài đặt, nâng cấp,

cấu hình, và loại bỏ các gói phần mềm từ một khu vực được chia sẻ

Data Services:

Storage Element (SE): đại diện cho một nguồn tài nguyên lưu trữ

Metadata catalog services: theo dõi các vị trí dữ liệu và siêu dữ liệu liên quan

(kích thước file, ...)

Data movement services: cho phép quản lý truyền dữ liệu hiệu quả giữa các thành

phần lưu trữ

Helper Services:

Configuration and Instrumentation Service: Truy vấn trạng thái các dịch vụ

Agreement Service: hiện thực một giao thức truyền thông cho các cấp dịch vụ.

Bandwidth Allocation & Reservation service (BAR): Kiểm soát, cân bằng và quản

lý network flow.

Page 34: Tìm hiểu về Grid Middleware - University of Technologyptvu/gc/2011/pub/GridMiddleware-rep.pdf · kết cấu, cấu trúc, dịch vụ cơ bản của một ứng dụng và

Tìm hiểu về Grid Middleware

34

TÀI LIỆU THAM KHẢO

1. Ian Foster, Carl Kesselman, The Grid: Blueprint for a New Computing

Infrastructure, Morgan Kaufmann Publishers Inc., San Francisco, CA, 1998.

2. Thomas Sandholm, Jarek Gawor, Globus Toolkit 3 Core – A Grid Service

Container Framework, Globus site, 2003.

3. Sotomayor, B. Childers, Globus Toolkit 4: Programming Java Services,

Morgan Kaufmann, 2005.

4. http://glite.cern.ch/

5. http://www.unicore.eu/

6. http://www.globus.org/toolkit/

7. Qusay H. Mahmoud, Middleware for Communications, Wiley, 2004