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”
Trang 1HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG KHOA CÔNG NGHỆ THÔNG TIN
BÁO CÁO
THỰC TẬP TỐT NGHIỆP
Nội dung:Tìm hiểu về công nghệ Gird
Computing và ứng dụng
Nơi thực tập : Viện CNTT&TT-CDIT
Người hướng dẫn : Cô Lê Thị Hà
Người báo cáo : S.v Phạm Ngọc Dũng
Hànội, Ngày 16 Tháng 7 Năm 2012
Trang 2LỜI CẢM ƠN
Để hoàn thành báo cáo thực tập này không thể thiếu sự hỗ trợ của các thầy cô, các
cô chú tại đơn vị thực tập Em xin bày tỏ lòng biết ơn: Ban Giám Hiệu HV CN BC-VTgiới thiệu em đến cơ quan thực tập là trung tâm công nghệ CDIT và Ban Giám Đốc trungtâm CDIT đã đồng ý cho em thực tập tại trung tâm
Xin gửi lời cảm ơn sâu sắc nhất tới Cô Lê Thị Hà, người đã tận tình hướng dẫn,giúp đỡ em hoàn thành báo cáo này Xin chân thành cảm ơn các Thầy cô giáo trong KhoaCNTT I - Học viện Công nghệ bưu chính viễn thông - những người đã trang bị cho emnhững kiến thức quý báu trong quá trình học tập
Với thời gian thực tập tại trung tâm có hạn, với sự hướng dẫn nhiệt tình của cán bộ
kỹ thuật tại Trung tâm em đã cố gắng tìm hiểu về đề tài thực tâp đã được giao, củng cốthêm kiến thức thực tế cho bản thân, em mong muốn rằng được sự chỉ bảo của các thầy côtrong bộ môn em sẽ có kiến thức vững vàng hơn để phục vụ tốt cho công việc sau này
Do trình độ còn nhiều hạn chế, nên Báo cáo của em chưa phản ánh được đầy đủ,chính xác các nội dung như mong muốn và chắc chắn không tránh khỏi những thiếu sót
Em rất mong các thầy cô giáo và các bạn đóng góp ý kiến để Báo cáo của em được đầy đủ
và hoàn thiện hơn
Trang 3MỤC LỤC
LỜI CẢM ƠN _2 Phần A : GIỚI THIỆU ĐƠN VỊ THỰC TẬP 6
3 Tìm hiểu phân loại Grid và Grid potology. _14 3.1 Các kiểu Gird computing _14 3.1.1 Gird tính toán (Computation Gird) _14 3.1.2 Gird dữ liệu (Data Gird) 15 3.1.3 Scavenging Gird _15 3.2 Đồ hình Gird (Gird potology) _15 3.2.1 SimpleGird _16 3.2.2 IntraGird 17 3.2.3 ExtraGird 17 3.2.4 InterGird 18
4 Các thách thức ,yêu cầu của công nghệ Gird Computing _18 4.1 Quản lý tài nguyên 19 1.Tài nguyên thuộc nhiều vùng quản trị khác nhau 19
2 Tài nguyên đa dạng hỗn tạp _19
3 Việc tồn tại của tài nguyên trong Grid thay đổi theo thời gian _20 4.Vấn đề phối hợp cấp phát tài nguyên 20
5 Vấn đề điều khiển trực tuyến, theo thời gian thực (online) 20 4.2 Bảo mật _21 l.Đăng nhập một lần (Single sign-on) 21 2.Cho phép ủy quyền _21 3.Có khả năng tích hợp được với các chính sách bảo mật cục bộ _21
Trang 44.Sử dụng các quan hệ tin cậy lẫn nhau dựa theo người dùng 21 5.Hỗ trợ bảo mật liên lạc nhóm _21 6.Đảm bảo tính riêng tư _21 7.Cho phép có nhiều cài đặt khác nhau 22 4.3 Quản lý thông tin _22 4.4 Quản lý dữ liệu _22 4.5 Phát triển ứng dụng _23
5 Ích lợi và ứng dụng _23 1.Khai thác, tận dụng các tài nguyên nhàn rỗi. 23
2 Sử dụng CPU song song _24 3.Cho phép hợp tác trên toàn thế giới _24 4.Cho phép chia sẻ, sử dụng tất cả các loại tài nguyên 24 5.Tăng tính tin cậy cho các hệ thống máy tính. 24 6.Tăng khả năng quản trị các hệ thống 25 III Giới thiệu về bộ Globus Toolkit 4.0 25
1 Tổng quan về Globus Toolkit 4.0 _25
2 Các thành phần thường trực _25 2.1 Java WS core _26 2.2 C WS Core _26 2.3 Python WC Core 26
3 Các thành phần bảo mật 26 3.1 Thẩm định và cấp phép WS 27 3.2 Thẩm định và cấp phép Pre – WS _27 3.3 Dịch vụ cấp phép cộng đồng 27 3.4 Dịch vụ ủy quyền _27 3.5 SimpleCA 27 3.6 GSI Open-SSH _27
4 Các thành phần quản lý dữ liệu 27 4.1 GirdFPT 28 4.2 Truyền tệp tin cậy _28 4.3 Dịch vụ mô hình hóa địa chỉ 29 4.4 Dịch vụ sao lưu dữ liệu _29 4.5 Các dịch vụ kiểm tra và khám phá thông tin _29 4.6 Index Service _30
5 Các thành phàn thi hành 30 5.1 WS GRAM 30
IV Phát triển và cài đặt Globus Toolkit 4.0 30
1 Download Globus Toolkit 4.0 30
2 Cài đặt Globus Toolkit 4.0 _31 2.1 Cài đặt cá phần mềm cho Globus Toolkit 4.0 31 2.2 Cấu hình môi trường linux cho Globus Tookit 4.0 31 2.3 Cài đặt Globus Tookit 4.0 33
3 Cấu hình và thử nghiệm môi trường Gird 33 3.1 Cấu hình các biến môi trường _33 3.2 Cấu hình bảo mật _34
Trang 53.3 Cấu hình Java WS Core 37 3.4 Cấu hình và kiểm tra GirdFPT 37
VI Lời kết 50
Tài liệu tham khảo _50
Trang 6Phần A : GIỚI THIỆU ĐƠN VỊ THỰC TẬP
1 1) Trung tâm Nghiên cứu Phát triển Phần mềm thuộc Viện KHKT Bưu điện
2 2) Trung tâm Đào tạo Phát triển Phần mềm thuộc Trung tâm Đào tạo BCVT1 (cũ)
II Chức năng và lĩnh vực hoạt động
Trung tâm Công nghệ Thông tin CDIT có nhiệm vụ: nghiên cứu, phát triển, triển khai sảnphẩm, chuyển giao công nghệ và đào tạo trong lĩnh vực Công nghệ Thông tin phục vụ Ngành Bưuchính Viễn thông và xã hội.Các chức năng chính 1 Nghiên cứu khoa học công nghệ; 2 Phát triển,triển khai công nghệ và sản phẩm; 3 Sản xuất phần mềm và thiết bị; 4 Tiếp nhận và chuyển giaocông nghệ; 5 Đào tạo và bồi dưỡng nhân lực
III Tổ chức
Trang 7
Địa chỉ liên hệ: Khu 5 Thị Trấn Kim Tân Thạch Thành Thanh Hóa
Điện thoại: 097595120 E-mail: dungpn195@gmail.com
Đơn vị thực tập tốt nghiệp: VIỆN CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG\ CDIT
Người hướng dẫn trực tiếp: Lê Thị Hà Chức vụ: Nghiên cứu viên
Chủ đề: Tìm hiểu về Công nghệ Gird Computing và ứng dụng
2 Tìm hiểu tổng quan về Grid
Computing
Từ ngày 11/6 đến ngày 24/6
- Giới thiệu tổng quan về Grid computing
- Lợi ích của Grid computing
3 Tìm hiểu phân loại Grid và
Grid potology Từ ngày 25/6 đếnngày 30/6
Các kiểu Grid,đồ hình grid
- ích lợi và ứng dụng grid
_Kiến trúc Grid và chuẩ hóa grid
-4 Giới thiệu về bộ Globus Toolkit
4.0
Từ ngày 1/7 đến ngày 8/7
- Các công nghệ chuẩn liên quan
- Kiến trúc của Globus Toolkit 4.0
- Các thành phần
Trang 85 Phát triển ứng dụng Globus
Toolkit 4.0
Từ ngày 9/7 đến ngày 15/7
-Triển khai cài đặt
hệ thống
6 Phân tích thiết kế,cài đặt thử
nghiệm ứng dụng
Từ ngày 15/7 đến ngày 22/7
7 Viết báo cáo thực tập Từ ngày 23/7 đến
ngày 29/7
Tổng hợp tài liệubáo cáo
II Tổng quan về công nghệ Grid Computing
Mở Đầu
Hiện nay, Mạng lưới tính toán (Grid Computing) đang là “điểm nóng” công nghệ trên cácdiễn đàn công nghệ thông tin trên khắp thế giới Trên thế giới, công nghệ Grid (GridTechnologies) đang được giới khoa học – công nghệ nghiên cứu, phát triển sôi nổi GridComputing hiện đang là nền tảng công nghệ chủ đạo của mạng Internet thế hệ mới, giữ vai trògiống như giao thức TCP/IP đối với mạng Internet hiện nay
Ở Việt Nam hiện nay, Grid Computing đang còn là một vấn đề khá mới mẻ Đã có một sốnhóm, tổ chức nghiên cứu về Grid Computing, tuy quy mô và điều kiện nghiên cứu còn rất hạnchế Nhận thấy những ý nghĩa thiết thực của Grid Computing có thể mang lại trong tương lai,nhóm sinh viên chúng tôi quyết định đi vào nghiêu cứu Grid Computing về công nghệ và pháttriển ứng dụng mang tính thực tiễn trong cuộc sống
Các chương trình chạy trên môi truờng mạng lưới có một số ưu điểm nổi trội hơn so vớicác chương trình chạy trên máy tính thông thường Chẳng hạn như: thời gian xử lý công việc ngắnhơn nhờ khả năng tính toán song song, hiệu suất sử dụng tài nguyên tính toán cao hơn nhờ khảnăng phân tán tài nguyên v.v
1.Gird Computing là gì?
Có nhiều cách khác nhau để định nghĩa thế nào là Mạng tính toán lưới (Grid Computing)
Để có thể hình dung Grid Computing là gì, chúng ta có thể tưởng tượng nó như một mạng lướiđiện mà mọi người chỉ cần cắm phích điện vào để sử dụng mà không cần biết nguồn điện từ đâuđến.Tương tự như vậy, trong Grid Computing, một người dùng nào đó có thể truy nhập vào cáctài nguyên (bao gồm: bộ xử lý, ổ lưu trữ, dữ liệu ) mà không cần biết các tài nguyên này nằm ởđâu, chúng dùng công nghệ gì, cấu hình phần cứng như thế nào,.v.v
Grid computing đã phải trải qua nhiều công đoạn hợp nhất các công nghệ và 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ínhtoá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òngọ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àicô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ảomật,.v.v
Trang 9Sự ả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àophạ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 đếnphứ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ị và chương trình Tiếp đến là hệ thống hỗnhợ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 dưới đây 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.
2 Lợi ích của Gird Computing
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ươngtrì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ôngviệ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ínhtoá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ụngcác tài nguyên
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ờ Gridcomputing 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ànhmột tài nguyên lưu trữ ảo trọng mạng
Hình 1: Sự ảo hóa với nhiều cấp độ
Trang 102.2 Khả năng xử lý song song
Khả năng kết hợp nhiều CPU cùng xử lý song song là một tính năng hấp dẫn của Gridcomputing
Các chương trình chạy trên môi trường Grid sử dụng các thuật toán để phân chia công việc
xử lý thành nhiều thành phần độc lập Mỗi CPU trên mỗi máy tính trong mạng đảm nhận việc xử
lý một hay nhiều thành phần đó Tính độc lập của các thành phần càng cao thì chương trình càng
dễ dàng được mở rộng trên phạm vi mạng lưới nhiều máy tính hơn Một mạng lưới được gọi làhoàn hảo nếu với mười máy tính, tốc độ xử lý của mạng tăng lên gấp mười Tuy nhiên, trên thực
tế không có mạng lưới hoàn hảo
Có hai lí do chính để mạng lưới trên thực tế không thể trở thành hoàn hảo Thứ nhất là:việc sử dụng thuật toán phân chia công việc ảnh hưởng lớn đến hiệu năng tính toán chung củamạng Thứ hai là: các thành phần của công việc không hoàn toàn độc lập với nhau
Không phải ứng dụng nào cũng có thể chuyển đổi để Grid có thể xử lý song song Hơn nữa,không có một công cụ nào có thể chuyển đổi một ứng dụng bất kỳ sang dạng chạy song song trêngrid Khả năng xử lý song song của một chương trình trên mạng lưới phụ thuộc vào người thiết
kế, và đó không phải là công việc đơn giản
2.3 Sự cộng tác các tài nguyên ảo và tổ chức ảo
Một khả năng khác của grid computing là tạo nên môi trường cộng tác rộng lớn, đồng nhất.Mỗi môi trường đó được gọi là một tổ chức ảo Grid computing thậm chí có khả năng tạo nên mộtmôi trường rộng lớn hơn bằng cách kết hợp các tổ chức ảo, không đồng nhất với nhau để cùngcộng tác với nhau Hình 2 mô tả môi trường không đồng nhất đó Mỗi người sử dụng mạng lướiđược phân bổ vào một tổ chức ảo nào đó Các tổ chức ảo này có thể chia sẻ tài nguyên với nhaunhư một mạng lưới lớn
Chia sẻ tài nguyên bắt đầu với dữ liệu dạng tệp hay cơ sở dữ liệu Lưới dữ liệu có thể mởrộng dữ liệu theo nhiều cách khác nhau Đầu tiên, tệp hay cơ sở dữ liệu có thể được trải rộng trênnhiều hệ thống tạo nên dung lượng lớn hơn rất nhiều so với hệ thống đơn Cách trải dữ liệu này cóthể tăng tốc độ truyền dữ liệu với công nghệ striping Dữ liệu thường xuyên được sao lưu phục vụcho việc khôi phục dữ liệu
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àinguyê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 đượccác vấn đề về ưu tiên, bảo mật,
Trang 11Hình 2: Mạng grid ảo không đồng nhất
2.4 Sự truy cập tớ 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ệutì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 Internetkhông phụ thuộc nhau Trong 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ăngthô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êucầ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
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 chocá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ườnghợp quá tải về xử lý, tính toán trong một tổ chức Chức năng cân bằng có thể được thực theo 2cách sau:
Trang 12Đôi khi có những công việc đột ngột được tăng độ ưu tiên do cần hoàn thành gấp Grid không thể
xử lý được những công việc cần hoàn thành quá gấp Tuy nhiên grid có thể phân chia nó thànhnhiều công việc nhỏ và huy động một lượng lớn tài nguyên để xử lý nó một cách nhanh nhất
Hình 3: Công việc được chuyển đến phần ít bận hơn trong mạng
Một lợi ích khác khi dùng grid là cân bằng tải Khi một công việc liên lạc với một côngviệc khác, với Internet, hoặc các tài nguyên khác, Grid có thể lập lịch cho chúng để có thể giảmthiểu tối đa lưu lượng đường truyền cũng như khoảng cách truyền Điều này giúp Grid có thểgiảm thiểu tắc nghẽn mạng
Cuối cùng, Grid còn có khả năng thương mại tài nguyên Các trạng thái của tất cả các tàinguyên trong mạng được Grid quản lý Các tổ chức trên grid có thể tạo tài khoản và trả tiền để sửdụng các tài nguyên này khi cần thiết Điều này tạo nên tài chính mạng lưới
2.6 Độ tin cậy
Những hệ thống tính toán mạnh sử dụng phần cứng đắt tiền để tăng độ tin cậy Chúng sửdụng bộ xử lý kép để khi hỏng hóc có thể thay thế bộ xử lý thứ hai mà không cần tắt hệ thống.Các nguồn và hệ thống làm mát cũng đều được nhân bản Hệ thống còn sử dụng một nguồn đặcbiệt có thể phát điện khi nguồn điện bị mất Tất cả chúng tạo nên một hệ thống tin cậy, tuy nhiên,giá thành cho hệ thống này rất cao
Trong tương lại, một mạng lưới có thể có khả năng thay thế một hệ thống đáng tin cậy nhưthế Grid mới chỉ bắt đầu công nghệ này Mô hình máy chủ đáng tin cậy sử dụng Grid có thể được
mô tả như sau Một mạng lưới gồm nhiều máy tính được phân bố khắp nới Do đó, khi có một sự
cố tại một nốt mạng nào đó trên mạng lưới, các điểm khác sẽ không bị ảnh hưởng Khi một máytính bị hỏng hóc, phần mềm quản lý trong Grid có thể tự động chuyển công việc xử lý từ máy nàyđến một máy nào đó trong mạng Trong trường hợp quan trọng, nhiều bản sao của công việc đượctạ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
Trang 13lý 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êmnhữ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
Trang 14
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
3 Tìm hiểu phân loại Grid và Grid potology.
3.1 Các kiểu Gird computing
Công nghệ Grid Computing có thể được sử dụng theo nhiều cách khác nhau để giải quyếtcác loại yêu cầu ứng dụng Thông thường Grid được phân loại bởi kiểu của ứng dụng cần giảiquyết Có 3 loại Grid như trình bày dưới đây Tuy nhiên không có ranh giới phân biệt rõ rànggiữa các loại Grid và trong thực tế, các giải pháp Grid thường là sự kết hợp 2 hay nhiều loại khácnhau
3.1.1 Gird tính toán (Computation Gird)
Loại Grid này tập trung chủ yếu vào việc sử dụng năng lực tính toán Ở dạng Grid này,phần lớn các node là các máy tính hay các nhóm máy tính(cluster) có năng lực xử lý, tính toán rấtlớn
Hình thức thực hiện là chia tác vụ tính toán lớn thành nhiều công việc nhỏ thực thi songsong trên các node của Grid Việc phân tán các tác vụ tính toán trong Grid sẽ làm giảm rất đáng
kể toàn bộ thời gian xử lý và tăng khả năng tận dụng hệ thống Thông thường một hệ thống chính
sẽ chia khối dữ liệu cần xử lý thành các phần nhỏ, sau đó phân phối đến các node trên Grid Mỗinode sẽ thực hiện xử lý dữ liệu và trả kết quả về hệ thống chính để hệ này tổng hợp và trình diễnkết quả toàn cục cho người dùng Hình 6 minh họa quá trình này
Trang 15
Hình 6: Hình thức hoạt động của Grid Tính toán
3.1.2 Gird dữ liệu (Data Gird)
Ở đây, không gian lưu trữ là tài nguyên Một Grid Dữ liệu chịu trách nhiệm lưu trữ và cungcấp khả năng truy cập dữ liệu cho nhiều tổ chức khác nhau Người dùng không cần biết chính xác
vị trí dữ liệu khi thao tác với dữ liệu
Các cơ sở dữ liệu, đặc biệt các cơ sở dữ liệu liên hợp, đóng vai trò quan trọng trong cácGrid Dữ liệu, nhất là khi có nhiều nguồn dữ liệu và xuất hiện nhu cầu kết hợp các thông tin từ cácnguồn dữ liệu này
Các Gird Dữ liệu có thể được sử dụng trong lĩnh vực khai thác dữ liệu(data mining) hoặccác hệ thống thương mại thông minh Trong trường hợp này, không chỉ có hệ thống file hay các
cơ sở dữ liệu mà toàn bộ dữ liệu của tổ chức cần tập hợp lại Ở đây có thể phải kết hợp giữa Grid
Dữ liệu và Grid Tính toán
3.1.3 Scavenging Gird
Một Scavenging Grid thường được dùng với một lượng lớn các máy tính để bàn Các máytính thường được kiểm tra định kỳ để xem khi nào bộ xử lý và các tài nguyên khác rảnh rỗi đểthực hiện các tác vụ Grid Chủ nhân của máy để bàn thường có quyền xác định khi nào thì chia sẻchiếc máy của mình
3.2 Đồ hình Gird (Gird potology)
Grid có thể được xây dựng theo nhiều kích cỡ khác nhau, từ một nhóm vài máy tính đặttrong một phòng ban đến hàng trăm nhóm máy tính tổ chức theo kiểu phân cấp trải rộng khắp thếgiới Đồ hình Grid đơn giản nhất là SimpleGrid, chỉ bao gồm một số máy tính đồng nhất ở cùngmột vị trí Độ phức tạp của đồ hình Grid tương ứng với số lượng tổ chức tham gia Grid và các
Trang 16ràng buộc về địa lý Phần này sẽ giới thiệu sơ nét về một số đồ hình Grid cơ bản Hình 7 cho thấy
Trang 17cần các chính sách đặc biệt về quản lý cũng như bảo mật Các máy tính chạy cùng hệ điều hành,cùng kiến trúc phần cứng nên việc chọn các phần mềm ứng dụng khá đơn giản, dễ dàng Đồ hìnhnày khiến người ta liên tưởng đến các cluster hơn là Grid.
3.2.2 IntraGird
Hình 2-5 mô tả một Intra Grid.
Mở rộng hơn một chút so với SimpleGrid là IntraGrid Lúc này xuất hiện các hệ thốngkhông đồng nhất, nhiều loại tài nguyên mới trong Grid Sử dụng cùng một chính sách bảo mật, sửdụng mạng nội bộ để kết nối các hệ thống trong Grid là các đặc tính quan trọng của đồ hình này
Hệ thống Grid cần có các module lập lịch Việc chia sẻ file có thể sử dụng các hệ thống filemạng (network filesytem) Các máy tính tham gia Grid có thể thuộc nhiều phòng ban khác nhaunhưng vẫn trong cùng một tổ chức
Khi Grid mở rộng ra nhiều phòng ban, các chính sách mới về cách sử dụng Grid cần phảiđược xác lập và áp dụng Ví dụ: cần phải có chính sách quy định những công việc nào được thựchiện trên Grid, vào thời điểm nào; độ ưu tiên của các phòng ban,… Bên cạnh đó vấn đề bảo mậtcũng cần được quan tâm, các dữ liệu nhạy cảm của một phòng ban cần được bảo vệ khỏi sự truycập từ các công việc của các phòng ban khác
Các máy tính dành riêng cho Grid bắt đầu được đưa vào để làm tăng chất lượng dịch vụcủa Grid, thay vì phải trông chờ vào các tài nguyên rảnh rỗi
3.2.3 ExtraGird
Vẫn trong cùng một tổ chức, ExtraGrid là sự kết hợp 2 hay nhiều IntraGrid Như trong hình
10, ExtraGrid liên quan đến nhiều vùng quản lý khác nhau, phân tán theo địa lý, sử dụng các kếtnối truy cập từ xa hay WAN, do đó độ phức tạp trong quản lý tăng lên rất nhiều Đối vớiExtraGrid, các tài nguyên mang tính động hơn, Grid cần phải linh động trong việc quản lý các tàinguyên, cần có cơ chế kiểm soát và phục hồi lỗi
Cần có các dịch vụ cung cấp thông tin (information service) để tìm kiếm tài nguyên
Trang 18
có thể truy cập Grid thông qua các kết nối Internet và WAN
Trong dạng Grid này, cấp độ bảo mật cao nhất cần được áp dụng để ngăn ngừa các khảnăng bị tấn công và gián điệp InterGrid cung cấp khả năng trao đổi, mua bán, tìm kiếm tàinguyên ở mức toàn cầu Các tài nguyên có thể được mua từ các nhà cung cấp tin cậy
Hình 11 minh hoạ các InterGrid
Hình 11: Các minh họa về đồ hình InterGrid
4 Các thách thức ,yêu cầu của công nghệ Gird Computing
Trang 194.1 Quản lý tài nguyên
Mục tiêu của công nghệ Grid Computing là chia sẻ, phối hợp, sử dụng hiệu quả nhiều loạitài nguyên đến từ nhiều nguồn khác nhau Để thực hiện được điều đó, cần phải giải quyết cácthách thức và yêu cầu chính sau đây:
1.Tài nguyên thuộc nhiều vùng quản trị khác nhau
Các tài nguyên Grid phân tán theo địa lý qua nhiều vùng quản trị và được sở hữu và quản
lý bởi nhiều tổ chức khác nhau Không thể chờ đợi một sự thống nhất chung về các chính sách sửdụng, chia sẻ, bảo mật giữa các tổ chức Grid cần phải ôn trọng, tương thích với các chính sáchquản trị và sử dụng tài nguyên cục bộ
Cần có một cơ chế chia sẻ có tính mềm dẻo cao, từ mô hình client-server đến peer-to-peer
để kiểm soát chi tiết, chính xác cách sử dụng các tài nguyên chia sẻ, bao gồm kiểm soát truy cập,
ủy quyền, áp dụng các chính sách cục bộ và toàn cục; để chia sẻ nhiều loại tài nguyên khác nhau
từ các chương trình, file, dữ liệu đến các máy tính, sensor,…; và cho nhiều phương thức sử dụngkhác nhau từ đơn người dùng đến đa người dùng, từ hướng hiệu suất đến hướng chi phí, từ đó đưa
ra mô hình chất lượng dịch vụ, lập lịch, phối hợp cấp phát tài nguyên và thanh toán chi phí
Cần có cơ chế dàn xếp việc chia sẻ tài nguyên giữa các bên tham gia (bên cung cấp và bên
sử dụng) hợp lý Việc chia sẻ này phải được quản lý chặt chẽ và đặc tả rõ ràng giữa các bên cungcấp và sử dụng về những gì được chia sẻ, ai được phép chia sẻ, ở điều kiện nào thì việc chia sẻđược thực hiện
2 Tài nguyên đa dạng hỗn tạp
Grid phải quản lý nhiều tài nguyên không đồng nhất về bản chất, sử dụng nhiều công nghệ,các hệ thống quản lý tài nguyên cục bộ khác nhau Ngay cả khi có 2 site cùng sử dụng một côngnghệ, một hệ quản lý tài nguyên cục bộ nhưng có cấu hình khác nhau cũng dẫn đến có các chứcnăng khác nhau
Dưới đây là bảng đặc tính các đối tượng cần quản lý cho thấy sự phức tạp trong quản lý tàinguyên:
Trang 20Bảng 2-1 Các đặc tính của tài nguyên.
3 Việc tồn tại của tài nguyên trong Grid thay đổi theo thời gian
Trong Grid, các tài nguyên có thể xuất hiện hoặc biến mất mà không hề báo trước do nhiềunguyên do khác nhau như lỗi hệ thống, lỗi mạng, các chính sách chia sẻ của nhà cung cấp,…Đâycũng là một thách thức lớn để đảm bảo tính tin cậy của hệ thống Cần có các cơ chế tìm kiếm,xác định tài nguyên, phát hiện và phục hồi lỗi
4.Vấn đề phối hợp cấp phát tài nguyên
Các ứng dụng có nhiều đòi hỏi về tài nguyên mà chỉ có thể đáp ứng bằng cách sử dụngsong song các tài nguyên trên nhiều site khác nhau Các chính sách quản trị cục bộ của các sitecùng với khả năng bị lỗi trong quá trình cấp phát tài nguyên đòi hỏi phải có các cơ chế đặc biệt đểphối hợp cấp phát nhiều tài nguyên, khởi tạo các quá trình tính toán, theo dõi, và quản lý chúngtrên các tài nguyên
5 Vấn đề điều khiển trực tuyến, theo thời gian thực (online)
Cần có cơ chế cho phép thoả thuận sử dụng tài nguyên trong thời gian thực thi để đáp ứngnhu cầu của ứng dụng, nhất là trong trường hợp các yêu cầu và tính chất các tài nguyên thay đổitrong quá trình thực thi
Trang 214.2 Bảo mật
Các hệ thống Grid cần phải cung cấp đầy đủ các chức năng bảo mật truyền thống nhưchứng thực, phân quyền, bảo vệ thông điệp, toàn vẹn dữ liệu, … ngoài ra cần đáp ứng các yêu cầusau:
1.Đăng nhập một lần (Single sign-on)
Một tính toán đơn giản cũng cần phải sử dụng nhiều tài nguyên khác nhau, vì thế nếu cứmỗi lần truy xuất tài nguyên lại cần phải chứng thực người dùng là điều không thực tế và khôngthể chấp nhận được Thay vào đó, hệ thống Grid cần có cơ chế cho phép người dùng chỉ cầnchứng thực một lần mà có thể sử dụng nhiều tài nguyên khác nhau
2.Cho phép ủy quyền
Đây là một yêu cầu quan trọng, để thực hiện được yêu cầu “đăng nhập một lần” thì cầnphải có sự uỷ quyền Người dùng cần có khả năng uỷ quyền cho các chương trình sử dụng cácquyền của mình, để chương trình có thể truy cập đến các tài nguyên được phép khác của ngườidùng Và chương trình, đến lượt nó cũng cần có khả năng ủy quyền cho các chương trình khác
3.Có khả năng tích hợp được với các chính sách bảo mật cục bộ
Mỗi site hoặc nhà cung cấp tài nguyên đều có chính sách bảo mật riêng của mình Do đó,các giải pháp bảo mật trên Grid cần phải liên kết được với các giải pháp cục bộ, không được thaythế toàn bộ các giải pháp này mà cho phép kế thừa, sử dụng lại
4.Sử dụng các quan hệ tin cậy lẫn nhau dựa theo người dùng
Để cho phép người dùng sử dụng kết hợp tài nguyên từ nhiều nhà cung cấp khác nhau, hệthống bảo mật không được yêu cầu các nhà cung cấp phải hợp tác, liên lạc với nhau để thiết lậpmôi trường bảo mật Ví dụ, nếu người dùng có quyền sử dụng 2 site A và B, thì người dùng cũng
có thể sử dụng kết hợp 2 site A, B cùng lúc mà không cần các chuyên gia bảo mật của site A, Bliên lạc với nhau
5.Hỗ trợ bảo mật liên lạc nhóm
Một quá trình tính toán được cấu thành từ nhiều tiến trình khác nhau, những tiến trình nàycần phải liên lạc với nhau theo từng nhóm Các nhóm có thể thay đổi trong suốt quá trình tínhtoán Grid cần có giải pháp để thực hiện bảo mật cho các nhóm này
6.Đảm bảo tính riêng tư
Trang 22Một trong những khả năng của Grid là cho phép xử lý dữ liệu trên máy tính ở xa Từ đâycũng nảy sinh vấn đề cần bảo vệ tính riêng tư của dữ liệu, sao cho các người dùng hay nhà quảntrị trên máy tính ở xa không thể xâm nhập, sử dụng các dữ liệu đang được xử lý trên máy tính củamình.
7.Cho phép có nhiều cài đặt khác nhau
Các giải pháp bảo mật không nên chỉ tập trung vào một cài đặt cụ thể mà nên cài đặt theonhiều công nghệ khác nhau dựa trên một nền tảng chung Điều này đảm bảo tính tương thích vớinhiều hệ thống khác nhau
4.3 Quản lý thông tin
Hệ thống thông tin Grid cần có các cơ chế hỗ trợ việc truy cập, tìm kiếm thông tin cácloại về hệ thống Grid một cách nhanh chóng, chính xác Cần có các chức năng để xác định đặctính phần cứng, phần mềm cũng như các thông tin trạng thái như tải hiện tại và trạng thái hàng đợitrong trường hợp tài nguyên được lập lịch sử dụng và có các cơ chế cung cấp các thông tin nàygần như theo thời gian thực
Hệ thống thông tin cần hỗ trợ theo dõi thông tin của một lượng rất lớn các thành phần, chophép nhiều loại thực thể truy cập, tìm kiếm thông tin trong khi giảm thiểu các chi phí về công sức
và tài nguyên cần thiết để tạo lập, cập nhật các thông tin cả ở từng site lẫn toàn bộ Grid
Một trong những mục tiêu của hệ thống thông tin là đơn giản hoá việc tìm kiếm thông tin
để ra các quyết định sử dụng tài nguyên thích hợp, do đó hệ thống thông tin cần phải được xâydựng theo mô hình dữ liệu đơn nhất (uniform), cung cấp một giao diện chung để truy xuất nhiềuthông tin khác nhau,
Mô hình quản lý thông tin cần đủ bao quát để biểu diễn các cấu trúc thông tin trong môitrường tính toán phân tán Một trong những thách thức là biểu diễn được các thuộc tính liên quanđến nhiều site cùng lúc (ví dụ như : băng thông liên lạc giữa các site)
Do tài nguyên của Grid rất đa dạng, có thể được thêm bớt theo thời gian, do đó khả năngtích hợp thêm các thông tin mới vào hệ thống là rất quan trọng Các hệ hống thông tin Grid cầnphải có khả năng này
Các hệ thống thông tin Grid cần có khả năng phát sinh thông tin từ nhiều guồn khác nhau
để cung cấp các thông tin tổng hợp về hệ thống
Đưa ra các cách thức truy xuất mềm dẻo đến hệ thống thông tin, người dùng cần có khảnăng đọc, cập nhật cùng với khả năng tìm kiếm, định vị thông tin
Hệ thống thông tin chỉ có thể hữu dụng khi nó được triển khai rộng rãi, do đó cần có những
kỹ thuật cho phép cài đặt, triển khai, bảo trì dễ dàng trên các site khác nhau
Cần có mô hình quản lý thông tin phân tán, nên cho phép uỷ quyền tạo lập và quản lýthông tin tài nguyên cho các site
4.4 Quản lý dữ liệu
Cần có mô hình quản lý dữ liệu phân tán, cho phép kết hợp dữ liệu từ nhiều nơi khác nhau,
hệ thống quản lý dữ liệu cần có các cơ chế quản lý sao cho có thể che đi sự phức tạp của dữ liệu,
Trang 23cung cấp cho người dùng cách thức truy cập đơn giản, hiệu quả thông qua một giao diện chung
mà không cần biết đến vị trí của dữ liệu
Cho phép sắp xếp các vị trí dữ liệu và có cơ chế lập lịch truy xuất dữ liệu tối ưu nhằm nângcao hiệu suất của Grid
Cần có cơ chế di chuyển dữ liệu đến nơi xử lý mà không tạo ra hiệu ứng cổ chai trong hệthống mạng hoặc các vấn đề về truy xuất dữ liệu khác
Cần có các cơ chế truyền file hiệu suất cao, đọc ghi một loạt các file hoặc các chức năngchọn lựa, tinh giảm dữ liệu từ xa, các cơ chế điều khiển việc cấp phát tài nguyên phục vụ truyền
dữ liệu (không gian, băng thông, CPU)
4.5 Phát triển ứng dụng
Việc xây dựng Grid gặp khó khăn hơn nhiều so với các ứng dụng bình thường hiện nay,cần phải đưa ra các mô hình, phương pháp giải quyết các vấn đề như chia sẻ, chia nhỏ, phân tích,
di chuyển , bảo mật, quản lý, dữ liệu, đồng bộ hoá các tiến trình, công việc,… nhằm tận dụng tối
đa khả năng của hệ thống
Cần xây dựng các mô hình, các môi trường lập trình, các bộ công cụ phát triển ứng dụngcho Grid nhằm đơn giản hóa việc phát triển ứng dụng, tạo điều kiện đưa công nghệ GridComputing vào thực tế
5 Ích lợi và ứng dụng
Một số ích lợi khi sử dụng công nghệ Grid Computing
1.Khai thác, tận dụng các tài nguyên nhàn rỗi
Hầu hết các tổ chức đều có một lượng lớn các tài nguyên tính toán nhàn rỗi, các máy tính
cá nhân thường chỉ sử dụng hết 5% thời gian xử lý CPU, ngay cả các server cũng thường “rảnhrỗi” Grid có thể tối ưu sử dụng các tài nguyên nhàn rỗi này theo nhiều cách khác nhau, ví dụ, gửimột công việc trên một máy tính đang bận rộn đến một máy khác rảnh rỗi hơn để xử lý, hoặc phânnhỏ một công việc rồi gửi các công việc con đến các máy tính nhàn rỗi khác cho xử lý song song,
…
Grid cho phép kết hợp nhiều không gian lưu trữ nhàn rỗi để tạo thành một không gian lưutrữ lớn hơn, được cấu hình để tăng hiệu suất, độ tin cậy hơn so với các máy đơn lẻ thông qua các
cơ chế quản lý dữ liệu
Một chức năng của Grid nữa là cân bằng sử dụng tài nguyên tốt hơn Một tổ chức thườnggặp các vấn đề không mong đợi khi các hoạt động đòi hỏi thêm nhiều tài nguyên hơn Với Grid,cóthể chuyển hoạt động đến các tài nguyên nhàn rỗi khác, hoặc có thể thêm các tài nguyên mớimột cách dễ dàng, từ đó làm tăng khả năng chịu đựng của hệ thống Grid có thể quản lý nhiều loạitài nguyên, do đó có hể cho phép theo dõi tổng quan về các hoạt động sử dụng tài nguyên trongcác tổ chức lớn, hỗ trợ hoạch định các chiến lược sử dụng tài nguyên
Trang 242 Sử dụng CPU song song
Khả năng sử dụng các CPU song song là một đặc tính tuyệt vời của Grid, ngoài việc hỗ trợcác nhu cầu tính toán của các nhà khoa học, sức mạnh tính toán do Grid cung cấp có thể giúp giảiquyết các bài toán đòi hỏi năng lực xử lý lớn trong các ngành khác như y dược, tính toán tàichính, kinh tế, khai thác dầu hoả, dự báo thời tiết, công nghiệp vũ trụ, thiết kế sản phẩm, … và rấtnhiều lĩnh vực khác
3.Cho phép hợp tác trên toàn thế giới
Một trong những đóng góp quan trọng của công nghệ Grid Computing là cho phép và đơngiản hoá hợp tác chia sẻ, làm việc giữa một cộng đồng rộng lớn trên toàn thế giới Các công nghệtính toán phân tán trước đây cũng cho phép hợp tác nhưng chỉ trong một phạm vi nhỏ, còn Gridcho phép mở rộng trên phạm vi toàn cầu khi đưa ra những chuẩn quan trọng cho phép các hệthống không đồng dạng làm việc chung với nhau để tạo nên một hệ thống tính toán ảo cung cấprất nhiều dạng tài nguyên khác nhau
4.Cho phép chia sẻ, sử dụng tất cả các loại tài nguyên
Không chỉ cho phép chia sẻ các chu kỳ tính toán, dữ liệu, Grid có thể cho phép chia sẻ tất
cả các loại tài nguyên mà trước đây chưa được chia sẻ, như băng thông mạng, các thiết bị đặcbiệt, phần mềm, bản quyền, các dịch vụ,… Ví dụ, nếu một người dùng muốn tăng băng thông kếtnối Intenet của mình lên để thực hiện một ứng dụng khai thác dữ liệu, ứng dụng đó có thể đượcgửi đến nhiều máy tính trong Grid có các kết nối Internet riêng, từ đó băng thông truy cập Internetcủa anh ta tăng lên rất nhiều lần,…
5.Tăng tính tin cậy cho các hệ thống máy tính
Hiện nay, các hệ thống tính toán sử dụng các phần cứng chuyên dụng, đắt đỏ để tăng độ tincậy Ví dụ, có thể sử dụng các “chip” có các mạch dự phòng để có thể phục hồi lỗi khi có sự cố vềphần cứng Một máy tính có thể sử dụng các bộ vi xử lý đôi, cho phép “cắm nóng”, để khi có một
vi xử lý bị hỏng, có thể thay thế cái khác mà không làm ngưng hoạt động của hệ thống Các giảipháp này làm tăng độ tin cậy của hệ thống, tuy nhiên với chi quá đắt khi phụ kiện đi kèm cũngphải nhân lên
Trong tương lai, các hướng tiếp cận mới để giải quyết vấn đề độ tin cậy dựa nhiều hơn vàocác công nghệ phần mềm hơn là các phần cứng đắt tiền Grid là sự khởi đầu cho các công nghệ
đó Các hệ thống trong Grid thường rẻ và phân tán theo địa lý, do đó, nếu có sự cố về nguồn điệnhay các lỗi hệ thống khác tại một vị trí, toàn bộ phần còn lại không bị ảnh hưởng Các phần mềmquản trị Grid có khả năng thực thi lại công việc trên một node khác khi phát hiện có lỗi hệ thống.Nếu quan trọng hơn nữa, trong các hệ thống theo thời gian thực, nhiều bản dự phòng của các cáccông việc quan trọng có thể được chạy trên nhiều máy tính khác nhau trong Grid để đảm bảo độtin cậy tối đa
Trang 256.Tăng khả năng quản trị các hệ thống
Mục tiêu ảo hoá tất cả các tài nguyên và cung cấp giao diện quản lý đơn nhất các hệ thốnghỗn tạp đem lại những cơ hội mới để quản trị tốt hơn trong các cơ sở hạ tầng công nghệ thông tinlớn, phân tán Bên cạnh đó, đối với tầm quản lý vĩ mô, có nhiều dự án sử dụng cơ sở hạ tầng côngthông tin, Grid cho phép quản lý độ ưu tiên sử dụng tài nguyên của các dự án này Trước đây, mỗi
dự án thường chịu trách nhiệm quản lý một số tài nguyên, thường xảy ra tình trạng các tài nguyêncủa dự án này đang nhàn rỗi trong khi dự án khác đang gặp vấn đề, thiếu tài nguyên do gặp các sựkiện không lường trước Với tầm nhìn rộng hơn do Grid cung cấp, các tình huống trên có thể đượcgiải quyết dễ dàng
Trên đây giới thiệu một số ích lợi khi sử dụng công nghệ Grid Computing, Grid còn manglại rất nhiều lợi ích khác mà không thể kể hết ở đây, tuỳ vào tình huống cụ thể mà đem lại các lợiích khác nhau Vấn đề là phải hiểu rõ bản chất Grid, sử dụng tốt các công cụ nhằm khai khác tốtnhất trong các tình huống cụ thể
III Giới thiệu về bộ Globus Toolkit 4.0
1 Tổng quan về Globus Toolkit 4.0
Bộ công cụ Globus Toolkit 4.0 là tập hợp các thành phần mã nguồn mở, cung cấp nềntảng cho môi trường phát triển và các ứng dụng Grid computing Phiên bản 4 của bộ công cụ làphiên bản đầu tiêu hỗ trợ dịch vụ Web - WSRF (Phiên bản 3 hỗ trợ OGSI, còn phiên bản 2 thìkhông hỗ trợ các chuẩn trên) Và được chia ra hai phần: Một thành phần là nền tảng cho dịch vụWeb, một thành phần là nền tảng cho các dịch vụ khác
Globus Tookit 4.0 cung cấp các thành phần được chia theo các danh mục sau:
2.1 Java WS core