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

xây dựng và quản lý hạ tầng lưu trữ lưới cho hệ thống lưu trữ và chia sẻ dữ liệu linda

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 (445.1 KB, 71 trang )

Xây dựng và quản lý hạ tầng lưu trữ lưới cho hệ thống lưu trữ và chia sẻ dữ liệu LINDA

PHIẾU GIAO NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP
1. Thông tin về sinh viên
Họ và tờn sinh viờn: Đào Hải Hưng
Điện thoại liờn lạc: 0978118659 Email: hunga1_87@yahoo. com
Lớp: Hệ thống thông tin – K50 Hệ đào tạo: Đại học chính quy
Đồ ỏn tốt nghiệp được thực hiện tại:
Trung từm tớnh toỏn hiệu năng cao – Trường đại học Bỏch Khoa Hà Nội
Thời gian làm ĐATN: Từ ngày: 1/ 03/ 2010 đến: 31/ 05/ 2010
2. Mục đích nội dung của ĐATN
Xừy dựng và quản lý tầng lưới lưu trữ cho hệ thống lưu trữ và chia sẻ dữ liệu LINDA.
3. Cỏc nhiệm vụ cụ thể của ĐATN
- Xây dựng kiến trúc hệ thống LINDA ở tầng lưới dữ
liệu.
- Nghiờn cứu cỏch tạo và quản lý giấy ủy quyền (proxy)
cho cỏc mỏy chủtrờn hệ thống.
- Đưa ra quy trình thêm các thành phần thuộc tầng lưới
dữ liệu của hệ thống.
- Nghiên cứu và sử dụng thư viện lập trình lưới Java
CoG Kit để sử dụng các dịch vụ lưới trên web/servlet.
- Nghiên cứu các mô hình quản lý tài nguyên. Xây dựng
module quản lý tài nguyên của LINDA có khả năng mở
rộng và độc lập với các chính sách tài nguyên trên các
hệ thống tham gia.
- Xừy dựng cơ chế quản lý cỏc dịch vụ đang chạy trờn
hệ thống.
- Tìm hiểu cơ chế kiểm soát tốc độ của giao thức
GridFTP, áp dụng trong chính sách hạn chế tốc độ
download/upload.
4. Lời cam đoan của sinh viờn


Tôi – Đào Hải Hưng - cam kết ĐATN là công trình nghiên cứu của bản thân tôi dưới sự hướng
dẫn của PGS. TS Nguyễn Thanh Thủy.
Các kết quả nêu trong ĐATN là trung thực, không phải là sao chép toàn văn của bất kỳ công
trình nào khác.







Sinh viên Đào Hải Hưng – Lớp Hệ thống thông tin – K50 4
Xừy dựng và quản lý hạ tầng lưu trữ lưới cho hệ thống lưu trữ và chia sẻ dữ liệu LINDA

Hà Nội, ngày 23 thỏng 5 năm 2010
Tỏc giả ĐATN


Đào Hải Hưng

5. Xỏc nhận của giỏo viờn hướng dẫn về mức độ hoàn thành
của ĐATN và cho phộp bảo vệ

Hà Nội, ngày thỏng năm
Giỏo viờn hướng dẫn


PGS. TS Nguyễn Thanh Thủy



TểM TẮT NỘI DUNG ĐỒ ÁN TỐT NGHIỆP
LINDA là hệ thống lưu trữ dữ liệu dựa trên công nghệ lưới dữ liệu, được xây dựng bởi
sinh viờn K49 tại trung từm Tớnh toỏn hiệu năng cao trường Đai học Bỏch khoa Hà
Nội(phiờn bản này được gọi là LINDA – K49). Hiện tại, hệ thống LINDA – k49 đó xừy
dựng được cỏc chớnh sỏch khỏ hoàn thiện cho người sử dụng, các cơ chế kiểm soát dung
lượng, cơ chế hạn chế download/ upload hoạt động ổn định. Quá trình upload/ download
được thực hiện trên các mỏy chủ tại trung tâm Tính toán hiệu năng cao nên đạt tốc độ
cao. Tuy nhiên, dựa vào những phân tích về tính chất của hệ phừn tỏn, những hạn chế của
LINDA đó làm giảm chất lượng và khả năng triển khai/ mở rộng của hệ thống:
• Hệ thống chưa có module quản lý giấy ủy quyền (proxy) nờn
chưa khai thỏc được sức mạnh của cỏc lưới dữ liệu đó được
xừy dựng và hoạt động ổn định.
• Hệ thống không có khả năng triển khai và mở rộng: chưa
cung cấp giao diện thêm các thành phần. Ngoài ra, các tham
số cấu hình được đặt cố định trong mã nguồn nên hệ thống
không có khả năng triển khai rộng rãi.
• Hệ thống chưa có module kiểm soát tài nguyên: điều này đã
làm cho hệ thống hoạt động không ổn định và hiệu quả.
Mục đích của đồ án là sử dụng các lưới tính toán có sẵn để xừy dựng tầng lưu trữ lưới
cho LINDA.Để có thể sử dụng các dịch vụ mà lưới cung cấp, cần phải nghiên cứu và xây
dựng module quản lý giấy ủy quyền (proxy) hiệu quả cho người dùng

Sinh viên Đào Hải Hưng – Lớp Hệ thống thông tin – K50 2
Xừy dựng và quản lý hạ tầng lưu trữ lưới cho hệ thống lưu trữ và chia sẻ dữ liệu LINDA

trên các hệ thống lưới.
Nhằm nừng cao chất lượng dịch vụ, đồ án nghiên cứu các cơ chế quản lý tài nguyên trên
môi trường lưới, đồng thời đưa ra thiết đế để xây dựng module quản lý tài nguyên.
Module quản lý tài nguyên không những phải đảm bảo khả năng phát hiện các thành
phần của hệ thống gặp lỗi, mà còn có khả năng thu nhận thông tin cần thiết về tài nguyên

của hệ thống để phục phụ cho cỏc module khỏc. Các hệ thống tham gia các lưới tính toán
thường có các cơ chế quản lý tài nguyên và bảo mật khác nhau. Module quản lý tài
nguyên được thiết kế độc lập với chính sách quản lý của từng hệ thống, và có thể dễ dàng
thay đổi khi cần phải thu nhận những thông tin tài nguyên khác.
Trong quá trình hoạt động của hệ thống, một số thành phần có thể gặp lỗi và cần phải
thay thế, hoặc khi cần nừng cấp – mở rộng hệ thống. Đồ ỏn xừy dựng những điều kiện,
cơ chế và giao diện để thờm cỏc thành phần ở tầng lưới dữ liệu: quy trình thêm Headnode
và Datanode. Đầu tiờn, đồ ỏn xỏc định những yờu cầu cỏc mỏy chủ muốn trở thành
Headnode và Datanode của LINDA cần phải đáp ứng, sau đó Đồ án đưa ra các bước và
giao diện để thêm các thành phần này.
Trong hệ thống đa người dùng như LINDA, việc kiểm soát tài nguyên của từng người
dùng là điều quan trọng. Đồ án đã nghiên cứu và áp dụng cơ chế kiểm soỏt tốc độ upload/
download file của người dùng, bằng cách nghiên cứu sự phụ thuộc tốc độ giao thức
GridFTP và số luồng dữ liệu và độ lớn bộ đệm dữ liệu.
Thành viên của công trình:
o Phó giáo sư, Tiến Sỹ Nguyễn Thanh Thủy -Chủ nhiệm dự ỏn,
Chủ tịch hội đồng quản trị Viện tin học Phỏp ngữ, - Giỏm đốc
Trung từm tớnh toỏn hiệu năng cao - Giảng
viờn viện CNTTT và Truyền thông trường ĐHBKHN .
o Tiến Sỹ Nguyễn Hữu Đức - Phó giám đốc Trung tâm tính
toán hiệu năng cao - Giảng viên viện CNTTT và Truyền
thông trường ĐHBKHN .
o Kỹ Sư Phạm Hồng Phong – giảng viờn viện CNTTT và
Truyền thông trường ĐHBKHN, cộng tỏc viờn của Trung từm
tớnh toỏn hiệu năng cao – DHBKHN.
o Kỹ Sư Lờ Đức Hùng - cỏn bộ nghiờn cứu, trung từm tớnh
toỏn hiệu năng cao, ĐHBKHN.
o SV Đào Hải Hưng, lớp hệ thống thông tin – k50
o SV Bùi Hải Phong, lớp tin pháp – k50.
Trang chủ: http://hpcc. hut. edu. vn/ linda

