Tải bản đầy đủ (.docx) (43 trang)

PHƯƠNG PHÁP GIẢI QUYẾT BÀI TOÁN CÓ LƯỢNG DỮ LIỆU LỚN TRONG GRID COMPUTING

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 (533.58 KB, 43 trang )


ĐẠI HỌC QUỐC GIA TP.HCM
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
BÁO CÁO CHUYÊN ĐỀ
TÍNH TOÁN LƯỚI
Đề tài:
PHƯƠNG PHÁP GIẢI QUYẾT BÀI TOÁN
PHƯƠNG PHÁP GIẢI QUYẾT BÀI TOÁN
CÓ LƯỢNG DỮ LIỆU LỚN TRONG
CÓ LƯỢNG DỮ LIỆU LỚN TRONG
GRID COMPUTING
GRID COMPUTING
GVHD : PGS.TS Nguyễn Phi Khứ
HVTH : Bùi Thị Thanh Bình- CH1101067
Thành Phố Hồ Chí Minh 07/2013
MỤC LỤC
Tính toán lưới GVHD: PGS.TS. Nguyễn Phi Khứ
CHƯƠNG 1 CỞ SỞ LÝ THUYẾT
I. Tổng quan tính toán lưới
1. Sự hình thành tính toán lưới
Giống như Internet, tính toán lưới tiến triển từ nhu cầu về điện toán trong sự
phát triển cúa các ngành khoa học. Mạng Internet được phát triển để đáp ứng nhu cầu
trao đổi thông tin giữa các trung tâm máy tính lớn. Các kết nối thông tin liên lạc này
dẫn đến chia sẻ tài nguyên và thông tin giữa các trung tâm và cuối cùng là cung cấp
truy cập vào chúng cho những người dùng khác. Đặc biệt “các thủ tục” chia sẻ tài
nguyên giữa các nhóm khởi đầu dẫn đến việc hình thành chuẩn của các giao thức cần
thiết để giao tiếp giữa các miền quản trị. Công nghệ lưới hiện tại có thể xem như là
một mở rộng hay là ứng dụng của khuôn khổ này để tạo nên một ngữ cảnh chia sẻ tài
nguyên tổng quát hơn.
Dự án Distributed Computing System (DCS) tại University of California,
Irvine vào đâu thập niên 1970 có thể xem là hệ thống tiền thân của Lưới với các tính


năng như của Lưới Kiến trúc sư chính của dự án là David Farber. Hệ thống này được
đăng trên tạp chí Business Week với tiêu đề “The ring acts as a single, highly flexible
machine in which individual units can bid for jobs” (Vòng hoạt động như một chiếc
máy đơn có tính linh hoạt cao mà các đơn vị riêng biệt có thể trả giá để thực hiện các
tác vụ). Trong thuật ngữ hiện đại thì “vòng” chính là “mạng máy tính”, và các “đơn
vị” là các “máy tính”, tương tự như cách các năng lực tính toán được sử dụng trên
lưới. Kết quả cuối cùng của dự án được đưa ra vào năm 1977. Kỹ thuật này hầu như bị
từ bỏ trong thập niên 1980 bởi không giải quyết được được các vấn đề về quản trị và
bảo mật do không thể quản lý được sự tính toán đang ở đâu và ai đang sử dụng việc
tính toán.
Ý tưởng về lưới được đưa ra bởi Ian Foster, Carl Kesselman và Steve Tuecke,
vì vậy họ được tôn vinh là “cha đẻ của lưới”. Họ dẫn đầu nhóm tạo ra Globus Tookit
tích hợp không chỉ việc quản lý CPU (ví dụ: quản lý cụm máy tính (cluster) và tận
dụng thời gian CPU rảnh) mà còn quản lý lưu trữ, cung cấp an ninh, luân chuyển dữ
liệu, giám sát và bộ công cụ để phát triển các thêm dịch vụ dựa trên cùng kiến trúc bao
gồm thoả thuận cấp phép, cơ chế thông báo, các dịch vụ bẫy lỗi và kết hợp thông tin.
Ngắn gọn hơn thì giới hạn của lưới đạt xa hơn những giả thiết thông thường được
công bố. Trong khi Globus Toolkit tiếp tục là chuẩn để phát triển các giải pháp lưới,
Trang 5
Tính toán lưới GVHD: PGS.TS. Nguyễn Phi Khứ
một số lượng các công cụ khác được xây dựng để đáp ứng các tập hợp dịch vụ cần
thiết để tạo một lưới doanh nghiệp.
2. Tính năng tính toán lưới
Tính toán lưới đưa ra một mô hình để giải quyết các vấn đề tính toán khổng lồ
bằng cách sử dụng các tài nguyên dư thừa (chu kỳ CPU hay đĩa lưu trữ) của một số
lượng lớn các máy tính khác nhau, thông thường là các máy để bàn, được xem như là
một cụm máy tính ảo nhúng vào trong một hạ tầng viễn thông phân tán. Tính toán lưới
tập trung vào tính năng hỗ trợ việc tính toán thông qua các miền quản trị làm cho nó
khác hẳn với các cụm máy tính (computer clusters) truyền thống hay tính toán phân
tán truyền thống.

Lưới đưa ra một cách thức để giải quyết các vấn đề lớn như cấu trúc protein,
mô hình tài chính, giả lập động đất và mô hình khí tượng/thời tiết. Lưới đưa ra một
cách thức sử dụng các tài nguyên công nghệ thông tin một cách có lựa chọn bên trong
một tổ chức. Nó cũng cung cấp một phương tiện đưa công nghệ thông tin như là một
bộ công cụ tiện ích cho các khách hàng cả thương mại và phi thương mại, mà các
khách hàng này chỉ trả tiền cho những gì họ sử dụng, giống như là sử dụng điện và
nước.
Tính toán lưới được thiết kế để giải quyết các bài toán rất lớn ngay cả so với
bất kỳ một siêu máy tính đơn lẻ nào, trong khi vẫn linh động khi làm việc với nhiều
bài toán nhỏ. Như vậy tính toán lưới cung cấp một môi trường đa người dùng. Tiếp
theo, nó hướng đến sự khai thác tốt hơn năng lực tính toán sẵn dùng và cung cấp cho
các yêu cầu không liên tục của một số lượng lớn các bài toán.
Cách tiếp cận này hàm ý việc sử dụng các kỹ thuật cấp phép an toàn cho phép
các người dùng từ xa có thể quản lý các tài nguyên tính toán.
Tính toán lưới bao gồm việc chia sẻ các tài nguyên không đồng nhất (dựa trên
các hệ điều hành khác nhau, kiến trúc phần cứng/phần mềm khác nhau và các ngôn
ngữ máy tính khác nhau), được đặt ở các vị trí khác nhau, phụ thuộc vào các miền
quản lý khác nhau thông qua một mạng máy tính sử dụng các tiêu chuẩn mở. Nói ngắn
gọn hơn là nó bao gồm các tài nguyên tính toán ảo.
Tính toán lưới thường bị lẫn lộn với cụm máy tính. Điểm khác biệt chính là
cụm máy tính là một tập các máy nằm trên cùng một vị trí trong khi Lưới thì bao gồm
nhiều cụm máy tính và các loại tài nguyên khác nữa (như là các mạng máy tính, các
thiết bị lưu trữ).
Về mặt chức năng có thể phân loại Lưới thành nhiều loại khác nhau như:
Trang 6
Tính toán lưới GVHD: PGS.TS. Nguyễn Phi Khứ
• Lưới tính toán: (bao gồm cả các loại lưới tận dụng thời gian rảnh của
CPU) tập trung chính vào các hoạt động tính toán chuyên sâu.
• Lưới dữ liệu: hay là điều khiển chia sẻ và quản lý một số lượng lớn các dữ liệu
phân tán .

