Chương 1. Giới thiệu về tính toán lưới 1. Các giai đoạn phát triển của tính toán lưới [9] 1. Giai đoạn đầu – Thế hệ thứ nhất Những nỗ lực đầu tiên trong phát triển lưới được bắt đầu từ các dự án liên kết các địa điểm có khả năng tính toán lớn được biết đến với tên gọi siêu tính toán – metacomputing.
Đến giữa những năm 1990 đã đánh dấu sự nổi bật của các môi trường siêu tính toán. Mục đích của các dự án này thường là cung cấp các tài nguyên tính toán cho một diện rộng các ứng dụng hiệu năng cao. Hai dự án tiêu biểu là FAFNER và I-WAY. Hai dự án này có nhiều điểm khác biệt nhưng cùng phải vượt qua một số khó khăn tương tự nhau, đó là vấn đề truyền thông, quản lý tài nguyên và thực thi dữ liệu ở xa để có thể làm việc hiệu quả.
Cả hai đều cố gắng cung cấp môi truờng siêu tính toán bằng cách tích hợp các tài nguyên của các thành phần tham gia tính toán. FAFNER là một hệ thống có thể chạy ở mọi nơi trên nền của máy chủ Web với các máy trạm có cấu hình thấp và không đòi hỏi nhiều về tốc độ truyền thông. Trong khi đó I-WAY tập hợp nguồn tài nguyên từ các trung tâm siêu máy tính với nền tảng đường truyền tốc độ cao. Các hệ thống này có tính sáng tạo và thành công cao, mở ra con đường phát triển cho các dự án tính toán lưới tiếp theo.
Giai đoạn hiện nay – Thế hệ thứ hai Nếu như trong giai đoạn đầu, tính toán lưới chủ yếu hướng tới việc liên kết một số ít các trung tâm tính toán lớn của quốc gia Mỹ thì trong giai đoạn hiện nay, hạ tầng lưới đã có khả năng nối kết nhiều trung tâm tính toán lớn trên phạm vi lớn. Điều này là do sự phát triển của các công nghệ đường truyền mạng tốc độ cao, băng thông rộng và sự hoàn thiện các chuẩn hoá cho phép lưới có thể được nhìn nhận như một hạ tầng phân tán không thể thiếu trên phạm vi toàn cầu có khả năng hỗ trợ nhiều ứng dụng đa dạng yêu cầu tài nguyên dữ liệu và tính toán lớn. Tính toán lưới hiện phải đương đầu với ba vấn đề cơ bản: • Sự không đồng nhất • Khả năng mở rộng và thay đổi • Khả năng thích nghi Giai đoạn này cũng chứng kiến sự phát triển của nhiều công nghệ lõi cho tính toán lưới mà tiêu biểu là Globus và Legion. Globus cung cấp một nền tảng phần mềm cho phép các ứng dụng điều khiển các tài nguyên tính toán phân phán không đồng nhất như một máy ảo đơn lẻ.
Globus được xây dựng theo kiến trúc phân tầng Luận văn Cao học ngành Công nghệ thông tin – Đại học Bách Khoa Hà Nội 15 Chương 1. Giới thiệu về tính toán lưới và theo quan điểm mô đun và một ứng dụng có thể khai thác các đặc điểm của Globus (như quản lý tài nguyên hay hạ tầng thông tin) mà không cần phải sử dụng thư viện truyền thông của Globus. Bộ công cụ Globus hiện nay chứa một số thành phần sau: • Bộ quản lý phân phối tài nguyên dựa trên HTTP – HTTP-based Globus Toolkit Resource Allocation Manager (GRAM). • Mở rông giao thức truyền file cho lưới – GridFTP.
• Xác thực và các dịch vụ an ninh liên quan – Grid Security Infrastructure (GSI). • Truy cập phân tán vào thông tin cấu trúc và trạng thái dựa trên LDAP. • Bộ quản lý thực thi – Global Excetable Management (GEM) • Bộ đăng ký và phân phối tài nguyên – Globus Advanced Reservation and Allocation (GARA). Globus có nguồn gốc từ bộ khung của I-WAY và hiện nay đã có phiên bản Globus Toolkit 4.
Legion là một siêu hệ thống (metasystem) dựa trên đối tượng. Nó khác với Globus ở cách tiếp cận với việc cung cấp môi trường lưới. Đó là nó đóng gói toàn bộ các thành phần thành đối tượng và điều này làm cho nó có đầy đủ các lợi ích của mô hình hướng đối tượng. Cùng với sự phát triển của các công nghệ này là sự bùng nổ của các hệ thống đối tượng phân tán như kiến trúc CORBA (Common Object Request Broker Architecture) của OMG (Object Management Group) hay Jini với cơ chế triệu gọi phương thức từ xa (Remote Method Invocation – RMI) của Java.
Giai đoạn thứ hai này cũng chứng kiến sự phá triển của một loạt các công cụ và tiện ích đi kèm nhằm cung cấp các dịch vụ mức cao cho cả người dùng và ứng dụng. Các bộ lập lịch và phân phối tài nguyên cùng với các giao diện người dùng và cổng thông tin (portals) cũng được phát triển mạnh để cung cấp phương tiện quản lý và sử dụng tài nguyên cho cả các ứng dụng và người dùng. Các kỹ thuật tính toán ngang hàng cũng phát triển trong giai đoạn này. Giai đoạn tiếp theo – Thế hệ thứ ba – Semantic Grid Thế hệ thứ hai đã cung cấp khả năng liên tác đóng vai trò thiêt yếu để thực hiện tính toán trên phạm vi rộng.
Để có thể xây dựng các ứng dụng lưới mới cần phải có thể tái sử dụng được các thành phần và tài nguyên có sẵn và có thể lắp ghép các thành phần này lại với nhau một cách linh hoạt. Các giải pháp đều dẫn đến việc áp dụng mô hình hướng dịch vụ và tăng cường sự chú ý đến siêu dữ liệu (metadata) – hai đặc điểm chính của các hệ thống lưới thế hệ thứ ba. Rõ ràng mô hình hướng dịch vụ bản thân nó đã hàm chứa sự kết hợp dữ liệu, đó là sự lắp ghép của các tài Luận văn Cao học ngành Công nghệ thông tin – Đại học Bách Khoa Hà Nội 16 Chương 1. Giới thiệu về tính toán lưới nguyên lưới vào một ứng dụng lưới đòi hỏi thông tin tường minh về chức năng, về sự sẵn sàng và về giao diện của nhiều thành phần và những thông tin này phải có dạng biểu diễn có thể hiểu và xử lý được bởi máy.
Sự phát triển của ứng dụng lưới và hai đặc điểm trên của lưới làm ta liên tưởng đến sự bùng nổ của Web trong những năm vừa qua. Được tạo ra từ nhu cầu trao đổi và phân tán thông tin trong môi trường khoa học điện tử (e-Science), Web đã nhanh chóng phát triển và trở thành nền tảng trao đổi thông tin trong môi trường Internet. Hơn thế nguồn thông tin và tri thức mà các dịch vụ Web tích trữ ngày càng lớn và phức tạp không thể xử lý trực tiếp bởi con người mà đòi hỏi phải có một thế hệ Web mới với khả năng mô tả ngữ nghĩa cao hơn, có thể hiểu và xử lý trực tiếp bởi máy. Đó chính là Semantic Web.
Lưới cũng đang phát triển theo xu hướng này. Khối lượng tài nguyên ngày càng lớn trong môi trường không đồng nhất đòi hỏi thế hệ tiếp theo của lưới phải hướng tới cách thông tin được biểu diễn, lưu trữ, truy cập, chia sẻ và duy trì – thông tin được hiểu như là dữ liệu có ngữ nghĩa. Thế hệ tiếp theo của lưới sẽ phải liên quan đến cách tri thức được thu nhận, được sử dụng, được công bố và được duy trì để giúp cho các nhà khoa học điện tử có thể đạt được những mục đích cụ thể. Thế hệ đó là lưới ngữ nghĩa – Semantic Grid.
Xu hướng phát triển của lưới thế hệ tiếp theo Luận văn Cao học ngành Công nghệ thông tin – Đại học Bách Khoa Hà Nội 17 Chương 2. Kiến trúc tính toán lưới Chương 2. KIẾN TRÚC TÍNH TOÁN LƯỚI Chương 2 đi vào nghiên cứu kiến trúc cấu thành của luới tính toán với hai nội dung cơ bản là Tổ chức ảo – Thành phần cơ sở của lưới trong mục 2. và Kiến trúc của lưới tính toán trong mục 2.
sẽ trình bày về các yêu cầu thiết kế lưới tính toán, kiến trúc phân tầng và cac dịch vụ cơ bản mà lưới cung cấp. Tổ chức ảo – Thành phần cơ sở của lưới [10] Vấn đề nền tảng của tính toán lưới chính là tổ chức việc chia sẻ tài nguyên và phối hợp giải quyết bài toán giữa các đơn vị tổ chức có tính động và đa dạng trên nhiều lĩnh vực. Đơn vị tổ chức cơ bản của tính toán lưới được gọi là tổ chức ảo (Virtual Organization – VO). Sự chia sẻ được nói đến ở đây không chỉ đơn thuần là sự chia sẻ và trao đổi file mà còn là việc truy cập trực tiếp từ máy tính này đến máy tính khác, đến các phần mềm, dữ liệu và các tài nguyên khác.
Các tài nguyên này cũng rất phong phú theo sự bùng nổ nhu cầu giải quyết các bài toán và chia sẻ tài nguyên trong công nghiệp, khoa học và kỹ thuật. Sự chia sẻ này nhất thiết phải được điều khiển ở mức cao, giữa người cung cấp và người sử dụng phải có sự định nghĩa tường minh về những tài nguyên nào được chia sẻ, ai được quyền chia sẻ và trong những điều kiện nào việc chia sẻ được thực hiện, chi tiết của định nghĩa này hình thành nên luật chia sẻ (sharing rules). Một tổ chức ảo (Virtual Organization – VO) là một tập các cá nhân hay tổ chức được định nghĩa bởi cùng các luật chia sẻ. Ví dụ: các nhà cung cấp dịch vụ ứng dụng, các nhà cung cấp dịch vụ lưu trữ hay các nhà tư vấn được thuê bởi một hãng sản xuất ôtô để thực hiện đánh giá một kế hoạch xây dựng xí nghiệp mới, các thành viên trong một tổ chức công nghiệp.
Mỗi ví dụ là biểu diễn cho một hướng phát triển của khả năng tính toán và giải quyết các bài toán lớn dựa trong môi trường cộng tác. Luận văn Cao học ngành Công nghệ thông tin – Đại học Bách Khoa Hà Nội 18 Chương 2. Kiến trúc tính toán lưới Hình 2. Tổ chức ảo và tổ chức thật Như trong hình trên, có 3 tổ chức thật (trong 3 hình ô-van) được tổ chức thành 2 tổ chức ảo.
Một tổ chức thật có thể tham gia vào một hay nhiều tổ chức ảo bằng cách chia sẻ một số hoặc tất cả tài nguyên của nó. Như vậy, các tổ chức rất đa dạng về mục đích, phạm vi, kích thước, thời gian tồn tại, cấu trúc, tính cộng đồng và tính xã hội. Tuy nhiên, nghiên cứu kỹ lưỡng hơn về tổ chức ảo đã tổng kết lại tập các yêu cầu chung cần quan tâm.