LỜI NểI ĐẦU
Em xin gửi lời cảm ơn chừn thành tới PGS. TSNguyễn Thanh Thuỷ,giỏm đốc

Sinh viên Đào Hải Hưng – Lớp Hệ thống thông tin – K50 3
Xừy dựng và quản lý hạ tầng lưu trữ lưới cho hệ thống lưu trữ và chia sẻ dữ liệu LINDA

Trung Từm tớnh toỏn hiệu năng cao, trường đại học Bách Khoa Hà Nội, người đã tạo cho
em cơ hội được học tập và nghiên cứu trong một môi trường khoa học lý tưởng, người
tận tình hướng dẫn em trong suốt thời gian thực tập tốt nghiệp cũng như giai đoạn làm đồ
án tốt nghiệp.
Em xin bày tỏ lòng biết ơn sâu sắc tới TS Nguyễn Hữu Đức,người đã có những đóng
góp quý báu cho nội dung của đồ án, đã hướng dẫn tận tình nhóm sinh viên chúng em
trong suốt quá trình thực tập và làm đồ án tốt nghiệp tại trung tâm.
Em cũng xin gửi lời cảm ơn tới KSPhạm Hồng Phong, KSLê Đức Hùng đã có những
lời khuyên và đóng góp quý báu để đồ án của em được hoàn thiện.
Em xin gửi lời cảm ơn tới viện Công nghệ thông tin và truyền thông, Trung từm Tớnh
toỏn hiệu năng cao cùng toàn thể các thầy cô, anh chị và các bạn đã nhiệt tình tạo mọi
điều kiện thuận lợi cho em trong quá trình nghiên cứu và học tập tại trường Đại Học
Bách Khoa Hà Nội.
Mình xin gửi lời cảm ơn tớibạn cùng nhómLINDA là Bùi Hải Phong, cùng cỏc bạn sinh
viờn K50 tại Trung từm Tớnh toỏn hiệu năng cao – Trường đại học Bỏch Khoa Hà
Nộiđó sỏt cỏnh giúp đỡ nhau vượt qua những khó khăn trong quá trình thực tập, hoàn
thành đồ án.
Cuối cùng, con xin gửi lời biết ơn vô hạn tới bố mẹ, bố mẹ luôn là điểm tựa vững chắc
cho con trong mọi công việc. Chính sự hy sinh to lớn của bố mẹ đã giúp con có được
ngày hôm nay.

Hà Nội, thỏng 5 năm 2010

Sinh viờn thực hiện

Đào Hải Hưng
Lớp Hệ thống thông tin – K50
Trường Đại học Bỏch Khoa Hà Nội

MỤCLỤC





Xừy dựng và quản lý hạ tầng lưu trữ lưới cho hệ thống lưu trữ và chia sẻ dữ liệu LINDA

DANH MỤC HốNH ẢNH

Hình 1.1 – Mô hình LINDA 19
Hình 1. 2 - Cỏc trung từm và viện nghiờn cứu thành viờn tham
gialướiPRAGMA 20
Hình 2. 1 - Tổng quan một lưới dữ liệu 24
Hình 2. 2 - Kiến trúc chung của một lưới dữ liệu 25
Hình 2.3 – Cỏc thành phần của Globus Toolkit 4 27
Hình 2. 4 - Kiến trúc của Java CoG kit 29
Hình 2. 5 –Cỏc lớp của Java Cog Kit 30
Hình 2. 6 - Sự tương ứng giữa các gói với các lớp kiến trúc trong Java Cog
Kit 31
Hình 2. 7 – Biểu tượng lưới PRAGMA 32
Hình 2. 8 - Giao thức FTP 33
Hình 2. 9 - Truyền dữ liệu song song 34
Hình 2. 10 - Truyền dữ liệu song song với đối tỏc thứ ba 34
Hình 2. 11 - GateKeeper 38
Hình 2. 12 - Sơ đồ vật lý của hệ thống 41

Hình 2. 13 - Sơ đồluồng dữ liệu upload file từ người dùng: Các gói tin được chuyển
tiếp thông qua bộ đệm trên Headnode tới Datanode là các server trên Lưới dữ liệu. 42
Hình 2. 14 - Sơ đồ download filetừ Datanode thông quabộ đệm nằm trờn
Headnode 43
Hình 2. 15 - Sơ đồ bố trí các dịch vụ trên Headnode 43
Hình 3. 1 - Lưu giấy ủy quyền lờn mỏy chủ lưu trữ 46
Hốnh 3. 2 - Truy xuất giấy ủy quyền từ mỏy chủ lưu trữ 47
Hình 3. 3 –Biểu đồ use case của module quản lý proxy 48
Hình 3. 4 – Lớp SHARED_ MEMORY 50
Hình 3. 5 –Lớp PROXY_ SERVICE_ MONITOR 51
Hình 3. 6 - Lược đồ tuần tự cho module quản lý proxy 51
Hình 3. 7 - Biểu đồ tuần tự cho các chức năng khác 54
Hình 3. 8 – Module quản lý proxy 54
Hình 4. 1 – Cây thư mục trên Headnode 57
Hình 4. 2 – Import file cấu hình cho Headnode 59
Hình 4. 3 –Tạo cơ sở dữ liệu trờn Headnode 60
Hình 4. 4 –Khởi tạo cỏc dịch vụ trờn Headnode 60
Hình 4.5 – Cừy thư mục trờn DATANODE 61
Hình 5. 1 - Phỏt hiện lỗi phần cứng 63
Hình 5. 2 - Phỏt hiện lỗi đường truyền 63
Hình 5. 3 - Mô hình Push 64
Hình 5. 4 - Phát hiện lỗi trong mô hình Push 65
Hình 5. 5 - Mô hình Pull 65
Hình 5. 6 - Phát hiện lỗi trong mô hình Pull 66
Hình 5. 7 Sử dụng kết hợp hai mô hình Push và Pull 66
Hình 5. 8 – Module quản lý tài nguyên 68
Hình 5. 10 – Lớp RESOURCE_ MONITOR_ OBJECT 70
Hình 5. 11 –Biểu đồ tuần tự lấy trạng thỏi của tài nguyờn 70
Hình 5. 12 – Biểu đồ tuần tự quản lý module quản lý tài nguyên 72
Hình 5. 13 – Module quản lý tài nguyên 73

Hình 6. 1 - GridFTP nhiều luồng TCP với mô hình thời gian liên tục 75
Hình 6. 2 – sự ảnh hưởng của số luồng dữ liệu vào tốc độ của GridFTP 77

Sinh viên Đào Hải Hưng – lớp Hệ thống thông tin – K50 10
















Sinh viên Đào Hải Hưng – lớp Hệ thống thông tin – K50 10

Xừy dựng và quản lý tầng lưu trữ lưới của hệ thống lưu trữ và chia sẻ dử liệu LINDA

CÁC TỪ VIẾT TẮT VÀ CHÚ GIẢI
Từ viết
tắt
Nghĩa tiếng
Anh
Chú giải

