Hệ thống đa xử lý (Multiprocessor Systems – MPs), các Cluster, Grid là những ví dụ của kiến trúc tính toán phân tán.
Trong khi các MP và các Cluster là những hệ thống đơn, thường là trong một miền quản trị đơn, thì các lưới tính toán lại bao gồm các cluster của những mạng MP và/hoặc Cluster, được đặt ở những miền quản trị khác nhau, rải rác khắp các bộ phận, các doanh nghiệp hoặc thậm chí phân tán toàn cầu thông qua Internet.
Một định nghĩa về Grid hòan chỉnh được định nghĩa như sau:
“Grid là một loại hệ thống song song, phân tán cho phép chia sẻ, lựa chọn, kết hợp các tài nguyên phân tán theo địa lý, thuộc nhiều tổ chức khác nhau dựa trên tính sẵn sàng, khả năng, chi phí của chúng và yêu cầu về chất lượng dịch vụ (QoS) của người dùng để giải quyết các bài toán, ứng dụng có quy mô lớn trong khoa học, kỹ thuật và thương mại. Từ đó hình thành nên các “tổ chức ảo” (Virtual Organization (VO)), các liên minh tạm thời giữa các tổ chức và tập đoàn, liên kết với nhau để chia sẻ tài nguyên và/hoặc kỹ năng nhằm đáp ứng tốt hơn các cơ hội kinh doanh hoặc các dự án có nhu cầu lớn về tính toán và dữ liệu, toàn bộ việc liên minh này dựa trên các mạng máy tính”
Ian Foster, C. Keselman (1999)
Một hệ thống Grid có những đặc trưng sau:
· Có sự kết hợp, chia sẻ các tài nguyên không được quản lý tập trung
· Sử dụng các giao diện và giao thức chuẩn, mang tính mở, đa dụng.
· Đáp ứng yêu cầu cao về chất lượng dịch vụ.
Các tài nguyên được “ảo hóa” (virtualize) để che dấu sự phức tạp, đa dạng nhằm đưa ra một cái nhìn thống nhất, đơn giản về toàn bộ tài nguyên trên Grid sao cho dưới mắt của người dùng, các tài nguyên Grid là một khối thống nhất. Hình 2.1 minh hoạ ý tưởng này.
Hình 1.1.Tài nguyên Grid dưới quan điểm của người dùng, là một khối thống nhất có được nhờ sự ảo hoá.
vGrid Tính toán (Computation Grid)
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ất lớn.
vGrid Dữ liệu (Data Grid)
Ở đâ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à cung cấ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.
vScavenging Grid
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áy tí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.
Hình 1.2.Hình thức hoạt động của Grid Tính toán
Hình 2.3 cho thấy độ lớn của các đồ hình Grid.
Hình 1.3.Các đồ hình Grid.
vSimpleGrid
Hình 1.4.Đồ hình SimpleGrid
vIntraGrid
Hình 1.5 mô tả một Intra Grid.
Hình 1.5.Đồ hình IntraGrid
vExtraGrid
Hình 1.6.Đồ hình ExtraGrid
vInterGrid
Một số minh họa các InterGrid.
Hình 1.7. Các minh họa về đồ hình InterGrid.
vQuản lý tài nguyên (Resource Management)
· Tài nguyên thuộc nhiều vùng quản trị khác nhau
· Tài nguyên đa dạng, hỗn tạp
· Vấn đề phối hợp cấp phát tài nguyên
· Vấn đề điều khiển trực tuyến, theo thời gian thực (online)
vBảo mật (Security)
· Đăng nhập một lần (Single sign-on)
· Cho phép ủy quyền
· Có khả năng tích hợp được với các chính sách bảo mật cục bộ
· Sử dụng các quan hệ tin cậy lẫn nhau dựa theo người dùng
· Hỗ trợ bảo mật liên lạc nhóm
· Đảm bảo tính riêng tư
· Cho phép có nhiều cài đặt khác nhau
vQuản lý thông tin
vQuản lý dữ liệu
vPhát triển ứng dụng
vCác vấn đề khác
Các bước chung trong quá trình hiện thực hoá Grid:
vTích hợp các thành phần phần cứng và phần mềm đơn lẻ thành tài nguyên kết hợp thông qua hệ thống mạng.
vXây dựng và triển khai
· Middleware cấp thấp để cung cấp môi trường truy cập bảo mật và trong suốt đến các tài nguyên.
· Middleware cấp cao và các công cụ phục vụ kết hợp các tài nguyên phân tán và phát triển ứng dụng.
vPhát triển và tối ưu hoá các ứng dụng phân tán để tận dụng khả năng tài nguyên và cơ sở hạ tầng.
“Tổ chức ảo”(VO) là đơn vị cơ bản quan trọng trong hệ thống Grid. Việc thiết lập, quản lý, khai thác các quan hệ chia sẻ tài nguyên giữa các tổ chức ảo đòi hỏi phải có kiến trúc hệ thống mới, kiến trúc Grid. Kiến trúc Grid dưới đây được xây dựng dựa trên quan niệm “để các VO hoạt động hiệu quả đòi hỏi phải thiết lập được các quan hệ chia sẻ với bất kỳ đơn vị tham gia tiềm năng nào”. Để làm được điều này, vấn đề “liên kết hoạt động” (interoperability) cần phải được tập trung giải quyết. Trong môi trường mạng, “liên kết hoạt động” đồng nghĩa với việc sử dụng các protocol chung. Do đó, kiến trúc Grid sẽ là kiến trúc protocol, với các protocol xác định các cơ chế nền tảng để người dùng và nhà cung cấp tài nguyên thương lượng, thiết lập, quản lý và khai thác các mối quan hệ chia sẻ tài nguyên.
Kiến trúc Grid phải là kiến trúc dựa chuẩn, hướng mở, để dễ mở rộng, liên kết hoạt động tốt, có tính khả chuyển (portability) cao. Các protocol chuẩn sẽ giúp định nghĩa các service chuẩn, nhờ đó có thể xây dựng các service cao cấp hơn một cách dễ dàng.
Sau khi có được kiến trúc Grid, việc tiếp theo là xây dựng các hàm API và các bộ SDK để cung cấp các công cụ cần thiết để phát triển các ứng dụng chạy trên nền Grid.
Sau gần 10 năm tập trung nghiên cứu, phát triển, tích luỹ kinh nghiệm, các nhà phát triển công nghệ Grid đã có những thống nhất đáng kể về kiến trúc Grid. Một trong những kiến trúc Grid được chấp nhận nhiều nhất được đưa ra bởi Ian Foster, phần dưới đây sẽ giới thiệu về kiến trúc này.
Kiến trúc Grid, theo Ian Foster, là một kiến trúc phân tầng như trong hình 2.8.
Các thành phần trong một tầng có chung đặc điểm, tính chất, có thể được xây dựng từ bất cứ tầng dưới nào. Các thành phần được phân tầng dựa theo vai trò của chúng trong hệ thống Grid. Đây là một kiến trúc mở.
Kiến trúc này chỉ quy định các yêu cầu chung nhất về thiết kế và triển khai với mục đích chính là để tham khảo. Việc xây dựng, cài đặt cụ thể tuỳ thuộc vào từng dự án, từng lĩnh vực ứng dụng.
Dưới đây là chi tiết của kiến trúc:
Hình 1.8.Kiến trúc Grid tổng quát.
Hình 1.9 minh hoạ quan điểm của các lập trình viên về kiến trúc Grid. Các ứng dụng được xây dựng theo cách sẽ gọi các dịch vụ định nghĩa bởi các tầng phía dưới.
Hình 1.9. Quan điểm của các lập trình viên về kiến trúc Grid.
|
Trong thực tế, kiến trúc Grid tổng quan đã được cài đặt và xây dựng như hình 1.10. Kiến trúc gồm 4 tầng tương ứng với các tầng của kiến trúc tổng quát như sau:
Hình 1.10. Kiến trúc Grid trong thực tế với các thành phần.
Bởi vì công nghệ Grid computing cần phải đáp ứng nhiều nhu cầu khác nhau, hỗ trợ nhiều loại công nghệ, tài nguyên, trải rộng khắp thế giới, do nhiều tổ chức tham gia xây dựng, nên để các thành phần Grid, ứng dụng Grid tương thích được với nhau cần phải có một chuẩn chung, một ngôn ngữ chung thống nhất cho toàn bộ nền công nghệ.
Để đáp ứng nhu cầu đó, tổ chức Global Grid Forum(GGF) ra đời với thành viên là hầu hết các nhà nghiên cứu, các tổ chức hàng đầu trong việc xây dựng công nghệ Grid Computing. GGF đã và đang phát triển các chuẩn về Grid Computing như : OpenGrid Services Architecture (OGSA), Open Grid Services Infrastructure (OGSI),Web Services Resource Framework (WSRF).
Các chuẩn trên đây cũng là chuẩn duy nhất hiện nay trong ngành công nghệ Grid Computing. Các chuẩn này vẫn trong giai đoạn phát triển.
Mục tiêu của OGSA và OGSI nhằm xây dựng một nền tảng để hỗ trợ việc xây dựng một tập các dịch vụ có thể được tìm thấy và được gọi bởi bất kỳ hệ thống nào trong Grid. Mục tiêu chính là định nghĩa được các giao diện dịch vụ(service interface) hoàn toàn độc lập với các cài đặt cụ thể bên dưới, điều đó sẽ giúp cung cấp các dịch vụ OGSA trên bất kỳ thiết bị tính toán nào kết nối với Grid.
Chuẩn Open Grid Services Architecture (OGSA) xác định toàn bộ các kết cấu, cấu trúc, dịch vụ cơ bản của một ứng dụng Grid và có thể được áp dụng trong bất kỳ một hệ thống Grid nào.
OGSI là một bản đặc tả chính thức các khái niệm được mô tả trong OGSA.
Là một bước phát triển của OGSI.
Hình 1.11 tóm tắt mối quan hệ giữa các chuẩn trên:
Hình 1.11.Mối quan hệ giữa các chuẩn về Grid Service.
» Tin mới nhất:
» Các tin khác: