Nghiên cứu phát triển ứng dụng trên GRID - Pdf 33

KHÓA LUẬN TỐT NGHIỆP ĐẠI HỌC CHÍNH QUY
Ngành: Công nghệ thông tin
HÀ NỘI - 2006
NGHIÊN CỨU PHÁT TRIỂN ỨNG DỤNG
TRÊN GRID
Lê Bá Dũng
ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
KHÓA LUẬN TỐT NGHIỆP ĐẠI HỌC CHÍNH QUY
Ngành: Công nghệ thông tin
HÀ NỘI - 2006
Ngô Cao Cường
Lê Bá Dũng
Trần Thiện Thịnh
ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
Cán bộ hướng dẫn: ThS.Nguyễn Nam Hải

Lời cảm ơn
Trước tiên, chúng em muốn gửi lời cảm ơn chân thành và sâu sắc nhất đến thầy
giáo, ThS. Nguyễn Nam Hải, người đã tận tình hướng dẫn chúng em trong suốt quá
trình làm nghiên cứu khoa học và làm khóa luận tốt nghiệp.
Chúng em cũng xin gửi lời cảm ơn chân thành đến các thầy giáo, cô giáo đã
giảng dạy chúng em trong những năm qua, những kiến thức mà các thầy cô đã dạy là
hành trang vững chắc để chúng em bước vào cuộc sống.
Cuối cùng chúng em xin gởi lời cảm ơn đến gia đình và bè bạn, những người đã
luôn ở bên động viên, giúp đỡ chúng em trong cuộc sống.
Hà Nội 5-2006
i
Tóm tắt
Trong vài năm trở lại đây tính toán mạng lưới (Grid computing) đã phát triển

3.1.2.Kho lưu trữ..................................................................................................12
3.1.3.Truyền thông...............................................................................................13
3.1.4.Phần mềm và bản quyền..............................................................................13
3.1.5.Các thiết bị đặc biệt, sức chứa, kiến trúc và quyền hạn..............................14
2.2.Công việc và ứng dụng.......................................................................................14
2.3.Lập lịch, đặt chỗ, và quét dọn............................................................................15
2.4.Các gói phần mềm grid......................................................................................16
iii
3.4.1.Gói quản lý..................................................................................................16
3.4.2.Gói lập lịch..................................................................................................17
3.4.3.Các gói truyền thông....................................................................................17
3.4.4.Gói quan sát và đo đạc.................................................................................18
2.5.Các cấu hình mạng grid......................................................................................18
Chương 3.Người dùng trong mạng Grid Computing...................................................21
3.1.Người dùng bình thường....................................................................................21
3.1.1.Tham gia vào grid và cài đặt các phần mềm...............................................21
3.1.2.Đăng nhập vào grid.....................................................................................21
3.1.3.Truy vấn và đưa công việc..........................................................................22
3.1.4.Cấu hình dữ liệu..........................................................................................22
3.2. Nhà quản trị.......................................................................................................22
3.2.1.Cài đặt .........................................................................................................23
3.2.2.Quản lý người dùng.....................................................................................23
3.2.3.Chứng thực..................................................................................................23
3.2.4.Quản lý tài nguyên.......................................................................................24
Chương 4.Một số chuẩn trong môi trường Grid..........................................................25
4.1.Kiến trúc dịch vụ Grid mở - Open Grid Services Architecture (OGSA)...........25
4.2.Cơ sở hạ tầng của dịch vụ Grid mở - Open Grid Service Infrastructure (OGSI)
..................................................................................................................................26
4.3.GridFTP..............................................................................................................27
4.4.Cơ chế tài nguyên của dịch vụ Web – Web service resource framework..........27