API Application
Programmin
g Interface
Giao diện lập trình ứng dụng, thường làm một tập các hàm giúp
lập trình viên dễ dàng tương tác với dịch vụ , hệ thống.
CAS Community
Authorizatio
n Service
Dịch vụ chứng thực cộng đồng. Một dịch vụ bảo mật trong môi
trường lưới cho phép dung hũa giữa chính sách sử dụng tài
nguyên của cộng đồng người dùng với chính sách sử dụng tài
nguyên của những nhà cung cấp
FTP FileTransfer
Protocol
Giao thức truyền file nổi tiếng qua mạng
Globus
XIO
Globus
eXtensible
Input/ Ouput
Giao diện vào ra mức thấp trong kiến trúc Globus
GridFTPGrid File
Transfer
Protocol
GridFTP là mở rộng của giao thức FTP, tích hợp khả năng bảo
mật lưới, truyền dữ liệu tốt hơn so với FTP
GSI

Grid
Security

Infrastructur
e
Cơ sở hạ tầng bảo mật lưới trong kiến trúc của Globus, hỗ trợ
giấy chứng nhận theo chuẩn X509 và dùng hệ mã công khai.
GT Globus
Toolkit
Bộ công cụ middleware hỗ trợ tính toán lưới, cung cấp một số
dịch vụ đệ trình công việc, quản lý tài nguyên, hạ tầng bảo mật,
cũng như hỗ trợ việc xây dựng các dịch vụ lưới…
LDAP Lightweight
Directory
Access
Protocol
Giao thức đặc tả các kỹ thuật định danh đối tượng, mô hình dữ
liệu, tìm kiếm và ghi các khoản mục dữ liệu.
LFN Logical File
Name
Tênlogiccủamộtthựcthểdữliệutronglướidữliệu,hàmchứanộidungc
ủathựcthểdữliệuđó.


Sinh viên Đào Hải Hưng – lớp Hệ thống thông tin – K50 12

Xừy dựng và quản lý tầng lưu trữ lưới của hệ thống lưu trữ và chia sẻ dử liệu LINDA

LRC Local Replica
Catalogue
Catalog định vị bản sao địa phương, lưu trữ tập
các ánh xạ bao gồm hai trường: {tên logic của
thực thể dữ liệu, vị trí vật lý cụ thể của thực thể

đó}
ODBC Open Database
Connectivity
Giao diện API giúp lập trình viên tương tác với
cơ sở dữ liệu.
PFN Physical File Name Tờn vật lý của một file dữ liệu: nú bao hàm giao
thức truy cập, địa chỉ của máy mà chứafile dữ
liệu đó, người sử dụng có thể dễ dàng truy cập
được vào thực thể dữ liệu.
RLI Replica Location Lưu các thông tin chỉ mục cho dịch vụ định vị
Index bản sao, mỗi bản ghi bao gồm {LFN, và con trỏ
tới LRC tương ứng}
RLS Replica Location
Service
Dịch vụ định vị bản sao trong kiến trúc lưới dữ
liệu Globus.
TCP Tranmission Control
Protocol
Giao thức truyền thông nổi tiếng cho mạng
Internet
XML eXtensible Markup
Language
Ngôn ngữ đánh dấu mở rộng, hiện đang được
dùng như một chuẩn trao đổi dữ liệu thông dụng.
CHƯƠNG 1 – ĐẶT VẤN ĐỀ
1.1.Giới thiệu hệ thống LINDA – K49
1. 1. 2. Nhu cầu cho hệ thống lưu trữ trực tuyến
Hiện nay, nhu cầu upload, cất giữ dữ liệu trực tuyến đã trở thành một nhu cầu không thể
thiếu của các cá nhân cũng như các tổ chức có sử dụng Internet. Cỏc
tổchứckhoahọc,cáctrườngđạihọc,cácviện,cáctổchứckinhtế,chođếnrấtnhiềungườidùngcánh

ân đềucónhucầulưugiữvàchiasẻdữliệucủahọ.Vớinhữngdữliệulớn,họsẵnsàngtrảtiềnchodịc
hvụlưutrữđó.TrênInternethiệnnàycórấtnhiềutrangwebcungcấpcácdịchvụnhưvậynhư:Rapid
Share,MegaUpload…TuynhiênngườidùngViệtNam vẫn chưa hài lòng với các dịch vụ này
vì nhiều lý do.

Sinh viên Đào Hải Hưng – lớp Hệ thống thông tin – K50 13

Xừy dựng và quản lý tầng lưu trữ lưới của hệ thống lưu trữ và chia sẻ dử liệu LINDA

Xuất phát từ nhu cầu như vậy, nhóm dự án quyết định xây dựng một công cụ cho phép
các tổ chức, các cá nhân có thể upload dữ liệu và sử dụng các dich vụ như download, chia
sẻ dữ liệu, hoặc tạo các kho chứa lớn của mình (gồm rất nhiều các dịch vụ hỗ trợ kèm
theo ). Dự án hướng tới đối tượng sử dụng chuyên nghiệp, phục vụ nhu cầu nghiên cứu
và hướng tới cả người dùng phổ thông.
Để xây dựng được một dịch vụ mạnh và đạt yêu cầu cần có một nền tảng công nghệ thích
hợp. Nền tảng công nghệ này cần có khả năng kết hợp sức mạnh lưu trữ của nhiều máy
tính. Một hệ thống chia sẻ dữ liệu như vậy sẽ cung cấp cho người dùng những dịch vụ tốt
hơn nhiều so với các hệ thống đơn lẻ khác. Qua quá trình nghiên cứu, nhóm thấy rằng
công nghệ lưới dữ liệu là phù hợp với những yêu cầu đặt ra cho một hệ thống như vậy.
Với những điểm mạnh về công nghệ tại Trung tâm tính toán hiệu năng cao trường ĐH
Bách Khoa Hà Nội, hệ thống LINDA được xừy dựng bởi cỏc sinh viờn k49 trờn nền lưới
dữ liệu (DataGrid) với cỏc kho lưu trữ nằm phừn tỏn về mặt địa lý (LINDA-
k49).LINDA là viết tắt của LINDA Is Not a Data Archive.
1. 1. 3. Những vấn đề cho dịch vụ lưu trữ trực tuyến
1.1.3.1. Tính cục bộ
Có nhiều tiêu chí để đánh giá một dịch vụ chia sẻ dữ liệu. Chất lượng của dịch vụ cũng
phụ thuộc vào nhiều yếu tố. Trong số đó, yếu tố được người dùng đánh giá cao nhất là tốc
độ truyền file. Đây cũng là điều được các nhà cung cấp dịch vụ lưu trữ và chia sẻ dữ liệu
ưu tiên hàng đầu. Để tăng tốc độ truyền tải dữ liệu giữa người dùng, người ta có nhiều
giải pháp.

Một trong những giải pháp đó là đầu tư tiền vào một hệ thống máy chủ lưu trữ tập trung
với quy mô lớn, tài nguyên phần cứng và tài nguyên mạng dồi dào. Hệ thống này có khả
năng đáp ứng một lượng lớn người sử dụng và khả năng lưu trữ lớn, đủ sức cung cấp cho
cộng đồng một dịch vụ chất lượng cao. Đây là phương pháp đạt hiệu quả vì tính tiện
dụng, nhanh chóng và dễ xừy dựng. Tuy nhiên phương pháp này lại khá tốn kém và cần
có sự đầu tư ban đầu rất lớn. Mặt khác, do hạ tầng mạng, hệ thống này khó phát huy tối
đa khả năng của mình.
Đểgiảmtảiviệcđòihỏimộtlượnglớntàinguyênmạng,ngườitachiatoànbộhệthốngthànhcáccụm
máychủlưutrữkhácnhau,đặttạinhữngvịtríđịalýkhácnhau.Ngườidùngnhờvậycóthểthựchiệnv
iệctruyềndữliệutớinhữngmáychủgầnmìnhhơnvàđạttốcđộtốthơnnhiềusovớimáychủtậptrung
tạimộtđịađiểm.Khiyêucầutớidịchvụ,ngườidùngsẽlàmviệcvớimáychủởgầnhoặcmáychủcók
hảnăngđápứngtốthơn.