• Lưới thiết bị: với một thiết bị chính (như là kính thiên văn) và Lưới bao quanh
nó được dùng để điều khiển thiết bị từ xa và phân tích dữ liệu nó tạo ra.
3. Các định nghĩa tính toán lưới
Khái niệm Tính toán lưới phát xuất từ đầu những năm 1990 với ẩn dụ là làm
cho việc truy cập nguồn sức mạnh của máy tính có thể dễ dàng giống như sử dụng
mạng lưới năng lượng điện.
Ngày nay có rất nhiều định nghĩa của Tính toán lưới:
• Định nghĩa cuối cùng về Lưới được lan Foster đưa ra trong bài báo “Thế
nào là Lưới? Danh sách ba điểm cần kiểm tra”. Ba điểm cần kiểm tra là:
o Không quản lý tập trung các tài nguyên tính toán.
o Sử dụng các chuẩn mở.
o Phải có loại “chất lượng dịch vụ” không tầm thường.
• Plaszczak/Wellner định nghĩa công nghệ Lưới là “công nghệ cho phép ảo
hoá tài nguyên, cung cấp theo yêu cầu, và chia sẻ dịch vụ (tài nguyên) giữa
các tổ chức”.
• IBM định nghĩa Tính toán lưới là “là khả năng, bằng cách sử dụng một tập hợp
các tiêu chuẩn và giao thức mở, để truy cập được đến các ứng dụng và dữ liệu,
năng lực xử lý, sức chứa kho lưu trữ và một lượng bao la các nguồn tài nguyên
máy tính thông qua mạng Internet. Một Lưới là một thể loại của hệ thông song
song và phân tán mà có thể chia sẻ, lựa chọn, và kết hợp các tài nguyên phân
tán thông qua ‘nhiều’ miền quản trị dựa trên khả năng sử dụng, sức chứa, hiệu
suất, giá thành và các yêu cầu chất lượng của dịch vụ người dùng của nó (tài
nguyên)”.
• Buyya định nghĩa Lưới là “một loại hệ thống song song và phân tán có thể
chia sẻ, lựa chọn và kết hợp các tài nguyên tự trị phân tán theo địa lý một
cách linh động vào thời điểm thực thi phụ thuộc vào khả năng sử dụng, năng
lực, hiệu suất giá thành và các yêu cầu chất lượng của dịch vụ người dùng
của nó”
• CERN một trong những đơn vị sử dụng công nghệ Lưới lớn nhất, phát biểu
về Lưới như sau: “một dịch vụ để chia sẻ năng lực máy tính và sức chứa kho

dữ liệu thông qua Internet”.
• Trên thực tế, Tính toán lưới thu hút các nỗ lực nghiên cứu cộng tác phi lợi
Trang 7
Tính toán lưới GVHD: PGS.TS. Nguyễn Phi Khứ
nhuận trên môi trường địa lý phân tán như là Trung tâm quốc gia ứng dụng
Siêu máy tính (NCSA). Các Lưới Tin Sinh học như là hệ thống lưới BIRN
(Biomedical Informatics Research Network): gọi là các Lưới bên ngoài
(External Grids).
• Tính toán lưới cũng thu hút các doanh nghiệp thương mại lớn có nhiều bài toán
tính toán phức tạp, là những doanh nghiệp hướng đến việc khai thác toàn bộ
các năng lực tính toán trong nội bộ của nó: gọi là các Lưới nội bộ (Internal
Grids).
Các Lưới có thể phân loại thành 3 loại theo phạm vi là Lưới bộ phận
(departmental Grids), Lưới doanh nghiệp (enterprise Grids) và Lưới toàn cầu (global
Grids). Phân loại này tương ứng với một công ty thiết lập tận dụng các tài nguyên
trong một nhóm (ví dụ: một phòng kỹ thuật kết nối các máy tính để bàn, các cụm máy
tính và các thiết bị lại với nhau). Tiến tới một Lưới doanh nghiệp là các tài nguyên
máy tính của các nhân viên không thuộc bộ phận kỹ thuật cũng có thể được dùng để
lưu trữ và tận dụng thời gian CPU rảnh. Một Lưới toàn cầu là kết nối giữa các lưới
doanh nghiệp và các lưới bộ phận để có thể sử dụng trong khía cạnh thương mại hay
cộng tác.
4. Các đặc tính của lưới
Lưới được nhìn nhận ở nhiều góc độ khác nhau và có nhiều định nghĩa khác
nhau. Tuy nhiên một tập các đặc tính được thống nhất cao và được đánh giá là quan
trọng
của Lưới như sau:
■ Tính cộng tác (Collaboration)
■ Tính kết hợp (Aggregation)
■ Tính ảo hóa (Virtualization)
■ Hướng dịch vụ (Service orientation)

■ Không đồng nhất (Heterogeneity)
■ Điều khiển không tập trung (Decentralized control)
■ Chuẩn hóa và kết nối hoạt động (Standardization and interoperability)
■ Truy cập trong suốt (Access transparency)
■ Khả năng mở rộng (Scalability)
■ Khả năng tái cấu hình (Reconfigurability)
■ An toàn (Security)
■ Hỗ trợ ứng dụng (Application support)
■ Khuôn mẫu tính toán (Computational model)
■ Khuôn mẫu giấy phép (Licensing model)
■ Thủ tục và chính sách (Procedures and policies)
Cộng tác (Collaboration)
Trang 8
Tính toán lưới GVHD: PGS.TS. Nguyễn Phi Khứ
Chia sẻ tài nguyên trong môi trường phân tán là một khía cạnh được thống
nhất cao. Hơn nữa một Lưới còn “nối các miền quản trị thành một khối duy nhất”. Nó
phát triển thành định nghĩa Lưới cộng tác (collaboration Grids).
Kết hợp (Aggregation)
Một Lưới không phải chỉ là tổng cộng lại các thành phần. Một Lưới kết hợp
nhiều tài nguyên lại và từ đó cung cấp một sức chứa kết hợp từ các tài nguyên đơn lập
thành một tài nguyên ảo có sức chứa lớn hơn. Sức chứa của từng tài nguyên được giữ
gìn. Hệ quả là đứng từ quan điểm toàn cục thì Lưới cho phép thực thi các ứng dụng
lớn nhanh hơn (sự kết hợp sức chứa), trong khi đó đứng ở quan điểm cục bộ thì Lưới
cho phép chạy những ứng dụng mới. Sự kết hợp này thì còn dùng để "tăng hiệu suất
chất lượng dịch vụ, tận đụng tốt hơn và dễ dàng truy cập dữ liệu”. Cuối cùng các tài
nguyên được thêm vào một cách tĩnh hay động.
Ảo hóa (Virtualization)
Các dịch vụ Lưới thường cung cấp các giao diện nào đó nhằm che dấu các tài
nguyên phức tạp bên dưới. Việc này được gọi là ảo hoá, cũng cung cấp một “tầng”
trừu tượng giữa khách hàng và tài nguyên. Như vậy, Lưới cung cấp “khả năng ảo hoá