8.2.2.C WS Core...................................................................................................47
8.2.3.Python WS Core..........................................................................................47
8.3.Các thành phần bảo mật.....................................................................................47
v
8.3.1.Thẩm định và cấp phép WS.........................................................................48
8.3.2.Thẩm định và cấp phép Pre-WS..................................................................48
8.3.3.Dịch vụ cấp phép cộng đồng (Community Authorization Service - CAS). 48
8.3.4.Dịch vụ uỷ quyền........................................................................................48
8.3.5.SimpleCA....................................................................................................48
8.3.6.GSI-OpenSSH.............................................................................................48
8.4.Các thành phần quản lý dữ liệu..........................................................................49
8.4.1.GridFTP.......................................................................................................49
8.4.2.Truyền Tệp tin cậy (Reliable File Transfer - RFT).....................................49
8.4.3.Dịch vụ mô hình hoá địa chỉ (Replica Location Service - RLS).................50
8.4.4.Dịch vụ sao lưu dữ liệu (Data Replication Service - DRS).........................50
8.4.5.Các dịch vụ kiểm tra và khám phá thông tin (Monitoring and Discovery
Services - MDS)...................................................................................................51
8.4.6.Index service................................................................................................51
8.5.Các thành phần quản lý thi hành........................................................................51
8.5.1.WS GRAM..................................................................................................51
Chương 9. Cài đặt và cấu hình Globus Toolkit 4.0......................................................52
9.1.Download Globus Toolkit 4.0............................................................................52
9.2.Mô hình môi trường mạng Grid.........................................................................52
9.3.Cài đặt Globus Toolkit 4.0.................................................................................53
9.3.1.Cài đặt các phần mềm yêu cầu cho Globus Toolkit 4.0..............................53
9.3.2.Cấu hình môi trường Linux cho Globus Toolkit 4.0...................................55
9.3.3.Cài đặt Globus Toolkit 4.0..........................................................................56
9.4.Cấu hình và thử nghiệm môi trường Grid..........................................................57
9.4.1.Cấu hình các biến môi trường.....................................................................58
9.4.2.Cấu hình bảo mật.........................................................................................58

11.5.3.Biên dịch và chạy chương trình...............................................................100
11.6.Kết luận về bài toán Số nguyên tố..................................................................101
....................................................................................................................................101
Kết luận......................................................................................................................102
Tài liệu tham khảo.....................................................................................................103
viii
Bảng các ký hiệu viết tắt
Ký hiệu viết tắt Ý nghĩa
API Application Programming Interface – Giao diện lập trình ứng dụng
CA Certificate Authority – Cơ quan chứng thực
CAS Community Authorization Service - Dịch vụ cấp phép cộng đồng
CORBA Common Object Request Broker Achitecture
DRS Data Replication Service - Dịch vụ sao lưu dữ liệu
FTP File Transfer Protocal - Giao thức truyền tệp
GSI Grid Security Infrastructure - Cơ sở hạ tầng an ninh mạng lưới
GT Globus Toolkit
HTTP Hypertext Markup Language- Ngôn ngữ đánh dấu siêu văn bản
MDS Monitoring and Discovery Services - Các dịch vụ kiểm tra và khám
phá thông tin
OSGA Open Grid Services Architecture - Kiến trúc dịch vụ web mở
OSGI Open Grid Service Infrastructure - Cơ sở hạ tầng dịch vụ web mở
RFT Reliable File Transfer - Truyền Tệp tin cậy
RLS Replica Location Service - Dịch vụ mô hình hoá địa chỉ
RMI Remote Method Invocation -
RPs Resource Properties - thuộc tính tài nguyên
SOA Service Oriented Architechture - Kiến trúc hướng dịch vụ
SOAP Simple Object Access Protocol - Giao thức truy cập đối tượng đơn
giản
UDDI Universal Description, Discovery and Integration - chuẩn dịch vụ
Tích hợp, Khám phá và Mô tả Toàn cầu

Grid Computing là lĩnh vực công nghệ khá mới mẻ nên xuất hiện nhiều thuật
ngữ mới. Để có thể đi sâu vào nghiêu cứu Grid, chương này giới thiệu các thuật ngữ và
khái niệm được dùng trong Grid.
Chương 3: Người dùng trong mạng Grid Computing
Chương này mô tả các cấp độ người dùng trong mạng Grid.
Chương 4: Một số chuẩn trong môi trường Grid
Chương này giới thiệu một số công nghệ chuẩn trong Grid Computing.
1
Chương 5: Tổng quan về dịch vụ Web
Dịch vụ Web là cơ sở cho dịch vụ Grid. Chương này giới thiệu các công nghệ
của dịch vụ Web.
Chương 6: Cơ chế tài nguyên của dịch vụ Web - WSRF
Chương này giới thiệu một chuẩn của dịch vụ Grid, đó là WSRF
Chương 7: An ninh trong Mạng Grid
Bảo mật là vấn đề quan trọng trong mạng Grid Computing. Chương này đề cập
đến những yêu cầu trong vấn đề bảo mật của Grid Computing
Chương 8: Các thành phần của Globus Toolkit 4.0
Globus Toolkit 4.0 là công cụ nền tảng để phát triển các ứng dụng Grid, đang
được sử dụng phổ biến hiện nay. Chương này giới thiệu một số thành phần của bộ công
cụ này.
Chương 9: Cài đặt và cấu hình Globus Toolkit 4.0
Chương này hướng dẫn cài đặt bộ công cụ Globus Toolkit 4.0.
Chương 10: Các bước lập trình một chương trình Grid
Chương này giới thiệu các bước tiến hành xây dựng một chương trình Grid.
Chương 11: Tự xây dựng một dịch vụ Grid: Bài toán Số nguyên tố
Chúng tôi xây dựng một ứng dụng mang tính thực tiễn, đó là bài toán: Số
nguyên tố.
Mỗi thành viên trong nhóm thực hiện một số chương nhất định, cụ thể như sau:
• Từ Chương 1 đến Chương 3: Ngô Cao Cường.
• Từ Chương 4 đến Chương 7: Trần Thiện Thịnh.