Sinh viên Đào Hải Hưng – lớp Hệ thống thông tin – K50 14

Xừy dựng và quản lý tầng lưu trữ lưới của hệ thống lưu trữ và chia sẻ dử liệu LINDA

Việc đặt các máy chủ ở nhiều địa điểm khác nhau làm tăng tính cục bộ cho hệ thống. Tuy
nhiên khi hệ thống được chia làm nhiều thành nhiều cụm máy sẽ nảy sinh những khó
khăn trong việc quản lý, bảo mật và đồng bộ hoá.
1.1.3.2. Tính cộng đồng
Dịch vụ lưu trữ dữ liệu ngoài việc cung cấp cho người dùng một lượng tài nguyên lưu trữ
còn cần có cơ chế giúp người dùng tương tác, chia sẻ dữ liệu qua lại với nhau. Việc chia
sẻ này cần đảm bảo tính thuận tiện, dễ dàng và an toàn. Các hệ thống lớn đã có mặt trên
thế giới đều có những cơ chế giúp người dùng chia sẻ file cho người khác. Tuy có nhiều
cách thức thể hiện và phương thức cung cấp chức năng chia sẻ cho người dùng, các dịch
vụ đều dựa trên cơ chế chia sẻ file thông qua đường liên kết logic.
Dưới khung nhìn của người dùng, mỗi đường dẫn logic ánh xạ đến một file duy nhất
trong hệ thống nhưng đường dẫn này lại độc lập với cỏc file tin thực được lưu trữ. Đường
dẫn logic cũng độc lập với hệ thống quản lý người dùng và việc phân chia lớp người

dùng. Nhờ vậy, người sử dụng tham gia hệ thống có thể chia sẻ file cho nhau thông qua
đường dẫn logic này mà không cần quan tâm đến file đó của ai hay được lưu trữ ở đâu.
Đương nhiên người dùng có quyền quản lý các đường dẫn logic do mình tạo ra.
Bên cạnh việc sử dụng cơ chế đường dẫn logic, các dịch vụ chia sẻ dữ liệu còn cung cấp
chức năng cho phép người dùng chia sẻ file theo nhóm. Người dùng có thể tạo ra một
danh sách các file tin muốn chia sẻ và một đường dẫn logic đến danh sách này để những
người dùng khác có thể truy cập.
1. 1. 4. Cỏch tiếp cận của hệ thống LINDA – K49
Dịch vụ lưu trữ dữ liệu đã được phát triển từ rất lâu trên thế giới, từ khi mạng Internet bắt
đầu phổ biến với người dùng. Tuy nhiên công nghệ lưu trữ và phân bố file tin trong hệ
thống được cỏc nhà phỏt triển che giấu.
Đểxâydựngđượcmộtdịchvụmạnhvàđạtyêucầucầncómộtnềntảngcôngnghệthíchhợp.Nềntản
gcôngnghệnàycầncókhảnăngkếthợpsứcmạnhlưutrữcủanhiềumáytính.Mộthệthốngchiasẻdữ
liệunhưvậysẽcungcấpchongườidùngnhữngdịchvụtốthơnnhiềusovớicáchệthốngđơnlẻkhác.
Quaquátrìnhnghiêncứu,nhómthấyrằngcôngnghệlướidữliệulàphùhợpvớinhữngyêucầuđặtra
chomộthệthốngnhưvậy.Vìlýdođó,dựánLINDA được xây dựng với việc sử dụng hạ tầng
lưới phục vụ cho mục đích lưu trữ và chia sẻ.

Sinh viên Đào Hải Hưng – lớp Hệ thống thông tin – K50 15

Xừy dựng và quản lý tầng lưu trữ lưới của hệ thống lưu trữ và chia sẻ dử liệu LINDA

1.2. Khảo sỏt hệ thống LINDA – K49
1. 2. 1 Tớnh chất của hệ thống phân tán
Một hệ thống phừn tỏn, như Tannenbaum định nghĩa trong [1]:

Một hệ phân tán là một tập hợp các máy tính độc lập nhau, tồn tại với người dùng như
một hệ thống đơn nhất.

Định nghĩa này có hai khía cạnh chính. Khía cạnh thứ nhất về phần cứng: các máy tính

trong hệ phân tán là các hệ thống độc lập với nhau, có thể có kiến trúc khác nhau và được
liên kết, cộng tác với nhau trong suốt với người dùng. Điểm thứ hai về phần mềm: người
sử dụng quan sát hệ thống như một hệ thống đơn nhất. Nghĩa là mọi tương tác với hệ
thống của người sử dụng hay các hệ thống khác theo một cách cố định và duy nhất,
không phụ thuộc vào không gian, thời gian mà tương tác đó diễn ra. Cỏc mục đích chính
khi xây dựng các hệ phân tỏn:
1.2.1.1. Liờn kết người sử dụng và tài nguyờn
Mục đích chính của các hệ phân tán là nhằm cung cấp phương tiện cho người dùng truy
cập và sử dụng các tài nguyên ở xa. Các tài nguyên có thể là máy in, dung lượng lưu trữ,
dữ liệu hay các chương trình trên các máy tính khác. Liên kết người dùng và các tài
nguyên còn nâng cao tính cộng tác và trao đổi dữ liệu. Sự bùng nổ của Internet đã dấn tới
sự thành lập của nhiều tổ chức ảo năm phân tán về mặt địa lý, các thành viên trong tổ
chức cộng tác với nhau thông qua các hệ thống phân tán.
Tuy nhiờn, khi sự liờn kết và chia sẻ tài nguyờn tăng lờn, vấn đề bảo mật cũng trở nờn
quan trọng hơn. Cỏc hệ thống phừn tỏn vừa phải giải quyết được cỏc yờu cầu bảo mậtcủa
hệ thống vừa phải phù hợp với chính sách bảo mật của từng thành phần trong hệ thống.
LINDA– K49 là hệ thống khai thác khả năng lưu trữ của các hệ thống trên các lưới dữ
liệu cho mục đích lưu trữ file cho người sử dụng. Nhờ những ưu điểm của lưới dữ liệu,
hệ thống có một nền tảng công nghệ bảo mật, ổn định và mạnh mẽ.

Sinh viên Đào Hải Hưng – lớp Hệ thống thông tin – K50 82

Xừy dựng và quản lý tầng lưu trữ lưới của hệ thống lưu trữ và chia sẻ dử liệu LINDA

1.2.1.2. Tính trong suốt
Một tính chất quan trọng khác của các hệ phân tán là làm ẩn đi thực tế các quá trình, tài
nguyên nằm trên các máy tính phân tán về địa lý. Một hệ phân tán có khả năng xuất hiện
dưới quan sát của người dùng hay các chương trình ứng dụng khác như một hệ thống
nằm trên một máy tính được gọi là tính trong suốt (transparency).
Khỏi niệm trong suốt trong hệ phân tán có thể áp dụng cho cỏc khía cạnh khỏc nhau của