tổng cộng các phần thành một mô hình lập trình tầm rộng đơn nhất”. Việc ảo hoá bao
gồm cả dữ liệu (các tập tin, cơ sở dữ liệu, …) và tài nguyên tính toán.
Hướng dịch vụ (Service orientation)
Lưới cung cấp các dịch vụ, tuân theo khái niệm kiến trúc hướng dịch vụ
(service orient architecture). Trong ý nghĩa rộng nhất thì “tất cả các tập hợp các dịch
vụ có qui mô rộng lớn thì có thể xem như là một Lưới”.
Trang 9
Tính toán lưới GVHD: PGS.TS. Nguyễn Phi Khứ
Không đồng nhất (Heterogeneity)
Lưới thông thường bao gồm các tài nguyên không đồng nhất, vì vậy ở đây có
các thành phần phần cứng và phần mềm đa dạng khác nhau với hiệu suất khác nhau và
các đặc tính tiềm tàng.
Điều khiển không tập trung (Decentralized control)
Các thành phần của Lưới thuộc nhiều người sở hữu khác nhau. Khó khăn
chính của Lưới là không có một người sở hữu duy nhất trên toàn bộ hệ thống. Một
trong những yêu cầu của Lưới là việc sử dụng cơ chế điều khiển phân tán.
Chuẩn hóa và kết nối hoạt động (Standardization and interoperability)
Một lưới đẩy mạnh các định nghĩa giao diện chuẩn cho các dịch vụ nhằm kết
nối hoạt động tạo ra một hạ tầng phân tán chung để đáp ứng các tác vụ của người dùng
và cung cấp các tiện ích ở mức người dùng. Hệ thống Lưới thực thi một tiêu chuẩn
phải động với các Lưới từ đó gia nhập vào một chuẩn chung.
Truy cập trong suốt (Access transparency)
Môt Lưới phải cho phép người dùng nó truy cập vào hạ tầng tính toán mà
không cần phải CG kiến thức tường tận về kiến trúc bên dưới hay phương thức kết nối
của mạng Điều này đôi khi được xem “khía cạnh phân biệt nhất của Tính toán lưới là
các mức độ trong suốt được cung cấp cho người dùng thông qua việc ảo hoá các tài
nguyên”.
Khả năng mở rộng (Scalability)
Ngay cả khi các hạ tầng và các bổ sung của Lưới không giải quyết thêm vấn
đề mới thì nó thường mở rộng dữ liệu, tài nguyên và người dùng vì thế góp phần tăng