giải pháp để đạt được thành quả như hiện nay. Nhân tố cơ bản của Grid là công nghệ
phân tán các thiết bị tính toán. Với công nghệ này, ta có thể chia sẻ tài nguyên và liên
kết các tổ chức lại với nhau. Đây còn gọi là công nghệ ảo hóa. Để có được một môi
trường hỗn hợp có thể chia sẻ tài nguyên, ngoài công nghệ ảo hóa, Grid còn dùng các
công nghệ khác trong các lĩnh vực lập lịch, tài chính, bảo mật,.v.v.
Sự ảo hóa trong môi trường grid có nhiều cấp độ khác nhau. Mỗi cấp độ phụ
thuộc vào phạm vi và tính đồng nhất của tổ chức. Hình 1 mô tả từng cấp độ của sự ảo
hóa từ đơn giản đến phức tạp khi đi theo chiều từ trái sang phải. Ở hình trái nhất là tổ
chức đồng nhất, đơn tài nguyên. Tài nguyên ở đây có thể là CPU, ổ lưu trữ,các thiết bị
4
và chương trình. Tiếp đến là hệ thống hỗn hợp gồm nhiều tài nguyên khác nhau. Cấp độ
ảo hóa phức tạp hơn là ảo hóa trong một xí nghiệp. Hình bên phải là mức độ ảo hóa cao
nhất với phạm vi trên toàn mạng Internet, bao gồm các đa tổ chức hỗn hợp.
1.2. Lợi ích của Grid Computing
1.2.1. Khai thác tài nguyên xử lý
Một trong những tính năng cơ bản của tính toán mạng lưới là khả năng chạy
một chương trình trên nhiều máy tính khác nhau. Trong một mạng lưới bao gồm nhiều
máy tính, có một số máy ở trạng thái bận do khối lượng công việc lớn, một số khác ở
trạng thái rỗi do khối lượng công việc nhỏ.
Trong hầu hết các tổ chức, luôn có những khối lượng lớn những tài nguyên
dùng để tính toán. Trung bình mỗi ngày, mỗi máy tính có thời gian trung ở trạng thái
thái bận là 5%. Điều đó chứng tỏ khối lượng tài nguyên rỗi trong một mạng là rất lớn.
Grid cung cấp một khung làm việc (framework) để tận dụng những tài nguyên này và vì
thế có thể tăng hiệu quả trong việc sử dụng các tài nguyên.
5
Hình 1: Sự ảo hóa với nhiều cấp độ
Ngoài tài nguyên xử lý, tài nguyên lưu trữ cũng được sử dụng hiệu quả hơn nhờ
Grid computing. Grid tận dụng các dung lượng đĩa cứng còn trống trong các máy tính
để tập hợp thành một tài nguyên lưu trữ ảo trọng mạng.
1.2.2. Khả năng xử lý song song