hệ thống:
• Trong suốt truy cập dữ liệu: dữ liệu được lưu trên các máy
tính khác nhau phải tuân theo định dạng, quy ước dữ
liệu riờng ở từng máy tính cục bộ. Vì trong hệ phân tán, các
máy tính động lập nhau, nên định dạng dữ liệu trên mỗi máy
khác nhau. Hơn nữa, các máy có hệ điều hành khác nhau dẫn
đến cấu trúc cây thư mục và quy ước tên file khỏc nhau.
Một ví dụ khác là các hệ thống Sun SPARC sử dụng big
endian, còn các hệ thống của Intel thì sử dụng little endian.
Quá trình truyềnfile trờn hệ thống LINDA– K49 có thể được
chia thành hai loại:file do người dùng đang upload được lưu
vào một mỏy chủ lưu trữ, và file được lưu trong quá trình
nhân bản. Các quá trình này đòi hỏi sự cộng tác của các máy
khác nhau trong hệ thống, do sử dụng giao thức chuẩn duy
nhất – GridFTP ở tầng lưu trữ lưới, nờn LINDA – K49 đã
đảm bảo được tính trong suốt về truy cập dữ liệu trong hệ
thống.
• Trong suốt định vị: tính chất này chỉ ra rằng vị trí các tài
nguyên của hệ thống là ẩn với người sử dụng. Nói chung, sự
trong suốt về vị trí có thể đạt được nhờ vào việc đặt tên cho
các tài nguyên. Người sử dụng dùng những tên này để ánh xạ
tới tài nguyên mà không quan tâm tới vị trí của tài nguyên. Ví
dụ, để download một file trên hệ thống LINDA – K49, người
sử dụng phải sử dụng một link có
dạng link
này xác định một file duy nhất trên hệ thống mà người dùng
có thể download về máy tính, nhưng không chỉ ra vị trí thực
của file đó nằm ở mỏy chủ và thư mục nào. Như vậy, hệ
thốngLINDA – K49 đó đảm bảo được tính trong suốt vị
trí của quá trình download.

• Trong suốt về vị trí: một tài nguyên có thể chuyển vị trí so
với ban đầu, nhưng sự truy cập tới tài nguyên đó không thay
đổi. Bằng cách sử dụng tên ánh xạ hay tờn logic, ví dụ đường
dẫn tới file có id =
12345là ta
có thể đạt được tính trong suốt vị trí. File có id như trên có thể
được chuyển giữa các mỏy chủ lưu trữ, nhưng quá trình
download hay tìm kiếm file từ người dùng là không đổi.

Sinh viên Đào Hải Hưng – lớp Hệ thống thông tin – K50 17

Xừy dựng và quản lý tầng lưu trữ lưới của hệ thống lưu trữ và chia sẻ dử liệu LINDA

• Trong suốt nhừn bản: nhân bản là một trong những tính chất
quan trọng nhằm tăng tính sẵn sàng của các hệ phân tán. Tính
chất này chỉ ra rằng, mặc dù một filecó thể có các bản sao ở
nhiều nơi khác nhau, hệ thống có thể lựa chọn vị trí tốt nhất
mà người dùng không phải quan tâm tới đó là bản sao nào. Để
đạt được tính chất này, cỏc file phải có tên duy nhất và các bản
sao phải có cùng tên.
Trong hệ thống LINDA – K49, tờn file được lưu trong hệ
thống là tờn của file do người dùng upload. Khi hai người
dùng upload file có cùng tên thìđiều kiện tờnfile duy nhất
không được đảm bảo, do đó hệ thống chưa có tính trong suốt
nhừn bản.
Do hệ thống quản lý file tập trung, tất cả thông tin về file được
quản lý bởi WebServer, nên ta có thể gán cho mỗi file một giỏ
trị id duy nhất. File được lưu trong hệ thống dưới tờn id +
filename sẽ đảm bảo mỗi file trong hệ thống có một tên duy
nhất.

• Trong suốt truy cập đồng thời: Một trong những mục đích
quan trọng của các hệ phân tán là cho phép người dùng chia sẻ
tài nguyên. Một tài nguyên tại một thời điểm có thể được sử
dụng bởi nhiều người dùng. Các tình huống xảy ra tranh chấp
trong LINDA– K49 như khi hai người dùng upload file có
cùng một tên, hay khi người sở hữu một file xúa file trong
khi file đó đang được chia sẻ và sử dụng bởi người dùng
khỏc… Hiện nay hệ thống tập trung vào file có nội dung cố
định, trong tương lai khi cung cấp thêm các dịch vụ thay đổi
nội dung file trong hệ thống, cần phải xem xét sự nhất quán
giữa các nhân bản và quá trình tương tranh xảy ra khi hai
người dùng cùng thay đổi một file.
• Trong suốt về lỗi: hệ thống vẫn hoạt động bình thường khi có
sự cố xảy ra trên một số máy tính. Đây là một trong những
mục tiêu rất khó đạt được trên hệ phân tán, để đạt được một hệ
thống có tình chịu lỗi cao, hệ thống phải được thiết kế cho tất
cả các lỗi có thể xảy ra.
Đây là một tính chất quyết định tới chất lượng dịch vụ của hệ thống. Hệ thống cần được
thiết kế với một module quản lý tài nguyên hiệu quả, có khả năng phát hiện được các lỗi
xảy. Hệ thống LINDA– k49 hiệntạichưacómodulequảnlýtàinguyên nên chưa đảm bảo
được tính trong suốt về lỗi.

Sinh viên Đào Hải Hưng – lớp Hệ thống thông tin – K50 18

Xừy dựng và quản lý tầng lưu trữ lưới của hệ thống lưu trữ và chia sẻ dử liệu LINDA

1.2.1.3. Tính mở
Tính mở phản ánh tính mềm dẻo của hệ thống. Hệ thống nên được thiết kế dựa trên càng
ít các điều kiện tiền định ban đầu càng tốt. Những thay đổi trong các kiến trúc, các giao
thức của nền tảng công nghệ đang sử dụng cần phải được tính tới. Ngoài ra, tính mở còn

phản ánh khả năng thay đổi về “kích thước”. Nếu một hệ thống có tính mở, người quản
trị dễ dàng thêm vào hoặc bớt đi cách thành phần mà không làm gián đoạn sự hoạt động
của hệ thống.
1. 2. 2. Đỏnh giỏ
Hiện tại, hệ thống LINDA– K49 đó xừy dựng được cỏc chớnh sỏch khỏ hoàn thiện cho
người sử dụng, cỏc cơ chế kiểm soỏt dung lượng, cơ chế hạn chế download/ upload hoạt
động ổn định. Quá trình upload/ download được thực hiện trờn cỏc mỏy chủ tại trung từm
Tớnh toỏn hiệu năng cao nờn đạt tốc độ cao. Tuy nhiên, dựa vào những phân tích về tính
chất của hệ phân tán như đã chỉ ra ở phần trờn, những hạn chế của LINDA – K49 đólàm
giảm chất lượng và khả năng triển khai/ mở rộng của hệ thống:
• Hệ thống chưa có module quản lý Giấy ủy quyền (proxy) nờn
chưa khai thỏc được sức mạnh của cỏc lưới dữ liệu đó được
xừy dựng và hoạt động ổn định.
• Hệ thống không có khả năng triển khai và mở rộng: chưa
cung cấp giao diện thêm các thành phần. Ngoài ra, các tham
số cấu hình được đặt cố định trong mã nguồn nờn hệ thống
không có khả năng triển khai rộng rãi.
• Hệ thống chưa có module kiểm soát tài nguyên: sự thiếu sót
này đã làm cho hệ thống hoạt động không hiểu quả, các
module khác thường xuyờn gặp lỗi.
1.3. Mục tiờu và vị trí của đồ ỏn
1. 3. 1. Mô hình của hệ thống
LINDAcung cấp dịch vụ lưu trữ và chia sẻ file, LINDA hướng tới cỏc chức năng:
• Lưu trữ, chia sẻ dữ liệu.
• Cung cấp cỏc API, webservice cho cỏc chức năng lưu trữ,
chia sẻ cho cỏc ứng dụng khỏc sử dụng hệ thống.
• Cho phép nhiều tổ chức cùng tham gia lưu trữ và chia sẻ
quyền lợi dựa trên các đóng góp.
Hệ thống LINDA bao gồm 2 tầng chính: tầng giao diện giao tiếp người dùng và tầng lưu
trữ lưới