thêm sự phức tạp của Lưới. Điều này cũng được diễn tả là sự thật một Lưới nên
“không định trước phán đoán sớm là cái gì là người dùng không thể giải quyết”
Khẳ năng tái cấu hình (Reconfigurability)
Một Lưới nên “có thể tái cấu hình một cách linh động” như nó được chỉ ra
trong định nghĩa của CoreGrid.
An toàn (Security)
Truy cập an toàn vào các tài nguyên là tính năng chính của một Lưới. Vì thế
các người dùng và các ứng dụng được ủy quyền chỉ được một số lượng hạn chế (hoặc
có thể là không có) các thao tác mà nó thực thi trên các dịch vụ. Về cơ bản, an toàn
của Lưới là một trong những điều đầu tiên mà những người dừng Grid thật sự phải để
cập đến và vì vậy nó là điểm chính yếu cho bất kỳ hệ thống Lưới nào mà nó bao gồm
nhiều vùng quản trị.
Trang 10
Tính toán lưới GVHD: PGS.TS. Nguyễn Phi Khứ
Hỗ trợ ứng dụng (Application support)
Thông thường một Lưới có thể hỗ trợ một số lượng lớn các ứng dụng khác
nhau. Các ứng dụng nên là một phần của Lưới và toàn bộ môi trường Lưới (môi
trường bao gồm phần cứng, tầng trung gian và các ứng dụng) nên là điều khiển dữ
liệu (data-driver). Cụ thể hơn, nó nên có thể được tác động trở lại để thay đổi của hệ
thống và các hành vi của ứng dụng được nắm bắt bởi ứng dụng và dữ liệu hệ thống.
Khuôn mẫu tính toán (Computational model)
Thông thường, một Grid hỗ trợ nhiều mô hình tính toán (ví dụ: xử lý khối
(batch), tương tác (interactive), phân tán và tính toán song song (distributed and
parallel computing)…
Khuôn mẫu giấy phép (Licensing model)
Vì các Lưới khởi nguồn từ cộng đồng học thuật, có sự nhấn mạnh toàn cầu
đến phần mềm mở, nó vì vậy cũng được tuân theo bởi nhiều công ty liên quan đến
việc phát triển Lưới.
Thủ tục và chính sách (Procedures and policies)
Người dùng và các nhà cung cấp dịch vụ Lưới tương tác với nhau tương tự

như trên một thị trường mở tuân thủ một số luật lệ nào đó. Vì vậy “các thủ tục và các
chính sách” cần phải có để cho phép cùng chia sẻ tài nguyên.
5. Các thành phần của lưới
Grid Fabric: Bao gồm tất cả các tài nguyên phân tán toàn cầu mà có thể truy
cập từ bât kỳ ở đâu thông qua mạng Internet. Các tài nguyên này có thể là các máy
tính (như PC, SMPs, clusters) chạy các hệ điều hành khác nhau (như Unix và
Windows) cũng như các hệ thống quản lý tài nguyên như LSF (Load Sharing
Facility), Condor, PBS (Portable Batch System) hay SGE (Sun Grid Engine), các thiết
bị lưu trữ, cơ sở dữ liệu, và các thiết bị khoa học đặc biệt như là kính viễn vọng vô
tuyến hay bộ cảm ứng nhiệt đặc biệt.
Core Grid Middleware: Cung cấp các dịch vụ như quản lý truy cập từ xa,
đồng cấp phát tài nguyên, truy cập kho lưu trữ, đăng ký và tìm kiếm thông tin, an
ninh, và các khía cạnh của Chất lượng dịch vụ (QoS) như dành riêng và kinh doanh
tài nguyên.
User-Level Grid Middleware: Bao gồm các môi trường phát triễn ứng dụng,
công cụ lập trình và các môi giới tài nguyên để quản trị các tài nguyên và lập lịch
cho các tác vụ của ứng dụng để thực thi trên các tài nguyên toàn cầu.
Trang 11
Tính toán lưới GVHD: PGS.TS. Nguyễn Phi Khứ
Grid Applications and Portals: Các ứng dụng Lưới thông thường được phát
triển bằng cách sử dụng các ngôn ngữ và các tiện ích hỗ trợ Lưới như MPI
(message- passing interface) hoặc ngôn ngữ đặc tả tham số Nimrod. Một ví dụ ứng
dụng, như là một tham số mô phỏng hay một vấn đề thách thức lớn, cần dùng năng
lực tính toán truy cập các dữ liệu từ xa, và có thể cần tương tác với các thiết bị khoa
học. Grid portal cung cấp các dịch vụ ứng dụng Web, mà người dùng có thể đưa
công việc của họ lên và lấy kết quả trên các tài nguyên từ xa thông qua Web.
II. Các thành phần phần mềm cho các hệ thống ứng dụng lưới
Phần mềm là phần quan trọng của các dự án Lưới. Cộng đồng nguồn mở đã
tạo ra một khối lượng lớn các thành phần phần mềm (software components) đa dạng.
Hiểu tính năng của từng thành phần, điểm mạnh và yếu của từng thành phần và các

loại vấn đề đã được khắc phục (hoặc chưa được khắc phục) của các thành phần này là
nhiệm vụ khó khăn đối với các dự án Lưới mới. Hơn nữa, mỗi dự án Lưới mới có các
yêu cầu khác nhau tương ứng với việc kết hợp các thành phần phần mềm khác nhau.
Các thành phần phần mềm này có thể chia thành các nhóm như sau:
• An ninh (Sercurity)
• Giám sát và khám phá (Monitoring and Discovery)
• Tính toán (Computation)
• Dữ liệu (Data)
• Cộng tác (Collaboration)
• Đóng gói và phân phối (Packaging and Distribution)
1. Các thành phần dùng cho an ninh
a. Các cơ chế an ninh căn bản
Các thành phần cấp phép và xác thực của Globus Toolkit cung cấp một cách không
chính thức chuẩn cho phần mềm an ninh “lõi” trong các hệ thống và các ứng dụng
Lưới. Những bộ công cụ phát triển (SDKs) này cung cấp các thư viện lập trình, các lớp
Java và các công cụ thiết yếu cho một PKI, hệ thống xác thực dựa trên chứng chỉ với
tính năng đăng nhập một lần (single sign-on) và ủy thác, ngay cả trong khuôn khổ
Web Services hay không phải Web Services, (“ủy thác” nghĩa là một khi một người
truy cập vào một hệ thống từ xa, anh ta có thể cho hệ thống ở xa đó dùng giấy phép
của anh ta để truy cập hệ thống khác dưới danh nghĩa của anh ta).
Pre-Web Services Authentication and Authorization - Một hiện thực không
phải Web Service của Grid Security Infrastructure (GSI), chứa các thư viện lõi và các
công cụ dùng cho an ninh, các ứng dụng sử dụng cơ chế GSI.
Trang 12
Tính toán lưới GVHD: PGS.TS. Nguyễn Phi Khứ
Web Services Authentication and Authorization - Một hiện thực cho Web
service của Grid Security Infrastructure (GSI), chứa các thư viện lõi và các công cụ
dùng cho an ninh, các ứng dụng sử dụng cơ chế GSI.
b. Các thành phần dùng cho sự phát sinh ủy nhiệm
Trong khi các phương pháp an ninh Lưới được dùng trong một hệ thống hay

một ứng dụng các người dùng hay các dịch vụ phải cung cấp các giấy ủy nhiệm để
chứng thực nhân dạng của họ. Giấy chứng thực Lưới chứa dữ liệu được tạo ra bởi các
phương pháp mã hóa, vì vậy chúng phải được cung cấp bởi các chương trình phần
mềm. Các công cụ và dịch vụ sau cung cấp nhiều cách để tạo ra các giấy chứng nhận
để sử dụng trong các hệ thống và các ứng dụng Lưới.
Globus Certificate Service - Là một dịch vụ trực tuyến tạo ra các giấy chứng
nhận GSI hạng thấp dành cho các người dùng muốn thử nghiệm phần mềm Lưới mà
không có cách nào khác để lấy được một giấy phép.
Simple CA - Là một phương thức tiện lợi để đưa ra các giấy phép cho những
người dùng và dịch vụ, nó làm việc với GSI và WS-Security.
c. Các thành phần để quản lý ủy nhiệm
Các thành phần sau cung cấp các cách thức để tránh (hay đơn giản hoá) việc cần
thiết để người dùng quản lý các giấy ủy nhiệm của họ.
MyProxy - Một dịch vụ mạng lưu trữ các giấy phép của người dùng để họ có thể
truy cập từ các hệ thống khác trên mạng.
KXS09 and KCA - Hệ thống dùng để cung cấp người dùng Kerberos giấy ủy
quyền Lưới mà không phải thực hiện một Certificate Authority.
PKINIT - Một cơ chế cho phép lấy được một thẻ Kerberos bằng cách sử dụng giấy
phép Lưới mà không cần phải dùng Kerberos passphrase
Trang 13
Tính toán lưới GVHD: PGS.TS. Nguyễn Phi Khứ
d. Các thành phần để điều khiển truy cập và cấp phép
Shibboleth - Một tập hợp các dịch vụ mà thúc đẩy các hệ thống xác thực và cấp
phép người dùng đã tồn tại tại chỗ để cho các dịch vụ ở xa thông tin chúng cần để ra
các quyết định cấp phép.
Community Authorization Service (CAS) - Là một dịch vụ cho phép các nhà
cung cấp tài nguyên định rõ các chính sách điều khiển truy cập dưới dạng các cộng
đồng như là sự quản lý chính sách điều khiển truy cập tổng thể, đại diện đến chính bản
thân cộng đồng.
Virtual Organization Membership Service (VOMS) - Là một cơ chế hướng cơ

sở dữ liệu để quản lý vai trò người dùng và tiềm năng dữ liệu tập trung.
2. Các thành phần dùng để giám sát và khám phá
a. Các cơ chế giám sát và khám phá căn bản
Kiến trúc OGSA và Globus Toolkit cung cấp một kiến trúc lõi và một thể hiện
(tách biệt) cho việc xuất bản, định vị và thu nhận thông tin.
WS Core Monitoring Features - Các cơ chế cùng hình thức để thu được trạng
thái chi tiết từ các Web services và cho việc đăng ký nhận các thuộc tính mong muốn.
Globus Index Service - Một điểm thu thập thông tin trạng thái từ các dịch vụ
khác trên một Lưới.
b. Các thành phần giám sát và khám phá chuyên dụng
Cộng đồng Lưới đã phát triển nhiều hệ thống chuyên dụng dùng để giám sát hệ
thống có thể dùng được cho cả cơ chế hoạt động độc lập và cả cho các yếu tố nằm bên
trong một kiến trúc OGSA.
Globus Trigger Service - Là một dịch vụ dùng để giám sát các thuộc tính của tài
nguyên WSRF và phát sinh các hành động khi các thuộc tính này đạt được các giá trị
đã được cấu hình trước.
Ganglia Cluster Toolkit - Một bộ công cụ chuyên thu thập các dữ liệu giám sát từ
các cụm máy tính và các kết hợp theo phân cấp của các cụm máy tính.
Inca - Một khuôn mẫu chung để kiểm tra tự động, xác minh và giám sát các thoả
thuận ở mức dịch vụ.
MonALISA - Một công cụ giám sát phân tán nổi bật là dịch vụ ủy nhiệm cho phép
sử dụng với firewalls và một tập lớn các giao diện khách hàng khác nhau bao gồm cả
JINI và WAP.
3. Các thành phần để tính toán
Trang 14
Tính toán lưới GVHD: PGS.TS. Nguyễn Phi Khứ
Giao diện GRAM của Globus Toolkit kết nối với một bộ lập lịch nội bộ, cung cấp
một cơ chế căn bản cho việc đăng ký công việc từ xa và các yêu cầu về nhập xuất và
dàn dựng các tập tin có liên quan. Các thành phần khác trong lĩnh vực này có thể được
xếp thành 3 loại: lập lịch, khuôn mẫu lập trình phân tán và dữ liệu ảo.

a. Các cơ chế tính toán căn bản
GRAM - Dịch vụ GRAM của Globus Toolkit, các giao diện máy khách, và các
công cụ đã cung cấp nhiều thành tựu trong việc tính toán phân tán tầm rộng. Ở hình
thức đơn giản nhất, GRAM cung cấp một giao diện để đăng ký và điều khiển các công
việc trên các thành phần tính toán Lưới không đồng nhất.
GRAM Scheduler Plugins - Dịch vụ GRAM có thể được dùng chung vói một bộ
lập lịch nhằm cung cấp một dịch vụ tính toán được quản lý. Những “bộ nhúng” này
cung cấp giao diện then chốt giữa dịch vụ GRAM và nhiều bộ lập lịch phổ biến.
b. Khuôn mẫu lập trình phân tán
Các thành phần này cung cấp hỗ trợ lập trình để phát triển các ứng dụng phân tán
sử dụng ba khuôn mẫu quen thuộc là : RPC, message passing và workflow.
NetSolve/GridSolve - là một thư viện dựa trên RPC để thực thi các mã giải pháp
trên các tài nguyên Lưới.
Ninf-G - cho phép các thư viện lập trình đang tồn tại được dùng theo cách phân tán
trên một Lưới bằng cách sử dụng RPC.
MPICH-G2 - là phiên bản MPI (Message Passing Interface) thông dụng có bổ sung
tương thích với Lưới.
Condor-G, DAGman - Condor-G và DAGman có thể được dùng để thực thi các
workflow phức tạp (bao gồm nhiều tác vụ độc lập hay có quan hệ) sử dụng các nguồn
tài nguyên tính toán Lưới thông qua GRAM hay Condor.
c. Các thành phần cho siêu lập lịch
Các bộ siêu lập lịch (metascheduler) đánh giá việc sử dụng của các nhóm trực tiếp
tính toán phân tán bằng cách nhận các yêu cầu tính toán tại một điểm trung tâm và
phân phối các yêu cầu này đến các tài nguyên sẵn sàng nhằm đạt được mục đích là tận
dụng tài nguyên.
Community Scheduler Framework (CSF) - là một tập các module có thể tập hợp lại
để tạo thành một hệ thống siêu lập lịch, hệ thống này nhận các yêu cầu công việc và
thực thi chúng bằng cách sử dụng các dịch vụ tính toán Lưới đang sẵn sàng.
GridWay - là một bộ siêu lập lịch đơn giản thực hiện việc quản lý thực thi công
việc và môi giới tài nguyên.

Trang 15
Tính toán lưới GVHD: PGS.TS. Nguyễn Phi Khứ
d. Các thành phần cho dữ liệu ảo
Các công cụ ảo dữ liệu giúp quản lý sự thoả thuận giữa các tài nguyên được yêu
cầu để lưu dữ liệu và các tài nguyên được yêu cầu để tạo (tái tạo) ra nó.
Chimera - bắt giữ các bước trong tiến trình phân tích dữ liệu và lưu trữ chúng trong
một danh sách để sử dụng lại sau đó.
4. Các thành phần để quản lý dữ liệu lưới
Xây dựng trên hệ thống lưu trữ có sức chứa lớn và các mạng máy tính, cộng đồng
Lưới đã tạo ra một tập các thành phần để làm việc với các dữ liệu được quản lý trên
Lưới.
a. Cơ chế quản lý dữ liệu cơ bản
Nhiều thành phần trên không gian Lưới nhắm đến việc cung cấp các giao diện
Lưới một cách riêng biệt cho các loại dữ liệu khác nhau.
GridFTP - Một giao diện có hình thức chung, an toàn, hiệu suất cao dành cho các
hệ thống lưu trữ dựa trên tập tin ở trên Lưới.
OGSA-DAI - Giao diện OGSA để truy cập các kho dữ liệu XML hay dữ liệu quan
hệ.
Metadata Catalog Service (MCS) - Dịch vụ hoạt động độc lập dùng để phân loại
siêu dữ liệu với một giao diện dịch vụ OGSA.
b. Các thành phần để di dời và di chuyển dữ liệu
Các công cụ này chuyên dùng để di dời và chuyển dữ liệu giữa các hệ thống Lưới.
Mỗi công cụ phù hợp cho một ứng dụng hay nhu cầu của người dùng và một vài công
cụ còn cung cấp các giao diện cho các hệ thống lưu trữ chuyên biệt.
Globus-url-copy - công cụ dòng lệnh dùng để yêu cầu chuyển dữ liệu bằng
GridFTP.
Reliable File Transfer (RFT) Service - Một dịch vụ OGSA cho phép các khách
hàng yêu cầu di chuyễn dữ liệu và sau đó đóng kết nối trong khi việc di chuyển đã
thiết lập.
UberFTP - Một client tương tác dựa trên ký tự dành cho GridFTP.

GSI-SCP/SFTP - Công cụ OpenSSH thông dụng có hỗ trợ xác thực của Lưới.
c. Công cụ để đánh giá truy cập dữ liệu
Các công cụ này giúp đánh giá việc sử dụng các hệ thống lưu trữ cho các cộng
đồng người dùng chuyên biệt.
Replica Location Service (RLS) - Một cơ chế phân tán để đánh dấu các vị trí của
các bản sao dữ liệu trên Lưới.
Trang 16
Tính toán lưới GVHD: PGS.TS. Nguyễn Phi Khứ
NeST - Một thiết bị lưu trữ cung cấp truy cập từ xa cho dữ liệu cục bộ khi các công
việc tính toán đang được thực thi.
DataCutter - Một hệ thống sử dụng các bộ lọc dữ liệu và các luồng đến phân đoạn
dữ liệu bằng các cách thức có hiệu quả trên Lưới.
5. Các thành phần để cộng tác
a. Các thành phần để xây dựng Web Portals
Các thành phần này làm cho việc bắt đầu xây dựng một giao diện duyệt web dễ
dàng hơn cho các ứng dụng Lưới phức tạp.
Sakai - Một “trang bị ban đầu” để xây dựng các hệ thống có thể truy cập được qua
trình duyệt web (“portals”) và nó hỗ trợ học tập và cộng tác phân tán.
Open Grid Collaboration Environment (OGCE) - Là một mở rộng đến CHEF/Sakai
cung cấp thêm các dịch vụ và một khởi tạo nhanh để xây dựng một portals Grid.
b. Không gian hội họp ảo chức năng cao
Access Grid - Không gian cộng tác ảo từ nhóm đến nhóm dành cho các nhóm làm
việc phân tán.
6. Các công cụ để đóng gói và phân phối
a. Các công cụ phân phối và đóng gói
Các công cụ này hỗ trợ các phần mềm được phân tán và cài đặt giống nhau thông
qua một cộng tác chung. Nó giúp tạo ra các bản phân phối tích hợp làm việc được trên
nhiều hệ thống khác nhau.
PACMAN - Công cụ tạo các triển khai phần mềm phù hợp trên nhiều hệ thống.
Grid Packaging Tools (GPT) - Một hệ thống đóng gói phần mềm có thể di chuyển

được.
Trang 17
Tính toán lưới GVHD: PGS.TS. Nguyễn Phi Khứ
b. Các bản phân phối tích hợp
Có nhiều bản phân phối tích hợp của các phần mềm Lưới thông thường được thiết
kế cho yêu cầu của các cộng đồng khác nhau.
NSF Middleware Initiative (NMI) - Một phân phối tích hợp của phần mềm Lưới có
thể sử dụng lại được dùng trong chương trình NSF's Cyberinfrastructure.
Rocks - một hệ thống quản lý tất cả trong một và bộ phần mềm dành cho máy tính
cụm Linux.
Virtual Data Toolkit (VDT) - Một phân phối phần mềm tập trung vào sự cần thiết
của các cộng đồng phân tán của Thiên văn học và Vật lý.
c. Phân loại một số hệ thống quản lý tài nguyên
Dựa vào trọng tâm và mục tiêu ứng dụng, Hệ thống quản lý tài nguyên (Grid
Resource Management Systems - RMSs) được phân loại thành Lưới Tính toán
(Computational Grids), Lưới Dữ liệu (Data Grids ) và Lưới Dịch vụ (Service Grids).
Trong mỗi loại Hệ thống quản lý tài nguyên được phát triển đó thì được phân loại dựa
vào những thuộc tính kỹ thuật. Việc phân loại này chú ý vào loại Lưới, cách tổ chức
các máy tính, các đặc tính của mô hình tài nguyên và các đặc tính của việc lập lịch.
Thuộc tính của hệ quản trị
tài nguyên
Phân loại
Loại lưới Computational Grids, Data Grids, Service Grids
Cách tổ chức các máy tính Phẳng (Flat), Ô (cell), Phân cấp
Mô hình tài nguyên Giản đồ, hướng đối tượng
Tổ chức không gian tên Quan hệ, phân cấp, biểu đồ
QoS Mềm, cứng, không có
Lưu trữ thông tin tài nguyên Thư mục mạng và các đối tượng phân tán
Tìm kiếm tài nguyên Truy vấn và đại diện
Phát tán thông tin tài nguyên Gói/Định kỳ, trực tuyến/theo yêu cầu

Cách tổ chức các bộ lập lịch Tập trung, phân cấp, phân tán
Chính sách lập lịch Hệ thống làm trung tâm, người dùng làm trung tâm
Đánh giá trạng thái Dự đóan trước và không dự đóan trước
Tái lập lịch Định kỳ, theo sự kiện.
Phân loại các hệ thống quản lý tài nguyên lưới
Hiện tại có nhiều dự án lưới đang được thực hiện, trong số đó bao gồm Globus,
Legion, NetSolve, AppLeS, and Condor.
AppLeS: bộ lập lịch mạng
AppLeS (Application Level Scheduling) tại đại học California, San Diego chủ yếu
tập trung vào phát triển các đại diện (agent) lập lịch cho từng ứng dụng riêng biệt trên
các sản phẩm Lưới tính toán. Nó dùng các dịch vụ của Network Weather Service
Trang 18
Tính toán lưới GVHD: PGS.TS. Nguyễn Phi Khứ
(NWS) để kiểm tra các thay đổi của hiệu suất của các tài nguyên một cách linh động.
Các đại diện AppLeS sử dụng ứng dụng tĩnh và động và hệ thống thông tin khi lựa
chọn một tập các tài nguyên có thể tồn tại và các cấu hình của tài nguyên. Nó tương
tác với các hệ thống quản lý tài nguyên khác như Globus, Legion và NetSolve để thực
thi các tác vụ ứng dụng. Các ứng dụng nhúng đại diện của AppLeS và vì vậy trở thành
có khả năng tự lập lịch trên Lưới. Khái niệm của AppLeS được áp dụng cho nhiền lĩnh
vực ứng dụng bao gồm Thủy động lực học, so sánh chuỗi gene và X quang.
Một nỗ lực khác trong khung dự án AppLeS là phát triễn các khuôn mẫu AppLeS.
Nó tương tự như khuôn mẫu Nimrod-G và resource broker, nhưng nó không hỗ trợ lập
lịch hướng quality of service vì nó không quan tâm đến Grid economy.
Dự án AppLeS tập trung vào việc lập lịch, nó tuân theo mô hình quản lý tài nguyên
được hỗ trợ bởi các hệ thống tầng giữa (middleware) của Lưới. Một bộ lập lịch
AppLeS là trung tâm ứng dụng thực hiện việc ánh xạ các tác vụ vào các tài nguyên,
nhưng các bộ lập lịch tài nguyên nội bộ mới thực hiện các thi hành thực sự của các
đơn vị ứng dụng. Bộ lập lịch AppLeS không cung cấp QoS và được xây dựng trên mô
hình tài nguyên được hỗ trợ bởi hệ thống bên dưới. AppLeS có thể coi như là có một
mô hình đánh giá trạng thái theo dự đoán heuristic với các chính sách lập lịch theo

hướng ứng dụng.
Condor: công nghệ tận dụng thời gian CPU
Condor là một môi trường tính toán thông lượng cao (high-throughput) được phát
triển tại University of Wisconsin, Madison, USA. Nó có thể quản lý một tập hợp lớn
các máy tính như PC, workstations, và clusters thuộc quyền quản lý của các cá thể
khác nhau. Mặc dù nó thường được biết là để khai thác các CPU rảnh rỗi, nó có thể
thiết lập để chia sẻ tài nguyên. Môi trường Condor tuân theo kiến trúc phân lớp và
cung cấp các dịch quản lý tài nguyên mạnh mẽ và linh động cho các úng dụng tuần tự
và song song. Hệ thống Condor đặc biệt chú ý đến quyền của người sở hữu máy tính
và cấp phát các tài nguyên của họ cho Condor pool tuân theo những điều kiện sử dụng
được đặt ra bởi người sở hữu. Thông qua các tính năng gọi hàm từ xa đặc biệt của nó,
nó bảo quản môi trường tác vụ nguyên thủy trên máy tính đang thực thi, ngay cả khi
máy tính nguyên thủy và máy tính thực thi không có cùng một hệ thống tập tin và/hay
một kiểu định danh người dùng. Các tác vụ của Condor với một tiến trình xử lý đơn
được đánh dấu một cách tự động và khi cần thiết thì được di trú giữa các trạm làm việc
Trang 19
Tính toán lưới GVHD: PGS.TS. Nguyễn Phi Khứ
để đảm bảo được hoàn thành. Condor đang được mở rộng để hỗ trợ các yêu cầu tác vụ
đến các tài nguyên Grid-enabled sử dụng các dịch vụ Globus.
Condor có thể có nhiều Condor pool và mỗi pool là một tổ chức các máy tính theo
dạng phẳng. Condor collection lưu trữ thông tin các tài nguyên, lắng nghe các lời
quảng bá của các tài nguyên có thể sử dụng được. Đại diện (agent) Condor của tài
nguyên chạy trên từng máy tính định kỳ thông báo các dịch vụ của nó cho collector.
Các đại diện từ khách hàng thông báo yêu cầu sử dụng tài nguyên cho collector. Dịch
vụ mai mối (matchmaker) của Condor truy vấn collector để tìm kiếm tài nguyên và nó
xác định các yêu cầu tài nguyên phù hợp và cung cấp cho khách hàng. Các đại diện
sau đó sẽ được thông báo về sự tương hợp của chúng. Các đại diện tương hợp nhau
sau đó liên hệ trực tiếp với nhau và nếu chúng đáp ứng được với nhau thì đại diện
khách hàng sẽ thiết lập việc tính toán trên tài nguyên này.
Các yêu cầu về tài nguyên và cung cấp tài nguyên được mô tả trong ngôn ngữ

Condor classified advertisement (ClassAd). ClassAds dùng một mô hình dữ liệu bán-
cấu trúc để mô tả tài nguyên. Vì vậy, matchmaker không yêu cầu một giản đồ riêng
biệt nào cho phép nó làm việc một cách tự nhiên trong môi trường không đồng nhất.
Ngôn ngữ ClassAd bao gồm một ngôn ngữ truy vấn là một phần của mô hình dữ liệu
cho phép các đại diện thông báo chỉ ra sự tương hợp của nó bằng cách bao gồm cả các
ràng buộc trong việc cung cấp và yêu cầu tài nguyên của nó.
Matchmaker thực hiện việc lập lịch trong một Condor pool. Matchmaker có nhiệm
vụ thiết lập liên hệ giữa các đại diện phù hợp với nhau. Đại diện người dùng có thể
thông báo các yêu cầu tài nguyên cho nhiều pool với một cơ chế gọi là flocking, cho
phép một tính toán sử dụng các tài nguyên phân tán thông qua nhiều Condor pool khác
nhau.
Hệ thống Condor gần đây được mở rộng để hỗ trợ việc tạo ra các condor pool cá
nhân. Nó cho phép người dùng bao gồm cả node Globus-enabled vào Condor pool để
tạo một pool “condor cá nhân” song song với các nodes condor pool công cộng. Các
node Lưới được thêm vào một pool condor cá nhân chỉ được truy cập bởi người tạo ra
pool đó.
Condor có thể xem như là một Lưới tính toán với một tổ chức hẹp. Nó dùng một
giản đồ mở rộng với một namespace lắp ghép. Nó không có hồ trợ QoS và thông tin
lưu trữ là một thư mục mạng không phải là sử dụng công nghệ X.500/LADP. Sự khám
Trang 20
Tính toán lưới GVHD: PGS.TS. Nguyễn Phi Khứ
phá tài nguyên đạt được thông qua các truy vấn tập trung với việc phát tán thông tin
bằng cách đẩy thông tin lên định kỳ. Chương trình lập thời biểu được tập trung.
Data Grid
CERN, tổ chức nghiên cứu hạt nhân châu Âu và cộng đồng Vật lý Năng lượng cao
đã thiết lập dự án International Data Grid với mục đích cung cấp kết quả cho các cộng
đồng khoa học khác như Nghiên cứu Trái đất hay Sinh-Tin học. Các mục tiêu của dự
án là thiết lập một mạng lưới nghiên cứu để phát triển công nghệ data grid, trình diễn
hiệu quả của data grid thông qua sự triển khai thực tế ở tầm rộng của các ứng dụng thử
nghiệm đầu cuối, và để trình diễn khả năng sử dụng các thành phần rẻ tiên đế xây

dựng, kết nối và quản lý một số lượng lớn các chuỗi máy tính đa dụng, chuyên sâu về
dữ liệu.
Dự án Data Grid tập trung vào sự phát triển các dịch vụ middleware nhằm có khả
năng phân tích phân tán các dữ liệu vật lý. Lõi của hệ thống middleware là Globus
tookit với các mở rộng cho data Grid. Dữ liệu với hàng Petabytes sẽ được phân tán
trong một mô hình phân cấp ở nhiều sites trên khắp thế giới. Không gian tên toàn cầu
được yêu cầu để quản lý sự khởi tạo, truy cập, phân phối và tái tạo các thành phần đữ
liệu. Các chức năng phân phối khối lượng công việc sẽ cân bằng phân tích của các
công việc trong Lưới để đạt tối đa thông lượng từ hàng trăm nhà vật lý. Chức năng
giám sát ứng dụng và người dùng truy cập sẽ được dùng để đánh giá hiệu quả sự phân
tán dữ liệu.
Các dự án Data Grid tổ chức các máy theo phân cấp với dữ liệu được lưu trữ ở mức
càng thấp thì càng ít. CERN, là Tầng 0, lưu trữ hầu như các dữ liệu có liên quan, các
Tầng 1 là trung tâm theo vùng ở Ý, Pháp, Anh, Mỹ và Nhật hỗ trợ lượng dữ liệu ít
hơn. Nó có một mô hình tài nguyên dựa trên giản đồ có thể mở rộng với tổ chức không
gian tên phân cấp. Nó không cung cấp bất kỳ QoS nào và việc lưu trữ thông tin tài
nguyên thì được mong đợi là dựa trên thư mục mạng LDAP. Sự phát tán thông tin tài
nguyên là dạng đóng gói và định kỳ được đẩy đến các phần khác của Lưới. Việc tìm
kiếm tài nguyên trong Data Grid là không tập trung và dựa vào truy vấn. Bộ lập lịch sử
dụng cấu trúc phân cấp với một chính sách lập lịch có thể mở rộng.
Globus: Bộ công cụ phát triển Tính toán Lưới
Globus cung cấp một kiến trúc phần mềm cho phép các ứng dụng xem các tài
nguyên máy tính không đồng nhất như là một máy tính ảo duy nhất. Dự án Globus là
Trang 21
Tính toán lưới GVHD: PGS.TS. Nguyễn Phi Khứ
dự án nghiên cứu gồm nhiều tổ chức tham gia của Mỹ nhằm tìm ra một kiến trúc cho
Lưới tính toán. Hiện tại các nhà nghiên cứu của Globus đang làm việc với nhau với
cộng đồng Vật lý Năng lượng cao, và Mô hình Thời tiết để xây dựng một data Grid.
Thành phần trung tâm của hệ thống Globus là Globus Toolkit, với các định nghĩa về
các dịch vụ căn bản và các các chức năng cần có để xây dựng nên các Lưới tính toán.

Toolkit bao gồm một tập các thành phần dùng hiện thực các dịch vụ căn bản như là an
ninh, xác định vị trí tài nguyên, quản lý tài nguyên, quản lý dữ liệu, dự phòng tài
nguyên và thông tin liên lạc. Toolkit cung cấp một gói các dịch vụ mà từ đó các nhà
phát triển các công cụ hay ứng dụng riêng biệt có thể lựa chọn để lấy đúng nhu cầu
mong muốn. Globus được cấu trúc là kiến trúc tầng với các dịch vụ ở tầng cao có thể
được phát triển bằng cách sử dụng các dịch vụ lõi ở tầng thấp. Điều nhấn mạnh của nó
là việc tích hợp theo phân cấp của các thành phần Lưới và các dịch vụ của nó. Tính
năng này khuyến khích sử dụng một hay nhiều dịch vụ tầng thấp khi phát triển các
dịch vụ tầng cao hơn.
Tài nguyên và trạng thái thông tin được cung cấp thông qua thư mục mạng dựa trên
LDAP gọi là Metacoputing Directory Services (MDS). MDS bao gồm 2 thành phần là
Grid Index Information Service (GIIS) và Grid Resource Information Service (GRIS).
GRIS cung cấp một giao diện đồng dạng để truy vấn các bộ cung cấp tài nguyên trên
Lưới về cấu hình hiện hành, năng lực và trạng thái của chúng. GIIS kéo thông tin từ
nhiều dịch vụ GRIS và tích hợp chúng vào một cơ sở dữ liệu thông tin tài nguyên đơn
nhất. Các bộ cung cấp thông tin tài nguyên sử dụng một giao thức đẩy (push) để cập
nhật GRIS.
Vì vậy MDS tuân theo cả hai giao thức kéo, đẩy để phát tán thông tin tài nguyên.
Các công cụ ở mức cao như môi giới tài nguyên có thể thực hiện tìm kiếm tài nguyên
bằng cách truy vấn MDS sử dụng giao thức LDAP. Không gian tên MDS được tổ chức
theo phân cấp dưới hình thức kiến trúc cây. Globus cung cấp QoS trong hình thức của
dự phòng tài nguyên. Globus cung cấp thành phần lập lịch như là một phần của tiếp
cận toolkit của nó nhưng không cung cấp các chính sách lập lịch mà thay vào đó là các
bộ lập lịch ở tầng cao hơn. Các dịch vụ Globus được dùng để phát triển nhiều bộ lập
lịch toàn cầu, bao gồm Nimrod-G, AppleS và Condor/G.
Trang 22
Tính toán lưới GVHD: PGS.TS. Nguyễn Phi Khứ
CHƯƠNG 2 GLOBUS TOOLKIT
I. Giới thiệu Globus Toolkit
Bộ công cụ mã nguồn mở Globus Toolkit là một công nghệ nền để tạo ra

Lưới, cho; phép mọi người chia sẻ năng lực máy tính, cơ sở dữ liệu và các công cụ
khác một cách an toàn trực tuyến qua các tổ chức, tập thể và biên giới địa lý mà không
làm mất quyền tự trị. Bộ công cụ bao gồm các dịch vụ và các thư viện phần mềm để
giám sát, tìm kiếm, quản trị, tăng cường an ninh và quản trị tập tin của tài nguyên. Bộ
công cụ Globus là một phần nền để các công ty IT hàng đầu xây dựng các sản phẩm
Lưới thương mại.
Bộ công cụ bao gồm phần mềm an ninh, hạ tầng thông tin, quản trị tài
nguyên, truyền thông, khám phá lỗi, và tính di chuyển được. Nó được đóng gói thành
một tập các thành phần (components) có thể sử dụng độc lập hoặc chung với nhau để
phát triển các ứng dụng. Mỗi tổ chức có một kiểu hoạt động riêng biệt và sự cộng tác
giữa nhiều tổ chức bị cản trở bởi các tài nguyên không tương thích như là lưu trữ dữ
liệu, máy tính và mạng. Bộ công cụ Globus được hình thành để loại bỏ sự cản trở đã
ngăn cản việc cộng tác suôn sẻ. Các dịch vụ lõi, các giao diện và các giao thức của nó
cho phép người dùng truy cập tài nguyên ở xa cũng giống như họ đang ở tại phòng
máy của họ trong khi đồng thời vẫn giữ sự kiểm soát nội bộ của họ đối với người có
thể dùng và khi nào dùng các tài nguyên.
Globus được phát triển theo cách mà hệ điều hành Linux phát triển thông qua
hình thức mã nguồn mở. Do đó nó tăng trưởng rất nhanh và được cộng đồng mã
nguồn mở tiếp tục phát triển.
Kể từ năm 2000, các công ty như Avaki, DataSynapse, Entropia, Fujitsu,
Hewlett- Packard, IBM, NEC, Oracle, Platform, Sun và United Devices theo đuổi
chiến lược Lưới dựa trên Globus Tookit. Sự mở rộng chấp nhận công nghệ này mang
đến nhiều định hướng mới, với mục đích là bảo vệ cộng đồng mã nguồn mở, phi lợi
nhuận để Lưới được phát triển, trong khi vẫn tạo ra các Lưới thương mại dựa trên các
chuẩn mở.
Trang 23
Tính toán lưới GVHD: PGS.TS. Nguyễn Phi Khứ
Các thành phần của Globus Toolkit Version 4/5 (GT4/5)
a. Sử dụng web service để xây dựng hệ thống phân tán
GT4 là một tập các thành phần phần mềm hiện thực cơ chế Web Services để

xây dựng hệ thống phân tán. Web services cung cấp một phương tiện chuẩn để kết nối
hoạt động của các phần mềm khác nhau chạy trên các hệ điều hành khác nhau.
Web services chuẩn hoá các thông điệp (message) mà các thực thế trong hệ
thống phân tán dùng để trao đổi với nhau để thực thi các hoạt động khác nhau. Ở
tầng thấp nhất, nó chuẩn hoá giao thức dùng để vận chuyển các thông điệp (thông
thường là đóng gói thông điệp (SOAP) và mô tả giao diện (WSDL). Một client
tương tác với một Web service bằng cách gởi các thông điệp SOAP, client có thể
nhận được các thông điệp ở kết quả trả về. Ở mức cao hơn, các đặc điểm kỹ thuật
định nghĩa các qui tắc để trao đôi thông điệp an toàn (ví dụ WS-Security), để quản
trị (ví dụ WSDM) và để cho các chức năng ở mức cao hơn như là tìm kiếm và bố trí.
Security
Process(discovery,…)
Manage
ment
Description (WSDL)
Messaging (SOAP +extensions)
Transport (HTTP or SMTP…)
Tóm tắt các đặc tính kỹ thuật khác nhau định nghĩa cho Web Services
b. Các ứng dụng hướng dịch vụ hạ tầng
Công nghệ web Services, và GT4 là một trường hợp cụ thể, được dùng để xây
dựng các ứng dụng hướng dịch vụ (service-oriented applications) và hạ tầng hướng
dịch vụ (service-oriented infrastructure), ứng dụng hướng dịch vụ là các ứng dụng
được xây dựng bằng cách kết hợp lại các thành phần được định nghĩa bằng các giao
diện dịch vụ (trong trường hợp này là Web Service).
II. Kiến trúc của Globus Toolkit
Trang 24
Tính toán lưới GVHD: PGS.TS. Nguyễn Phi Khứ
Hình bên dưới mô tả GT4 bao gồm một tập các hiện thực dịch vụ (“server”)
và các thư viện “clients” kết hợp. GT4 bao gồm cả các thành phần Web Service (WS)
và các thành phần không phải là Web Service.

Biểu đồ các thành phần của GT4
GT4 cung cấp một tập các dịch vụ định trước như sau.
Các dịch vụ có giao diện WS:
•Quản lý công việc: GRAM.
•Truyền tập tin tin cậy: RFT
•Ủy thác
• MDS-index, MDS-trigger và MDS-Archive (tập hợp của Hệ thống Giám sát
và Tìm kiếm - Monitoring anh Discovery System - MDS)
•Cấp phép cộng đồng: CAS
•Truy cập dữ liệu và tích hợp: OGSA-DAI
•Grid TeleControl Protocol (GTCP) để điều khiển trực tuyến các thiết bị.
Trong đó MDS-Archive, OGSA-DAI và GTCP đang ở mức “xem duyệt
kỹ thuật’ nghĩa là các giao diện và hiện thực của nó có thể thay đổi.
Hai dịch vụ GRAM và MDS-Index do tính kế thừa nên các hiện thực không
phải là Web Service vẫn được cung cấp. Các hiện thực này tương lai sẽ bị loại bỏ khi
mà các bổ sung với WS được hoàn thiện. Các dịch vụ: chuyển dữ liệu GridFTP, dịch
vụ bản sao dữ liệu RLS, và ủy nhiệm lưu trữ trực tuyến GridProxy thì không hỗ trợ
giao diện Web Service.
Các dịch vụ khác cung cấp cơ chế xác thực và cấp quyền, dịch vụ extensible
I/O (XIO) cung cấp truy cập tiện lợi vào các giao thức truyền nhận cấp thấp.
SimpleCA là một ứng dụng cung cấp giấy phép đơn giản.
GT4 container
Mã nguồn GT4 bao gồm hiện thực một tập Web Services các đặc tính kỹ
Trang 25

×