Ngoài việc chia sẻ tài nguyên là các tệp và cơ sở dữ liệu, ta có thể chia sẻ nhiều
tài nguyên khác, như các thiết bị chuyên dụng, phần mềm, dịch vụ, ...Những tài nguyên
này được “ảo hóa” để giữ chúng đồng bộ trong một hệ thống mạng luới không đồng
nhất. Các tài nguyên đó gọi là các tài nguyên ảo.
Những người tham gia hay sử dụng grid là một thành viên trong một tổ chức
nào đó. Grid có thể yêu cầu người dùng đó tuân thủ các luật lệ, quyền hạn sử dụng, từ
đó có thể giải quyết được các vấn đề về ưu tiên, bảo mật,...
1.2.4. Sự truy cập tới các tài nguyên khác
Ngoài CPU và tài nguyên lưu trữ, Grid còn có thể truy nhập đến những tài
nguyên khác. Các tài nguyên này có thể được cung cấp dưới dạng số lượng hoặc khả
năng lưu trữ, băng thông. Ví dụ, nếu một người muốn tăng băng thông truy nhập
Internet để thực hiện việc khai thác dữ liệu tìm kiếm, công việc này có thể phân chia
giữa các máy trong mạng grid có đường truyền Internet không phụ thuộc nhau. Trong
7
Hình 2: Mạng grid ảo không đồng nhất
trường hợp này, khả năng tìm kiếm được nhân lên, khi mỗi máy có đường truyền riêng
biệt. Nếu các máy chia sẻ đường kết nối Internet, thì nó sẽ không tăng băng thông.
Trong một mạng lưới, một số máy tính nào có thể được cài đặt những phần
mềm đắt tiền, có bản quyền mà một máy khác không có. Người sử dụng máy tính không
cài đặt phần mềm đó có thể sử dụng phần mềm này bằng cách gửi công việc đến máy
tính được cài phần mềm để yêu cầu xử lý. Đó là khả năng tận dụng phần mềm của Grid.
Một vài máy tính có thể có những thiết bị đặc biệt, chẳng hạn như máy in. Hầu
hết các máy in được sử dụng từ xa. Grid có thể chia sẽ được những thiết bị đặc biệt này.
Thậm chí grid có thể chia sẻ những thiết bị, tài nguyên phức tạp như máy chuẩn đoán
bệnh hay robot hỗ trợ phẫu thuật
1.2.5. Cân bằng tài nguyên
Grid liên kết các tài nguyên từ nhiều máy khác nhau tạo thành một hệ thống
duy nhất. Grid có thể thực hiện cân bằng tài nguyên trong các chương trình bằng cách
lập lịch làm việc cho các công việc, như hình 3 dưới đây. Chức năng này có ý nghĩa rất
lớn trong việc xử lý các trường hợp quá tải về xử lý, tính toán trong một tổ chức. Chức

Hình 3: Công việc được chuyển đến phần ít bận hơn trong mạng
mạng. Trong trường hợp quan trọng, nhiều bản sao của công việc được tạo ra và được
chuyển đến nhiều máy khác nhau trên mạng lưới như hình 4 dưới đây.
Những hệ thống grid như thế sẽ tạo nên khả năng tính toán tự động. Nó là một
dạng phần mềm có khả năng tự sửa lỗi trên grid, trước khi thông báo cho bộ xử lý hay
người quản lý biết. Về nguyên tắc, hầu hết những hệ thống tin cậy đắt tiền ngày nay dựa
vào phần cứng hoàn toàn cũng có thể dùng phần mềm để tạo nên sự tin cậy đó.
1.2.7. Khả năng quản lý
Việc ảo hóa tài nguyên và nhiều hệ thống hỗn hợp được tạo ra trên grid sẽ tạo
nên quy mô rộng hơn, các thiết bị được phân phối nhiều hơn. Nó làm cho các nhà doanh
nghiệp dễ dàng quản lý chi phí và tài nguyên tính toán trên phạm vi lớn.
Grid quản lý độ ưu tiên giữa các dự án. Trước đây, mỗi dự án quản lý riêng tài
nguyên và chi phí của nó. Có thể những tài nguyên đang rỗi trong khi các dự án khác
gặp sự cố, cần thêm những tài nguyên khác. Với tầm nhìn bao quát, grid có thể giải
quyết dễ dàng tình huống này. Trong hình 5, nhà quản lý có thể thay đổi các quyền hạn
với tài nguyên để các tổ chức khác có thể chia sẻ hay sử dụng.
10
Hình 4: Nhiều bản sao của công việc được tạo ra
11
Hình 5: Nhà quản trị có thể điều chỉnh chính sách thích hợp với tài nguyên
Chương 2.Các thuật ngữ và khái niệm
2.1. Các kiểu tài nguyên
Một mạng grid là tập hợp máy móc, đôi khi là các nút, thành viên, người quyên
góp, máy chủ, khách... Tất cả chúng tạo nên tài nguyên của grid. Một vài tài nguyên có
thể được sử dụng bởi tất cả mọi người sử dụng trên grid, trong khi số khác được giới
hạn sử dụng.
3.1.1. Tài nguyên tính toán
Tài nguyên thường thấy nhất trên grid là tài nguyên tính toán được cung cấp bởi
các bộ xử lý trên các máy của grid. Các bộ xử lý có thể khác nhau về tốc độ, kiến trúc,
hay các thiết bị đi kèm như bộ nhớ, ổ lưu trữ. Có ba cách chính để tận dụng tài nguyên


Nhờ tải bản gốc

Tài liệu, ebook tham khảo khác

Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status