Sinh viên Đào Hải Hưng – lớp Hệ thống thông tin – K50 19

Xừy dựng và quản lý tầng lưu trữ lưới của hệ thống lưu trữ và chia sẻ dử liệu LINDA

Hình 1.1 – Mô hình LINDA
• Tầng giao tiếp người dùng bao gồm các chức năng nhận và
xử lý các yêu cầu của người dùng, sau đó trả lời yêu cầu
người dùng. Người dùng liên hệ với dữ liệu ở tầng dưới thông
qua tầng giao diện này. Giao thức được sử dụng ở tầng giao
tiếp là giao thức HTTP.
• Tầng lưu trữ lưới có nhiệm vụ lưu trữ và quản lý file của
người dùng. Các filecủa người dùng sẽ được lưu trữ trên lưới
và hoàn toàn độc lập với tầng giao diện. Dữ liệu của người
dùng khi lưu trữ trên lưới sẽ tuân theo các chính sách và cơ
chế lưu trữ file trờn lưới.
1.3.2. Cỏch tiếp cận mới cho tầng lưới dữ liệu
Để khai thỏc sức mạnh lưu trữ của cỏc lưới dữ liệu sẵn có, tầng lưu trữ lưới sẽ sử dụng
các hệ thống có sẵn trên cỏc lưới tớnh toỏn. Sự thay đổi này đòi hỏi tầng lưu trữ
lướiphải được thiết kế lại để phù hợp với chính sách bảo mật và cỏc dịch vụ mà cỏc lưới
tớnh toỏn cung cấp.Ngoài ra, do tính chất phân tán của các hệ thống tham gia lưới,
module quản lý tài nguyên phải được thiết kế để không những có khả năng phát hiện các
thành phần lỗi trên hệ thống, mà còn có khả năng thu thập các thông tin trạng thái của các
thành phần.

Sinh viên Đào Hải Hưng – lớp Hệ thống thông tin – K50 82

Xừy dựng và quản lý tầng lưu trữ lưới của hệ thống lưu trữ và chia sẻ dử liệu LINDA

Hình 1. 2 - Cỏc trung từm và viện nghiờn cứu thành viờn tham

gialưới PRAGMA
1. 3. 3. Vị trí của đồ ỏn
Mục đích của đồ ỏnlà xừy dựng và quản lý tầng lưới dữ liệu của LINDA trên các lưới
tính toán có sẵn. Công việc cụ thể bao gồm:
- Xây dựng kiến trúc hệ thống ở tầng lưới dữ liệu.
- Nghiờn cứu cơ chế tạo và quản lý giấy ủy
quyền(proxy) cho cỏc mỏy trờn hệ thống.
- Đề xuất quy trình thêm các thành phần thuộc tầng lưới
dữ liệu của hệ thống.
- Nghiờn cứu và sử dụng thư viện lập trình lưới Java
CoG Kit để sử dụng cỏc dịch vụ lưới trờnweb/servlet.
- Nghiên cứu các mô hình quản lý tài nguyên. Xừy dựng
module quản lý tài nguyờn của LINDAcó khả năng mở
rộng và độc lập với cỏc chớnh sỏch tài nguyờn trờn cỏc
hệ thống tham gia.
- Xừy dựng cơ chế quản lý cỏc dịch vụ đang chạy trờn
hệ thống.
- Tìm hiểu cơ chế kiểm soát tốc độ của giao thức
GridFTP,ỏpdụngtrongchớnhsỏchhạnchếtốcđộdownload
/upload.

Sinh viên Đào Hải Hưng – lớp Hệ thống thông tin – K50 21

Xừy dựng và quản lý tầng lưu trữ lưới của hệ thống lưu trữ và chia sẻ dử liệu LINDA

1.4. Nội dung đồ ỏn
Chương 1: Đặt vấn đề.
Giới thiệu tổng quan về hệ thống LINDA, cỏch tiếp cận giải quyết bài toàn lưu trữ dữ
liệu của hệ thống, trình bày các ưu điểm của nền tảng lưới dữ liệu.
Dựa vào những phừn tớch về tính chất của hệ phân tán, đánh giá các ưu điểm, hạn chế

của hệ thống. Đưa ra cỏch tiếp cận mới cho tầng lưới dữ liệu của hệ thống. Phần cuối
trình bày nội dung của đề tài.
Chương 2: Nền tảng công nghệ
Chương này trình bày cơ bản về các công nghệ sử dụng trong đề tài, từ khái niệm, tới mô
hình lập trình. Phần cuối của chương đưa ra mô hình vật lý và sơ đồ bố trí dịch vụ của hệ
thống. Nội dung chính bao gồm:
- Tớnh toỏn lưới và lưới dữ liệu.
- Bộ công cụ GT4, thư viện Java CoG kit lập trình trên
GT4.
- Giới thiệu lưới PRAGMA.
- Khái niệm và mô hình lập trình cho các dịch vụ trên
lưới: GridFTP, RSL, GRAMJOB.
- Mô hình của hệ thống.
Chương 3: Quản lý giấy ủy quyền cho cỏc Headnode
Chương này xừy dựng module quản lý giấy ủy quyền (proxy) cho Headnode. Bắt đầu từ
việc tìm hiểunhững yêu cầu cần phải có proxy, giới thiệu mô hình và cách sử dụng dịch
vụ MyProxy trong LINDA. Phần cuối chương trình bày những phân tích và thiết kế
module quản lý giấy ủy quyền trên các Headnode.

Chương 4: Quy trình thêm các thành phần cho hệ thống LINDA
Nhằm cung cấp khả năng mở rộng và triển khai của hệ thống, chương này phừn tớch và
thiết kếquy trình bổ sung cỏc mỏy chủ thành Headnode và Datanode cho LINDA.
Chương 5: Quản lý tài nguyờn ở tầng lưới dữ liệu cho LINDA
Chương 5 xỏc định những tài nguyờn cần phải quản lý trờn hệ
thống.Nghiêncứucácmôhìnhquảnlýtàinguyêntrênlưới.Đưaranhữngyêucầuchomodulequảnl
ýtàinguyên.CuốicùnglàphântíchvàthiếtkếmodulenàychoLINDA.

Sinh viên Đào Hải Hưng – lớp Hệ thống thông tin – K50 22

Xừy dựng và quản lý tầng lưu trữ lưới của hệ thống lưu trữ và chia sẻ dử liệu LINDA


Chương 6: Kiểm soỏt tốc độ truyền file của hệ thống
Dựa trờn những nghiờn cứu ảnh hưởng của kích thước bộ đờm dữ liệu và số luồng TCP
tới tốc độ truyền file của giao thức GridFTP, việc lựa chọn giỏ trị độ lớn của bộ đệm dữ
liệu và số luồng TCP sẽ giúp hệ thống có khả năng kiểm soát tốc độ download/ upload
hay nhân bản file.
Chương 7: Kết luận và hướng phỏt triển.
Trình bày kết quả đồ án đã đạt được. Đưa ra phương hướng phát triển cho đề tài.















CHƯƠNG 2–NỀN TẢNG CễNG NGHỆ
Chương trước đã trình bày tổng quan về dịch vụ lưu trữ và chia sẻ dữ liệu dựa trên công
nghệ lưới. Đồng thời cũng đã phân tích nhiều khía cạnh mà mỗi hệ thống phân tán cần
phải đỏp ứng để có thể hoạt động ổn định và tối ưu. Để đưa ra giải phỏp cho những yờu
cầu mà hệ thống LINDA cần phải đảm bảo, trước tiên chúng ta xem xột những công
nghệ được sử dụng trong đề tài. Phần cuối chương sẽ đưa ra mô hình của hệ thống.


