1. Trang chủ
  2. » Kinh Doanh - Tiếp Thị

Tim hieu cong nghe GRID COMPUTING va ung dung thu nghiem tro

231 507 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Header Page of 126 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM KHOA CÔNG NGHỆ THÔNG TIN BỘ MÔN CÔNG NGHỆ PHẦN MỀM W X SINH VIÊN THỰC HIỆN Nguyễn Mạnh Dũng Nguyễn Đăng Thành 0112132 0112280 TÌM HIỂU CÔNG NGHỆ GRID COMPUTING VÀ ỨNG DỤNG THỬ NGHIỆM TRONG BÀI TOÁN QUẢN TRỊ MẠNG LUẬN VĂN CỬ NHÂN TIN HỌC GIÁO VIÊN HƯỚNG DẪN Thầy Cao Đăng Tân TP HỒ CHÍ MINH, 12/2005 Footer Page of 126 Header Page Lời of cảm 126.ơn Lời cảm ơn Nhóm thực xin bày tỏ lòng biết ơn tri ân sâu sắc đến tất người giúp đỡ, hỗ trợ thực luận văn này, điểm mốc quan trọng đời nghiệp chúng em Chúng em xin cảm ơn Khoa Công nghệ Thông tin trường Đại học Khoa học Tự nhiên TP.HCM cho phép tạo điều kiện để chúng em thực luận văn Luận văn hoàn thành giúp đỡ bảo tận tình thầy Cao Đăng Tân, người thầy hướng dẫn chúng em Chúng em xin chân thành biết ơn bảo, định hướng nghiên cứu thực hiện, hỗ trợ, tạo điều kiện tốt cho chúng em suốt trình thực đề tài Chúng xin bày tỏ lòng biết ơn sâu sắc đến Bố, Mẹ, bậc sinh thành chịu thương, chịu khó nuôi dưỡng, hỗ trợ, động viên, ủng hộ chúng lúc khó khăn để chúng có ngày hôm Chúng em xin chân thành cảm ơn tất quý thầy cô khoa Công nghệ Thông tin tận tình bảo, rèn luyện, truyền đạt tri thức, kỹ năng, kinh nghiệm quý báu cho chúng em suốt năm giảng đường đại học Đây hành trang quý giá để chúng em vững bước vào đời Nhóm thực xin chân thành cảm ơn tất anh chị, bạn bè, đặc biệt thầy cô Phòng máy Mạng, thầy Trần Minh Triết, thầy Lu Boun Vinh, nhiệt tình động viên, ủng hộ, chia sẻ kinh nghiệm, kiến thức quý báu, tài liệu, hỗ trợ trình thực luận văn mà suốt thời gian học tập mái trường Mặc dù nỗ lực cố gắng, luận văn chắn không tránh khỏi thiếu sót Chúng em kính mong nhận cảm thông tận tình bảo, góp ý quý Thầy Cô bạn Một lần xin gửi đến tất người lời cảm ơn chân thành Xin cảm ơn ! Nhóm thực Nguyễn Mạnh Dũng & Nguyễn Đăng Thành Footer Page of 126 -i- Header Page Lời of nói 126.đầu Lời nói đầu Công nghệ Grid Computing đời đánh dấu bước phát triển lĩnh vực điện toán hiệu cao Nó cho phép tận dụng lực xử lý, lưu trữ tài nguyên nhàn rỗi khác để cung cấp môi trường tính toán có lực xử lý lớn, khả lưu trữ dồi để giải toán phức tạp - khó giải với công nghệ hành giải với chi phí cao - khoa học, thương mại Grid Computing giúp tận dụng tối đa tài nguyên, tăng cường hợp tác, giảm chi phí đầu tư cung cấp lực tính toán mong muốn Trong năm vừa qua, nhiều tổ chức, tập đoàn công nghệ thông tin lớn chọn công nghệ Grid Computing làm chiến lược phát triển mình, đầu tư nghiên cứu nhằm sớm đưa công nghệ Grid Computing vào thực tế Công nghệ ngày thu hút quan tâm ý từ khắp nơi giới Có thể nói công nghệ Grid Computing xu hướng phát triển ngành công nghệ thông tin Hiện nay, đất nước ta thực công công nghiệp hoá, đại hóa, việc rút ngắn tụt hậu, phát triển khoa học công nghệ yếu tố then chốt định đến thành công công đổi Song song với trình phát triển, ngày có nhiều toán mới, đòi hỏi lực xử lý lớn xuất khoa học, thương mại quản lý đất nước Các công nghệ tính toán hành áp dụng triển khai rộng rãi để giải hết nhu cầu chi phí đầu tư lớn Việc nghiên cứu, áp dụng công nghệ Grid Computing giải pháp tốt để giải tình Hơn nữa, công nghệ Grid Computing mẻ, giai đoạn hoàn thiện, việc tham gia nghiên cứu với cộng đồng giới giúp học hỏi kinh nghiệm, tiến tới làm chủ công nghệ, từ phát triển theo hướng riêng mình, đáp ứng nhu cầu tính toán hiệu cao ngày tăng đất nước Footer Page of 126 - ii - Header Page Lời of nói 126.đầu Với tinh thần tham gia nghiên cứu, học hỏi công nghệ, đề tài luận văn “Tìm hiểu công nghệ Grid Computing ứng dụng thử nghiệm toán quản trị mạng” thực nhằm bước trình nghiên cứu, phát triển, ứng dụng Grid vào thực tế Luận văn nghiên cứu vấn đề chung công nghệ Grid Computing, Globus Toolkit, tiến hành cài đặt môi trường Grid với Globus Toolkit, đề xuất mô hình cài đặt thử nghiệm ứng dụng hỗ trợ quản trị mạng Grid Luận văn trình bày gồm chương với nội dung sau: ‰ Chương Đặt vấn đề : Giới thiệu sơ lược công nghệ Grid Computing lĩnh vực quản trị mạng, đồng thời xác định mục tiêu đề tài ‰ Chương Tổng quan công nghệ Grid Computing : Giới thiệu vấn đề công nghệ Grid Computing, tìm hiểu so sánh phần mềm tảng Grid để có nhìn toàn diện công nghệ Grid Computing ‰ Chương Giới thiệu Globus Toolkit phiên 3.2 : Giới thiệu mô hình chế hoạt động thành phần Globus Toolkit 3.2 Ở không thiên giới thiệu chi tiết triển khai cụ thể, điều tham khảo từ tài liệu hướng dẫn sử dụng ‰ Chương Phát triển ứng dụng với Globus Toolkit 3.2 : Giới thiệu vấn đề cần quan tâm xây dựng ứng dụng Grid với Globus Toolkit 3.2 ‰ Chương Quản trị mạng hệ thống quản trị : Giới thiệu tổng quan lĩnh vực quản trị mạng hệ thống quản trị mạng ‰ Chương Hệ thống quản trị Grid NetManager : Giới thiệu mô hình hệ thống quản trị mạng dựa công nghệ tính toán Grid Computing ‰ Chương Phân tích, thiết kế, cài đặt thử nghiệm ứng dụng Grid NetManager ‰ Chương Kết luận : Là chương cuối luận văn, tóm lại vấn đề nghiên cứu tìm hiểu, đề hướng phát triển tương lai Footer Page of 126 - iii - Header Page Mục of 126 lục Mục lục Lời cảm ơn i Lời nói đầu ii Mục lục iv Danh sách hình .viii Danh sách bảng x Một số thuật ngữ xi Các chữ viết tắt xii Tóm tắt luận văn xiii Chương Mở đầu 1.1 Công nghệ Grid Computing (tính toán lưới) 1.2 Vấn đề quản trị mạng 1.3 Mục tiêu đề tài Chương Tổng quan công nghệ Grid Computing 2.1 Khái niệm Grid 2.1.1 Theo dòng lịch sử 2.1.2 Khái niệm 2.1.3 Tài nguyên Grid 2.2 Phân loại Grid & Grid Topology 2.2.1 Các kiểu Grid 2.2.2 Đồ hình Grid (Grid Topology) 11 2.3 Các thách thức, yêu cầu công nghệ Grid 15 2.3.1 Quản lý tài nguyên (Resource Management) 15 2.3.2 Bảo mật (Security) 17 2.3.3 Quản lý thông tin 19 2.3.4 Quản lý liệu 20 2.3.5 Phát triển ứng dụng 20 2.3.6 Các vấn đề khác 20 2.3.7 Các việc cần làm 21 2.4 Ích lợi & Ứng dụng 22 2.5 Các thành phần hệ thống sở hạ tầng Grid 24 2.6 Kiến trúc Grid 27 2.6.1 Bản chất Kiến trúc Grid 27 2.6.2 Chi tiết Kiến trúc Grid tổng quát 28 2.6.3 Kiến trúc Grid thực tế 35 2.7 Chuẩn hoá Grid 36 2.8 Giới thiệu dự án Grid middleware 40 2.8.1 UNICORE 40 2.8.2 Globus 43 Footer Page of 126 - iv - Header Page Mục of 126 lục 2.8.3 Legion 43 2.8.4 GridBus 45 2.8.5 So sánh 48 Chương Giới thiệu Globus Toolkit phiên 3.2 .52 3.1 Giới thiệu 52 3.1.1 Giới thiệu 52 3.1.2 Lịch sử phát triển 53 3.2 Các công nghệ, chuẩn liên quan 53 3.2.1 Service Oriented Architeture (SOA) 53 3.2.2 Web Service 56 3.2.3 OGSA 58 3.2.4 OGSI Grid Service 65 3.3 Kiến trúc Globus Toolkit 74 3.3.1 Mô hình kiến trúc GT2 75 3.3.2 Mô hình kiến trúc GT3 76 3.4 Các thành phần 79 3.4.1 Sercurity Infrastructure 79 3.4.2 Resource Management 94 3.4.3 Information Service 107 3.4.4 Data Management 113 3.4.5 Thành phần GT3 114 Chương Phát triển ứng dụng với Globus Toolkit 3.2 115 4.1 Khởi đầu dự án 115 4.1.1 Định hướng phát triển hệ thống 115 4.1.2 Đánh tính khả thi ứng dụng chạy Grid 117 4.2 Các yêu cầu cần quan tâm xây dựng ứng dụng 118 4.2.1 Khả mở rộng (Scalability) 118 4.2.2 Bảo mật 118 4.2.3 Tính mềm dẻo ứng dụng (Flexibility) 119 4.2.4 Các kết nối với bên 119 4.2.5 Hiệu suất ứng dụng(Performance) 120 4.2.6 Độ tin cậy (Reliability) 121 4.2.7 Quản trị hệ thống (Management) 122 4.2.8 Đồ hình hệ thống (System Topology) 123 4.2.9 Môi trường đa tảng 123 4.2.10 Định dạng file 124 4.2.11 Việc cài đặt hệ thống 124 4.2.12 Vấn đề thông tin Grid 124 4.2.13 Tính tiện dụng 124 4.3 Thiết kế tổng quan 125 4.4 Một số vấn đề cần quan tâm thiết kế chi tiết viết mã 126 4.4.1 Kiến trúc ứng dụng 127 4.4.2 Xem xét sử dụng ngôn ngữ lập trình 130 4.4.3 Vấn đề phụ thuộc công việc vào môi trường hệ thống 131 4.4.4 Đồ hình công việc 132 4.5 Triển khai cài đặt Grid Service 133 Footer Page of 126 -v- Header Page Mục of 126 lục 4.5.1 Các bước xây dựng triển khai Grid Service 134 4.5.2 Xây dựng client 140 Chương Quản trị mạng hệ thống quản trị 142 5.1 Quản trị mạng 142 5.1.1 Khái niệm 142 5.1.2 Các lĩnh vực quản trị mạng 142 5.2 Hệ thống quản trị mạng 144 5.2.1 Mô hình hoạt động 144 5.2.2 Một số chức hệ thống quản trị mạng 146 5.2.3 Hệ thống quản trị mạng thực tế 148 5.3 Hệ thống Intrusion Detection System (IDS) 149 5.3.1 Khái niệm 149 5.3.2 Các hướng tiếp cận 149 5.4 Giới thiệu số công cụ hỗ trợ quản trị mạng 150 5.4.1 Ethereal 150 5.4.2 Snort 152 Chương Hệ thống quản trị Grid NetManager .153 6.1 Giới thiệu ý tưởng 153 6.2 Yêu cầu chức hệ thống quản trị mạng 154 6.3 Mô hình thành phần hoạt động hệ thống 155 6.3.1 Mô hình thành phần 155 6.3.2 Cách thức hoạt động 157 6.4 Phân tích định hướng phát triển ứng dụng 158 6.5 Giới hạn vấn đề thực luận văn 159 Chương Phân tích, thiết kế cài đặt thử nghiệm ứng dụng 161 7.1 Phân tích 161 7.1.1 Ngữ cảnh hệ thống 161 7.1.2 Lược đồ Use Case 162 7.1.3 Đặc tả Use Case 163 7.1.4 Mô tả dòng kiện 167 7.2 Thiết kế 179 7.2.1 Sơ đồ đối tượng cài đặt 179 7.2.2 Thiết kế giao diện 180 7.3 Cài đặt & Triển khai 183 7.3.1 Công cụ môi trường phát triển ứng dụng 183 7.3.2 Mô hình cài đặt 184 7.3.3 Mô hình triển khai 184 7.3.4 Thử nghiệm 185 Chương Kết luận 186 8.1 Đánh giá 186 8.1.1 Về luận văn 186 8.1.2 Về ứng dụng 186 8.2 Hướng phát triển, mở rộng luận văn 187 8.2.1 Về luận văn 187 Footer Page of 126 - vi - Header Page Mục of 126 lục 8.2.2 Về ứng dụng 187 8.3 Lời kết 188 Phụ lục 189 A Các tiêu chí đánh giá tính khả dự án Grid 189 B Định dạng file GWSDL 191 C Kỹ thuật cài đặt chức Grid Service 193 C.1 Kỹ thuật cài đặt Operation Provider 193 C.2 Thêm thành phần liệu (Service Data Element (SDE)) 196 C.3 Cài đặt chế Notification 199 C.7 Cài đặt kỹ thuật tạo service động (Transient service) 202 C.5 Kỹ thuật Logging (Ghi vết) 205 C.6 Kỹ thuật quản lý chu trình sống service (Lifecycle Management) 206 D Các interface OGSI Service 208 E Cấu trúc chứng điện tử 211 Tài liệu tham khảo .213 Các Website 216 Footer Page of 126 - vii - Header Page Danh of 126 sách hình Danh sách hình Hình 2-1 Tài nguyên Grid quan điểm người dùng, khối thống có nhờ ảo hoá Hình 2-2 Hình thức hoạt động Grid Tính toán 10 Hình 2-3 Các đồ hình Grid 11 Hình 2-4 Đồ hình SimpleGrid 12 Hình 2-5 Đồ hình IntraGrid 13 Hình 2-6 Đồ hình ExtraGrid 14 Hình 2-7 Các minh họa đồ hình InterGrid 15 Hình 2-8 Kiến trúc Grid tổng quát 29 Hình 2-9 Quan điểm lập trình viên kiến trúc Grid 34 Hình 2-10 Kiến trúc Grid thực tế với thành phần 35 Hình 2-11 Các dự án Grid tương ứng với tầng 36 Hình 2-12 Mối quan hệ chuẩn Grid Service 39 Hình 2-13 Mô hình kiến trúc hoạt động UNICORE 41 Hình 2-14 Kiến trúc Legion 44 Hình 2-15 Kiến trúc GridBus 46 Hình 2-16 So sánh UNICORE, Globus, Legion GridBus 49 Hình 3-1 Các thành phần kiến trúc SOA 54 Hình 3-2 Kiến trúc Globus Toolkit 75 Hình 3-3 Mô hình thành phần hệ thống sử dụng GT2 76 Hình 3-4 Mô hình tổ chức thành phần GT3 77 Hình 3-5 Các thành phần GSI 80 Hình 3-6 Quy trình khởi tạo để sử dụng GSI 87 Hình 3-7 Thủ tục chứng thực phân quyền với GSI 88 Hình 3-8 Cơ chế ủy quyền GSI 89 Hình 3-9 Thủ tục uỷ quyền proxy GSI 90 Hình 3-10 Kiến trúc quản lý tài nguyên Globus Toolkit 95 Hình 3-11 Các trạng thái công việc 98 Hình 3-12 Các thành phần chế hoạt động pre-WS GRAM 99 Hình 3-13 Cơ chế hoạt động có DUROC pre-WS GRAM 101 Hình 3-14 Các thành phần chế hoạt động WS-GRAM 105 Hình 3-15 Mô hình quản lý thông tin Grid Globus Toolkit 107 Hình 3-16 Ví dụ tổ chức liệu MDS2 109 Hình 3-17 Mô hình tổ chức liệu phân cấp MDS2 110 Hình 3-18 Các thành phần chế hoạt động MDS2 111 Hình 4-1 Luồng ứng dụng song song 128 Hình 4-2 Luồng ứng dụng 128 Hình 4-3 Luồng ứng dụng mạng 129 Hình 4-4 Các file cần thiết để triển khai Grid Service với Ant 139 Hình 5-1 Mô hình hệ thống quản trị mạng 144 Hình 5-2 Màn hình giao diện Ethereal 151 Hình 6-1 Mô hình thành phần ứng dụng Grid NetManager 155 Hình 6-2 Mô hình thành phần ứng dụng Grid NetManager thử nghiệm 160 Hình 7-1 Ngữ cảnh hệ thống 161 Hình 7-2 Sơ đồ Usecase ứng dụng Grid NetManager thử nghiệm 162 Footer Page of 126 - viii - Header Page Danh 10 of 126 sách hình Hình 7-3 Sơ đồ lớp cài đặt lớp đối tượng 179 Hình 7-4 Màn hình ứng dụng Grid NetManager thử nghiệm 181 Hình 7-5 Màn hình Packet Capture Configue 182 Hình 7-6 Mô hình cài đặt 184 Hình 7-7 Sơ đồ triển khai ứng dụngGrid NetManager thử nghiệm 184 Hình 7-8 Mô hình cài đặt thử nghiệm 185 Hình 8-1 Lớp triển khai interface Grid service kỹ thuật kế thừa 194 Hình 8-2 Cài đặt intrface củaGrid service kỹ thuật Operation Provider 194 Hình 8-3 Ví dụ SDE MathService 196 Hình 8-4 Sơ đồ hoạt động chế Notification GT3 200 Hình 8-5 Cấu trúc chứng điện tử 211 Footer Page 10 of 126 - ix - Header Page Phụ 217 lục of 126 } //Khi co thay doi SDE,ham se duoc Grid service goi, se xuat man // hinh cac gia tri cua SDE public void deliverNotification(ExtensibilityType any) throws RemoteException { try { // SDE da thay doi, lay gia tri moi ServiceDataValuesType serviceData = AnyHelper.getAsServiceDataValues(any); MathDataType mathData = (MathDataType) AnyHelper.getAsSingleObject(serviceData, MathDataType.class); // Xuat man hinh System.out.println("Current value: " + mathData.getValue()); System.out.println("Previous operation: " + mathData.getLastOp()); System.out.println("# of operations: " + mathData.getNumOps()); }catch(Exception exc) { System.out.println("ERROR!"); exc.printStackTrace(); } } } C.7 Cài đặt kỹ thuật tạo service động (Transient service) Làm cho service có khả tạo lập cách động (chuyển service thành transient service) việc dễ dàng GT3, không cần thay đổi portType cài đặt Mọi thứ cần làm sửa lại file đặc tả cài đặt + Đặc tả cài đặt Để thấy rõ thay đổi, xem lại file WSDD cũ: Footer Page 217 of 126 - 202 - Header Page Phụ 218 lục of 126 Dưới file WSDD sửa đổi theo mô hình tạo service động với factory Lưu ý, khai báo service factory tĩnh (persistent service) để chịu trách nhiệm tạo MathService instance động (transient service) File : $GRIDSER_DEMO/org/globus/progtutorial/services/core/first/serverdeploy.wsdd Một chút khác biệt đặc đặc tả: + Trước hết, thêm tiền tố “instance-” vào name, schemaPath, baseClassName, className, cách này, cho container biết tham số để truyền vào tạo instance MathService thông qua Factory Footer Page 218 of 126 - 203 - Header Page Phụ 219 lục of 126 + Sau thêm tham số vào “khối tham số chung”, để ý lúc này, schemaPath, baseClassName, className tham khảo đến mã thực thi Factory (cung cấp GT3), mã thực thi tạo + Có thể thấy, việc thêm khả tạo lập động cho service nào, đơn giản gồm bước, thêm tiền tố “instance-” sửa lại “khối tham số chung” + Đối với client Có thể sử dụng lại client cũ Ở đây, viết client để demo khả tạo lập, sử dụng huỷ service instance thông qua Factory File : $GRIDSER_DEMO/org/globus/progtutorial/clients/MathService/FactoryC lient.java package org.globus.progtutorial.clients.MathService; import import import import org.gridforum.ogsi.OGSIServiceGridLocator; org.gridforum.ogsi.Factory; org.gridforum.ogsi.LocatorType; org.globus.ogsa.utils.GridServiceFactory; import org.globus.progtutorial.stubs.MathService.service.MathServiceGridLocator; import org.globus.progtutorial.stubs.MathService.MathPortType; import java.net.URL; public class FactoryClient { public static void main(String[] args) { try { // Lay tham so dong lenh URL GSH = new java.net.URL(args[0]); int a = Integer.parseInt(args[1]); // Lay GSR cua MathService Factory OGSIServiceGridLocator gridLocator = new OGSIServiceGridLocator(); Factory factory = gridLocator.getFactoryPort(GSH); GridServiceFactory mathFactory = new GridServiceFactory(factory); // Tao mot MathService instance moi va lay GSR cua no LocatorType locator = mathFactory.createService(); MathServiceGridLocator mathLocator = new MathServiceGridLocator(); MathPortType math = mathLocator.getMathServicePort(locator); // Goi phuong thuc Add() math.add(a); System.out.println("Added " + a); int value = math.getValue(); System.out.println("Current value: " + value); // Huy service instance sau su dung math.destroy(); }catch(Exception e) { System.out.println("ERROR!"); e.printStackTrace(); Footer Page 219 of 126 - 204 - Header Page Phụ 220 lục of 126 } } } C.5 Kỹ thuật Logging (Ghi vết) Logging kỹ thuật quan trọng phát triển bảo trì phần mềm, cho phép theo dõi kiện đặc biệt hệ thống, kiện ghi nhận kết xuất hình GT3 cung cấp khả logging theo mô hình Apache Jakarta Commons Logging (http://jakarta.apache.org/commons/logging/) Mô hình đưa cấp độ thông tin logging, gồm Debug, Trace, Info, Warn, Error, Fatal Việc định thông tin mức độ tuỳ thuộc vào người lập trình ứng dụng Ở thêm tính logging vào MathService, sử dụng lại ví dụ Khi thêm tính logging, không cần sửa lại portType, cần thêm lệnh cần thiết vào mã cài đặt portType + Cài đặt File: $GRIDSER_DEMO/org/globus/progtutorial/services/core/logging/impl/M athImpl.java // import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; // public class MathImpl extends GridServiceImpl implements MathPortType { // Tao logger cho class static Log logger = LogFactory.getLog(MathImpl.class.getName()); // public void add(int a) throws RemoteException { logger.info("Addition invoked with parameter a=" + String.valueOf(a)); if (a==0) logger.warn("Adding zero doesn't modify the internal value!"); value = value + a; } // public int getValue() throws RemoteException { logger.info("getValue() invoked"); return value; } } + Xem kết xuất log Để xem kết xuất log MathService, thêm dòng sau vào cuối file: $GLOBUS_LOCATION/ogsilogging.properties(Đây file cấu hình Log GT3) Footer Page 220 of 126 - 205 - Header Page Phụ 221 lục of 126 #Cho biet can xuat cac log o cap Info man hinh console, co the sua #lai cac cap khac, va ghi file org.globus.progtutorial.services.core.logging.impl.MathImpl=console,in fo C.6 Kỹ thuật quản lý chu trình sống service (Lifecycle Management) Như biết việc quản lý chu trình sống service instance tạo lập động quan trọng GT3 cung cấp công cụ hữu ích để quản lý service phương thức callback (callback method), theo dõi chu trình sống (lifecycle monitor) Ở sử dụng lại ví dụ phần transient service logging để demo kỹ thuật + Kỹ thuật Callback method Một cách đơn giản để quản lý chu trình sống callback method (tương tự hàm kiện lập trình với MS Windows) Các phương thức callback gọi số thời điểm xác định chu trình sống service GT3 hỗ trợ hàm callback sau: Hàm preCreate postCreate activate deactivate preDestroy Thời điểm gọi Khi trình tạo lập Grid Service bắt đầu, lúc tất cấu hình chưa nạp Khi service tạo cấu hình service tạo lập Tất Grid service mặc định trạng thái “không kích hoạt”(deactivated), hàm gọi service kích hoạt Khi service trở trạng thái “không kích hoạt” Ngay trước service bị huỷ Bảng 8-2 Các hàm callback GT3 File : $GRIDSER_DEMO/org/globus/progtutorial/services/core/lifecycle/impl /MathImpl.java // import org.globus.ogsa.GridServiceCallback; // public class MathImpl extends GridServiceImpl implements MathPortType, GridServiceCallback { // // Cai dat cac phuong thuc Callback, chi can su dung lai cac ham cai san cua lop cha GridServiceImpl public void preCreate(GridServiceBase base) throws GridServiceException { super.preCreate(base); logger.info("Instance is going to be created (preCreate)"); } public void postCreate(GridContext context) throws GridServiceException { Footer Page 221 of 126 - 206 - Header Page Phụ 222 lục of 126 super.postCreate(context); logger.info("Instance has been created (postCreate)"); } public void activate(GridContext context) throws GridServiceException { super.activate(context); logger.info("Instance has been activated (activate)"); } public void deactivate(GridContext context) throws GridServiceException { super.deactivate(context); logger.info("Instance has been deactivated (deactivate)"); } public void preDestroy(GridContext context) throws GridServiceException { super.preDestroy(context); logger.info("Instance is going to be destroyed (preDestroy)"); } } + Kỹ thuật Lifecycle Monitor Kỹ thuật Callback Method tốt, nhiên khó sử dụng lại Giả sử có hàm preCreate() postCreate() muốn sử dụng lại tất Grid Service, với kỹ thuật Callback Method, có cách đưa vào lớp cha, cho tất lớp Grid Service khác thừa kế từ Tất nhiên có hạn chế giới thiệu phần Operation Provider GT3 đưa giải pháp Lifecycle Monitor Một lifecycle monitor lớp triển khai interface ServiceLifeCycleMonitor, interface với hàm callback gọi thời điểm quan trọng thời gian sống Grid service Chúng ta không cần kế thừa hay tham thảo interface trực tiếp từ mã nguồn Chúng ta cần thêm dòng vào đặc tả triển khai yêu cầu lớp lifecycle monitor phải gọi có kiện đặc biệt xảy Do đó, dùng lifecycle monitor cho nhiều Grid service khác Dưới lớp lifecycle monitor đơn giản, file : $GRIDSER_DEMO/org/globus/progtutorial/services/core/lifecycle/impl /MathLifecycleMonitor.java package org.globus.progtutorial.services.core.lifecycle.impl; import org.globus.ogsa.GridServiceException; import org.globus.ogsa.ServiceLifecycleMonitor; import org.globus.ogsa.GridContext; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; public class MathLifecycleMonitor implements ServiceLifecycleMonitor { // Tao logger cho lop static Log logger = LogFactory.getLog(MathLifecycleMonitor.class.getName()); //Cac phuong thuc can callback public void create(GridContext context) throws GridServiceException { logger.info("Instance is going to be created (create)"); } Footer Page 222 of 126 - 207 - Header Page Phụ 223 lục of 126 public void destroy(GridContext context) throws GridServiceException { logger.info("Instance is going to be destroyed (destroy)"); } public void preCall(GridContext context) throws GridServiceException { logger.info("Service is going to be invoked (preCall)"); } public void postCall(GridContext context) throws GridServiceException { logger.info("Service invocation has finished (postCall)"); } public void preSerializationCall(GridContext context) { logger.info("Input parameters are going to be deserialized (preSerializationCall)"); } public void postSerializationCall(GridContext context) { logger.info("Input parameters have been deserialized (postSerializationCall)"); } } Và thêm dòng sau vào file đặc tả triển khai (.WSDD) D Các interface OGSI Service Bảng 0-3 tóm tắt interface Grid Service định nghĩa OGSI 1.0: Interface Grid Service Footer Page 223 of 126 Loại Tên chi tiết Diễn giải Định nghĩa ứng xử service SDE interface Danh sách tên (QName) interface service Danh sách tên (QName) serviceDataName SDE service (động tĩnh) Vị trí (ogsi:LocatorType) factoryLocator factory tạo service instance Zero nhiều GSH gridServiceHandle service instance Một nhiều GSR gridServiceReference service instance - 208 - Header Page Phụ 224 lục of 126 findServiceDataExtensibility setServiceDataExtensibility terminationTime Phương thức findServiceData setServiceData requestTerminationAfter requestTerminationBefore destroy Thực ánh xạ từ GSH sang GSR SDE handleResolverScheme Handle Resolver Notification Source Tập phương thức mở rộng phương thức findServiceData Tập phương thức mở rộng phương thức setServiceData Thời gian dự kiến kết thúc service instance Truy vấn thông tin service Cho phép thay đổi giá trị SDE phép thay đổi giá trị (modifiable= “true”) Yêu cầu thay đổi terminationTime service instance Phương thức xác định thời gian kết thúc sớm Yêu cầu thay đổi terminationTime service instance Phương thức xác định thời gian kết thúc trễ Huỷ tường minh service instance Tập URI xác định lược đồ GSH sử dụng để phân giải thành GSR Trả vị trí (ogsi:LocatorType) chức GSR tương với GSH đươc yêu cầu Cho phép client đặt yêu cầu cung cấp thông báo SDE Tập QName SDE notifiableServiceDataName yêu cầu thông báo có thay đổi Tập phương thức mở subscribeExtensibility rộng phương thức subscribe Phương thức findByHandle Phương thức subscribe Yêu cầu phải thông báo có thay đổi SDE xác định notifiableServiceDataName Định nghĩa phương thức phân phối thông điệp Footer Page 224 of 126 - 209 - Header Page Phụ 225 lục of 126 Notification Sink Notification Subscription Factory Service Group Service Group Registration Định nghĩa phương thức phân phối thông điệp SDE Không có Phân phối thông báo Phương deliverNotification thức Xác định mối quan hệ cặp NotificationSource NotificationSink SDE subscriptionExpression sinkLocator Phương Không có thức Cung cấp cách thức chuẩn để tạo service instance SDE Tập phương thức mở createServiceExtensibility rộng phương thức createService Phương createService Tạo service instance thức Cho phép client quản lý nhóm service SDE Là cấu trúc liên kết membershipContentRule portType với tập QName Mỗi service instance muốn thành viên nhóm phải có nhiều interface xác định SDE Biểu diễn thông tin entry thành viên ServiceGroup Phương Không có thức Cho phép thêm loại bỏ Grid service instance ServiceGroup, SDE Tập phương thức mở addExtensibility rộng phương thức add Tập phương thức mở removeExtensibility rộng phương thức remove Tạo ServiceGroupEntry đưa vào ServiceGroup Loại bỏ ServiceGroupEntry remove thoả yêu cầu đưa vào Định nghĩa mối quan hệ thành viên service instance với ServiceGroup SDE Chứa vị trí memberServiceLocator (ogsi:LocatorType) service instance tham khảo đến Phương thức Service Group Entry Footer Page 225 of 126 add - 210 - Header Page Phụ 226 lục of 126 Cung cấp số thông tin service instance chứa content Phương thức Không có Bảng 8-3 Các interface OGSI Service E Cấu trúc chứng điện tử Một chứng điện tử bao gồm phần : subject (distinguished name (DN)) không gian tên hệ thống Grid xác định người đối tượng mà chứng đại diện, khóa công khai kèm với subject, phần nhận dạng CA thực ký chứng nhận chứng chỉ, chữ ký CA phần mở rộng chứa thông tin cá nhân hay host chứng nhận Một số thông tin địa email, tên tổ chức, … Hình vẽ sau mô tả chi tiết cấu trúc chứng điện tử: Hình 8-5 Cấu trúc chứng điện tử * Việc lấy chứng nhận cho người dùng (lưu ý người dùng thật hay host) Grid bao gồm bước: Người dùng Grid phát sinh cặp khoá (khóa bí mật khóa công khai tương ứng), yêu cầu chứng nhận chứa khoá công khai thông tin cần thiết theo yêu CA Footer Page 226 of 126 - 211 - Header Page Phụ 227 lục of 126 Sau đó, người dùng gửi yêu cầu đến CA Còn khóa bí mật giữ lại lưu trữ cách cẩn thận CA (hay mở rộng RA) thực xác minh thông tin yêu cầu thật, tức tìm cách chứng minh user gửi yêu cầu chủ sở hữu khóa công khai yêu cầu Việc thực nhiều cách khác nhau, thông qua điện thoại, email, hay đường tiếp xúc trực tiếp hai bên,… Sau kiểm tra xong, CA tạo chứng cách ký tên vào yêu cầu, gửi chứng lại cho người dùng yêu cầu chứng nhận Việc yêu cầu chứng thực trên cần thực lần nhất, từ nhận chứng chỉ, người dùng dùng đế đại diện cho giao tiếp với hệ thống có yêu cầu chứng thực Footer Page 227 of 126 - 212 - Header Page Phụ 228 lục of 126 Tài liệu tham khảo [1] Ian Foster, The Grid, CLUSTERWORLD, vol 1, no.1, 2001,pp 1-2 [2] Ian Foster, Carl Kesselman, Steven Tuecke, The Anatomy of Grid, Intl J Supercomputer Applications, 2001 [3] Ian Foster, What is the Grid? A Three Point Checklist, Argonne National Laboratory & University of Chicago, 20/06/2002 [4] Ian Foster,Carl Kesselman, Jeffrey M Nick, Steven Tuecke, The Physiology of the Grid - An Open Grid Services Architecture for Distributed Systems Integration, Version: 6/22/2002 [5] I Foster, D Gannon, H Kishimoto, The Open Grid Services Architecture, GLOBAL GRID FORUM, 10/03/2004, http://forge.gridforum.org/projects/ogsawg [6] S Tuecke, K Czajkowski, I Foster, J Frey, S Graham, C Kesselman, T Maquire, T Sandholm, D Snelling, P Vanderbilt, Open Grid Services Infrastructure (OGSI) Version 1.0, GLOBAL GRID FORUM, 27/06/2003, http://www.ggf.org/ogsi-wg [7] Mark Baker, Rajkumar Buyya, Domenico Laforenza, Grids and Grid technologies for wide-area distributed computing, John Wiley & Sons Ltd, 2002 [8] Steven Fitzgerald, Ian Foster, Carl Kesselman, Gregor von Laszewski, Warren Smith, Steven Tuecke, A Directory Service for Configuring High-Performance Distributed Computations, 1997,http://www.globus.org [9] Ian Foster, Carl Kesselman, Globus: A Metacomputing Infrastructure Toolkit, http://www.globus.org [10] Karl Czajkowski, Steven Fitzgerald, Ian Foster, Carl Kesselman, Grid Information Services for Distributed Resource Sharing, Proc 10th IEEE International Symposium on High-Performance Distributed Computing (HPDC10), IEEE Press, 2001 [11] Karl Czajkowski, Ian Foster, Nicholas Karonis, Carl Kesselman, Stuart Martin, Warren Smith, Steven Tuecke, A Resource Management Architecture for Metacomputing Systems, 1997, www.globus.org [12] Sam Lang, Sam Meder, Security and Credential Management on the Grid, CLUSTERWORLD volume no , pp 8-11, 02/2004 [13] Von Welch, Frank Siebenlist, Ian Foster, John Bresnahan, Karl Czajkowski, Jarek Gawor, Carl Kesselman, Sam Meder, Footer Page 228 of 126 - 213 - Header Page Phụ 229 lục of 126 Laura Pearlman, Steven Tuecke, Security for Grid Services, www.globus.org [14] Von Welch, Ian Foster, Carl Kesselman, Olle Mulmo, Laura Pearlman, Steven Tuecke, Jarek Gawor, Sam Meder, Frank Siebenlist, X.509 Proxy Certificates for Dynamic Delegation, www.globus.org [15] Ian Foster, Carl Kesselman, Gene Tsudik, Steven Tuecke, A Security Architecture for Computational Grids, 5th ACM Conference on Computer and Communication Security, www.globus.org [16] Bart Jacob, How Grid infrastructure affects application design, RedBooks, IBM, 06/2003 [17] Bart Jacob, Taking advantage of Grid computing for application enablement, RedBooks, IBM, 06/2003 [18] Martin C Brown, Grid computing moving to a standardized platform, RedBooks, IBM, 08/2003 [19] IBM Corp , The Era of Grid Computing: A new standard for successful IT strategies, 01/2004, www.ibm.com [20] Viktors Berstis, Fundamentals of Grid Computing, Redbooks, IBM Corp, 2002, www.ibm.com/redbooks [21] Luis Ferreira,Viktors Berstis, Jonathan Armstrong, Mike Kendzierski, Andreas Neukoetter, Introduction to Grid Computing with Globus, Redbooks,IBM Corp, 09/2003, www.ibm.com/redbooks [22] Bart Jacob, Luis Ferreira, Norbert Bieberstein, Candice Gilzean, Jean-Yves Girard, Roman Strachowski, Seong (Steve) Yu, Enabling Applications for Grid Computing with Globus, Redbooks, IBM Corp, 06/2003, www.ibm.com/redbooks [23] Luis Ferreira, Bart Jacob, Sean Slevin, Michael Brown, Srikrishnan Sundararajan, Jean Lepesant, Judi Bank, Globus Toolkit 3.0 Quick Start, Redbooks, IBM Corp, 09/2003, www.ibm.com/redbooks [24] Borja Sotomayor, The Globus Toolkit Programmer's Tutorial, 2003-2004 www.globus.org [25] Richard Sharpe, Ed Warnicke, Ulf Lamping, Ethereal User's Guide: V2.00 for Ethereal 0.10.5, 2004, www.ethereal.com [26] Luis Ferreira, Arun Thakore, Michael Brown, Fabiano Lucchese, Huang RuoBo, Linda Lin, Paul Manesco, Jeff Mausolf, Nasser Momtaheni, Karthik Subbian, Olegario, Hernandez, Grid Services Programming and Application Enablement, Redbooks,IBM Corp, 05/2004, www.ibm.com/redbooks Footer Page 229 of 126 - 214 - Header Page Phụ 230 lục of 126 [27] Parvin Asadzadeh, Rajkumar Buyya1, Chun Ling Kei, Deepa Nayar, Srikumar Venugopal, Global Grids and Software Toolkits: A Study of Four Grid Middleware Technologies, Grid Computing and Distributed Systems (GRIDS) Laboratory, The University of Melbourne, Australia [28] Matthew Strebe, Network Security JumpStart, SYBEX Inc., 2002 [29] James Stanger, Patrick Lane, Tim Crothers, CIW:Security Professional Study Guide, SYBEX Inc., 2002, www.sybex.com [30] Wenke Lee, Salvatore J Stolfo, Kui W Mok, Adaptive Intrusion Detection: a Data Mining Approach, Kluwer Academic Publishers, 2000 [31] John McHugh, Alan Christie, Julia Allen, Defending Yourself: The Role of Intrusion Detection Systems, IEEE SOFTWARE, 10/2000 [32] Thomas H Ptacek, Timothy N Newsham, Insertion, Evasion, and Denial of Service:Eluding Network Intrusion Detection, Secure Networks Inc.,01/1998 [33] Detmar Liesen, Requirements for Enterprise-Wide Scaling Intrusion Detection Products, 2002 [34] William Allcock, Programming with GridFTP CLUSTERWORLD volume no , pp 1-6, 10/2004 [35] Globus Alliance, MDS ver 2.2 User’s Guide, Globus Aliance, www.globus.org, 3/10/2003 [36] William Allcock, GridFTP: Protocol Extensions to FTP for the Grid, Argonne National Laboratory, 03/2003 [37] Snort Project, Snort Users Manual 2.3.2, www.snort.org, 10/032005 Footer Page 230 of 126 - 215 - Client Library, Header Page Phụ 231 lục of 126 Các Website STT 10 11 12 13 14 Footer Page 231 of 126 Tổ chức Globus Alliance IBM Global Grid Forum GridCafe NSF MIDDLEWARE INITIATIVE GRIDS UNICORE Legion Gridbus Ethereal WindowSecurity SecurityFocus Cisco Corp Snort Website http://www.globus.org http://www.ibm.com http://www.globalgridforum.org http://gridcafe.web.cern.ch/gridcafe http://www.nsf-middleware.org http://www.grids-center.org http://www.unicore.org http://legion.virginia.edu http://www.gridbus.org http://www.ethereal.com http://www.WindowSecurity.com http://www.SecurityFocus.com http://www.Cisco.com http://www.Snort.com - 216 - ... nghệ Grid Computing Chương Tổng quan công nghệ Grid Computing 2.1 Khái niệm Grid 2.1.1 Theo dòng lịch sử Mặc dù công nghệ Grid Computing nhắc đến nhiều thời gian gần đây, thực nhiều ý tưởng Grid. .. Enterprise JavaBeans Global Grid Forum Grid Service Handle Grid Security Infrastructure Grid Service Referance Globus Toolkit Version x Grid Web Services Description Language Metacomputing Directory... node khác Grid 2.1.3.2 Tài nguyên lưu trữ Tài nguyên phổ biến thứ nhì Grid tài nguyên lưu trữ Mỗi thiết bị Grid thường cung cấp số dung lượng lưu trữ phục vụ cho việc thực thi ứng dụng Grid Tài

Ngày đăng: 18/05/2017, 15:08

Xem thêm: Tim hieu cong nghe GRID COMPUTING va ung dung thu nghiem tro

TỪ KHÓA LIÊN QUAN

Mục lục

    Công nghệ Grid Computing (tính toán lưới)

    Vấn đề quản trị mạng

    Mục tiêu đề tài

    Tổng quan về công nghệ Grid Computing

    Theo dòng lịch sử

    Tài nguyên của Grid

    Tài nguyên tính toán

    Tài nguyên lưu trữ

    Phương tiện liên lạc

    Phần mềm, ứng dụng

TÀI LIỆU CÙNG NGƯỜI DÙNG

  • Đang cập nhật ...

TÀI LIỆU LIÊN QUAN