Sinh viên Đào Hải Hưng – lớp Hệ thống thông tin – K50 82

Xừy dựng và quản lý tầng lưu trữ lưới của hệ thống lưu trữ và chia sẻ dử liệu LINDA

2.1. Lưới dữ liệu
2.1.1. Bối cảnh ra đời
Lưới dữ liệu ra đời trong bối cảnh các ứng dụng khoa học trong rất nhiều lĩnh vực khác
nhau như vật lí năng lượng cao, mô hình húa phân tử, và khoa học trái đất đã tạo ra một
lượng lớn các bộ dữ liệu từ việc mô phỏng hay từ các thí nghiệm qui mô lớn. Việc phân
tích các bộ dữ liệu này cũng như lan truyền nú giữa các nhà khoa học ở nhiều nơi khác
nhau đòi hỏi những tài nguyên mạnh như siêu máy tính, mạng băng thông rộng, và các hệ
thống kho chứa lớn.
Sự kết hợp của kích cỡ bộ dữ liệu lớn, sự phân tán địa lí của người dùng cũng như tài
nguyên, và yờu cầu cần tớnh toỏn trờn bộ dữ liệu lớn đặt ra các yêu cầu về độ phức tạp
và hiệu năng khắt khe mà không có một hạ tầng quản lí dữ liệu nào hiện có đáp ứng
được. Một cộng đồng khoa học lớn có thể tạo ra nhiều truy vấn, mỗi truy vấn có thể là
truy nhập tới hàng gigabyte hay terabyte dữ liệu. Để sự thực thi những truy vấn đó hiệu
quả và tin cậy đòi hỏi việc quản lí một cách cẩn thận các cache cỡ terabyte, hàng gigabyte
dữ liệu truyền trên mạng WAN, đồng lập lịch cho cả dữ liệu và tính toán siêu máy tính,
ước lượng hiệu năng chính xác để định hướng việc chọn lựa bộ dữ liệu nhân bản, và các
kĩ thuật khác nhằm tối ưu việc sử dụng kho dữ liệu lớn, mạng, và các tài nguyên tính
toán.
Trong bối cảnh đó, lưới dữ liệu ra đời trên nền tảng của công nghệ tính toán lưới, đáp ứng
được những yêu cầu đã kể trên. Do vậy, lưới dữ liệu đã trở thành sự lựa chọn tối ưu cho
rất nhiều các tổ chức uy tín hàng đầu trong các lĩnh vực nghiên cứu khoa học.
2.1.2. Khỏi niệm về lưới dữ liệu
Một lưới dữ liệu cung cấp các dịch vụ giúp người dùng có thể tìm kiếm, truyền, và sử
dụng các bộ dữ liệu lớn trên các kho chứa phân tán và tạo ra và quản lí các bản sao của
những bộ dữ liệu này. Ở mức cơ bản nhất, một lưới dữ liệu cung cấp 2 chức năng: một cơ
chế truyền dữ liệu tin cậy, hiệu năng cao, và một cơ chế quản lí và tìm kiếm bản sao mềm

dẻo.Tựy thuộc vào các yêu cầu ứng dụng, các dịch vụ khác có thể được cung cấp thêm
vào. Ví dụ là việc quản lí nhất quán cho các bản sao, quản lí siêu dữ liệu và bộ lọc dữ
liệu, cũng như các cơ chế qui tập. Tất cả các hoạt động trong một lưới dữ liệu được chêm
một lớp bảo mật để quản lí chứng thực các thực thể và đảm bảo sự tiếp nối chỉ những
hoạt động đã được chứng quyền


Sinh viên Đào Hải Hưng – lớp Hệ thống thông tin – K50 23

Xừy dựng và quản lý tầng lưu trữ lưới của hệ thống lưu trữ và chia sẻ dử liệu LINDA

Hình 2. 1 - Tổng quan một lưới dữ liệu
Hình vẽtrình bày lưới dữ liệu nhìn ở mức khái quát bao gồm các tài nguyên tính toán
ởcỏc tổ chức khỏc nhau được kết nối qua một mạng tốc độ cao. Đường nột đậm là
mạngcó băng thông cao nối các trung tâm chính, và đường nét mảnh là các mạng băng
thông thấp nối trung tâm dữ liệu với hệ thống phụ trợ cho nú.
Một lưới dữ liệu, vì vậy, cung cấp một nền tảng thông qua đó người dùng có thể truy
nhập các tài nguyên mạng, tính toán và kho chứa được phối kết hợp với nhau để thực thi
các ứng dụng sử dụng bộ dữ liệu lớntrờn cỏc hệ thống ở xa. Nú đưa ra một môi trường
phong phú cho người dùng để phân tích dữ liệu, chia sẻ kết quả với đối tác, và bảo trì
thông tin trạng thái về dữ liệu một cách liền mạch qua các biên giới về vật lí.
2.1.3. Kiến trúc của lưới dữ liệu
Các thành phần của lưới dữ liệu có thể được phân chia dưới dạng một kiến trúc phân cấp
như hình vẽ dưới. Mỗi lớp được xây dựng dựa trên các dịch vụ được đưa ra bởi tầng thấp
hơn cùng với sự tương tác và phối hợp giữa các thành phần trong cùng một lớp. Chúng ta
có thể mô tả các lớp từ thấp đến cao như sau:
• Lớp cơ sở: bao gồm cỏc tài nguyờn tớnh toỏn phừn tỏn
(cluster, supercomputer), cỏc tài nguyờn lưu trữ, và cỏc tài
nguyờn khỏc (cỏc thiết bị thu thập và sản sinh dữ liệu ) được
kết nối với nhau bởi các mạng băng thông cao.

• Lớp giao
tiếp:baogồmcỏcgiaothứcđượcsửdụngđểtruyvấntàinguyờnởcỏc
lớpcơsởcũngnhưtruyềndữliệugiữacỏclớpcơsởtươngứng.Cỏcgia
othứcnàyđượcxừydựngdựatrờncỏcgiaothứcgiaotiếpnềntảngnh
ưTCP/IPvàcỏcgiaothứcchứngthựcnhưPKI(kiếntrúc khúa công
khai), và SSL.

Sinh viên Đào Hải Hưng – lớp Hệ thống thông tin – K50 25

Xừy dựng và quản lý tầng lưu trữ lưới của hệ thống lưu trữ và chia sẻ dử liệu LINDA


Hình 2. 2 - Kiến trúc chung của một lưới dữ liệu

• Lớp dịch vụ lưới dữ liệu: cung cấp các dịch vụ quản lí và xử lí
dữ liệu trong một lưới dữ liệu. Các dịch vụ cốt lõi như nhân
bản, khai phá dữ liệu và đệ trình công việc cung cấp sự truy
nhập trong suốt tới các dữ liệu và tính toán phân tán. Các dịch
vụ mức người dùng như môi giới dữ liệu (lựa chọn tài nguyên
dựa trên yêu cầu của ứng dụng và yêu cầu của người dùng), và
quản lí bản sao cung cấp các cơ chế cho phép quản lí tài
nguyên một cách hiệu quả. Các dịch vụ này sẽ cung cấp cho
lớp ứng dụng trên nú giao diện gồm các lệnh trực quan và các
API.
• Lớpứngdụng:lớpứngdụngcungcấpgiaodiệnđểsửdụngcácdịchvụ
đượccungcấpbởimôitrườnglưới.GiaodiệnphổbiếnnhấtlàcácPort
als.Portallàgiaodiệnwebcungcấpsựtruynhậptớicácdịchvụcácứn
gdụngcũngnhưcáctàinguyênmàlướiđưara.Cácgiaodiệnnàylạiđư
ợccấuhìnhvàsửdụngmộtphùhợphướngtớilĩnhvựcmàngườidùng
mongmuốnnhưvậtlínănglượngcao,môhìnhhúakhí thời tiết…


Sinh viên Đào Hải Hưng – lớp Hệ thống thông tin – K50 26

Xừy dựng và quản lý tầng lưu trữ lưới của hệ thống lưu trữ và chia sẻ dử liệu LINDA

2.2. Bộ công cụ Globus Toolkit
2.2.1. Giới thiệu
Globus Toolkit là một bộ công cụ phần mềm sử dụng để xây dựng các hệ thống và ứng
dụng lưới. Bộ công cụ được phát triển bởi cộng đồng Globus Alliance và rất nhiều nhà
phát triển khác trên khắp thế giới. Ngày càng nhiều các dự án và các tổ chức sử dụng
Globus Toolkit để triển khai cho lưới của họ.
Bộ công cụ mã nguồn mở Globus Toolkit hỗ trợ những thành phần cơ bản cho tính toàn
lưới, cho phép người sử dụng có thể chia sẻ sức mạnh của các máy tính, cơ sở dữ liệu và
những thành phần khác một cách bảo mật giữa các doanh nghiệp, tổ chức, các vùng lãnh
thổ mà không mất quyền tự chủ. Bộ công cụ bao gồm các dịch vụ và thư viện cung cấp
các khả năng theo dõi, khai phá, quản lý, tăng cường bảo mật và quản lý tập tin. Ngoài
việc là thành phần quan trọng của các dự án mà tổng kinh phí gần một nửa tỷ đô la trên
toàn thế giới, Globus Toolkit còn được chọn làm tầng nền cho các công ty Công nghệ
thông tin sử dụng để phát triển các ứng dụng thương mại về lưới. Hiện nay, hầu hết các
dự án tính toán lưới như EU DataGrid, GridPhysics Network, Particle Physics Data Grid,
Earth System Grid… đều được triển khai trên nền Globus Toolkit.
Globus Toolkit bao gồm các phần mềm dành cho bảo mật, hạ tầng thông tin, quản lý tài
nguyên, quản lý dữ liệu, giao tiếp, phát hiện lỗi, và khả năng di động. Globus Toolkit
được đóng gói thành một tập hợp các thành phần có thể được sử dụng độc lập, hoặc kết
hợp với nhau để phát triển các ứng dụng.
Các tổ chức có chế độ vận hành riêng, và sự hợp tác giữa các tổ chức luôn gặp trở ngại
do sự không tương thích về tài nguyên như hệ thống lưu trữ, máy tính, mạng. Globus
Toolkit đã gỡ bỏ được chướng ngại đó trong việc kết nối các tổ chức, cho phép người sử
dụng truy cập vào các tài nguyên từ xa một cách trong suốt, giống như họ đang truy cập
vào tài nguyên cục bộ của mình, song cũng cũng cấp khả năng kiểm soát khi người dùng

khác truy cập tài nguyên của mình.
GlobusToolkitđượcpháttriểnthôngquamộtchiếnlượcmãnguồnmởtươngtựnhưpháttriểnhệđi
ềuhànhLinux.Nhờvậy,sảnphẩmđượcquảngbárộngrãivàđượccácmọingườitrênkhắpthếgiớic
ùngpháttriển.

Sinh viên Đào Hải Hưng – lớp Hệ thống thông tin – K50 27

Xừy dựng và quản lý tầng lưu trữ lưới của hệ thống lưu trữ và chia sẻ dử liệu LINDA

Dưới đừy là cỏc sơ đồ cỏc thành phần của Globus Toolkit 4:

Hình 2.3 – Cỏc thành phần của Globus Toolkit 4

Chia theo phương thức vận hành, cấu trúc của bộ Globus Toolkit được chia làm 2 phần:
• Cỏc thành phần dịch vụ web.
• Các thành phần không phải dịch vụ web.

Sinh viên Đào Hải Hưng – lớp Hệ thống thông tin – K50 82

Xừy dựng và quản lý tầng lưu trữ lưới của hệ thống lưu trữ và chia sẻ dử liệu LINDA

• Chia theo chức năng, Globus Toolkit được chia làm 5 thành
phần chính:
• Security: Cỏc dịch vụ và cơ chế bảo mật lưới.
• Data Management: Quản lý việc lưu trữ và truyền tải dữ liệu.
• Execution Management: Quản lý thực thi công việc trên lưới.
• Information Services: Các dịch vụ cung cấp thông tin về hoạt
động của lưới.
• Common Runtime: Các thư viện dùng chung.
Ngoài việc sử dụng các thành phần có sẵn được cung cấp trong Globus Toolkit, đồ án đã

triển khai thêm các chức năng khác phù hợp với đề tài LINDA.
2.2.2. Thư viện lập trình lưới Java Cog Kit
2.2.2.1. Giới thiệu
Java Cog Kit là bộ dụng cụ phỏt triển lưới, ánh xạ giữa công nghệ Java và Globus
Toolkit, cho phép các nhà phát triển xây dựng các ứng dụng lưới bằng ngôn ngữ
java.Java Cog kit được lựa chọn để phỏt triển lưới bởi một số lý do sau đừy:
• Tối đa húa sự năng động, khả năng mở rộng và tái sử dụng
phần mềm
• Ngôn ngữ Java là độc lập hệ điều hành và các nền tảng phát
triển, do vậy nú tương thích với môi trường không đồng nhất
như lưới. Ngoài ra nú cung cấp nhiều thư viện cho phép phát
triển các ứng dụng mạng, các kỹ thuật liên tác JASS, JINI,
CORBA, IIOP…
• Sử dụng cơ sở hạ tầng bảo mật lưới GSI từ Java
2.2.2.2. Kiến trúc của Java Cog Kit
Dưới đây là kiến trúc của Java Cog Kit




Sinh viên Đào Hải Hưng – lớp Hệ thống thông tin – K50 28

Xừy dựng và quản lý tầng lưu trữ lưới của hệ thống lưu trữ và chia sẻ dử liệu LINDA

Hình 2. 4 - Kiến trúc của Java CoG kit

Grid Middleware & Fabric: Đây là tầng thấp nhất trong kiến trúc, chứa tất cả
các gói để giao tiếp với các dịch vụ và các tài nguyên. Hiện tại Java Cog Kit cung
cấp một số dịch vụ cơ bản sau đây:
• An toàn và bảo mật (GSI).

• Đệ trình và theo dõi các công việc thực thi từ xa (GRAM).
• Đánh giá chất lượng dịch vụ (GARA).
• Dịch vụ truyền file bảo mật (GSIFTP)
• Dịch vụ tra cứu thông tin (MDS)
• Dịch vụ lưu trữ giấy ủy nhiệm (MyProxy)
Các thành phần giao diện lưới mức thấp (Low-Level Grid Interface
Components): ánh xạ tới các dịch vụ lưới hay sử dụng, được xây dựng bằng
công nghệ Java Bean và Enterprise Java Bean.
Các thành phần tiện ích mức thấp (Low-Level Utility Components): cung cấp
các tiện ích mức thấp cho phép tăng hiệu quả trong việc liên kết các thành phần
Globus Toolkit được cài đặt bằng ngôn ngữ C.
Các thành phần giao diện mức thấp (Low-Level GUI Components): cung cấp

Sinh viên Đào Hải Hưng – lớp Hệ thống thông tin – K50 29

Xừy dựng và quản lý tầng lưu trữ lưới của hệ thống lưu trữ và chia sẻ dử liệu LINDA

tập các thành phần giao diện mức thấp có khả năng tái sử dụng như: bộ soạn
thảo LDAP, RSL, trình duyệt LDAP,

×