Tải bản đầy đủ (.doc) (47 trang)

Tiểu luận môn điện toán lưới và đám mây GRID COMPUTING & WEB SERVICE

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 (1.04 MB, 47 trang )

ĐẠI HỌC QUỐC GIA THÀNH PHỐ CHÍ MINH
Trường Đại học Công Nghệ Thông Tin
BÀI THU HOẠCH:
ĐIỆN TOÁN LƯỚI VÀ ĐÁM MÂY
ĐỀ TÀI:
GRID COMPUTING & WEB SERVICE
Giáo viên hướng dẫn : PGS.TS NGUYỄN PHI KHỨ
Học viên thực hiện : Hồ Văn Linh
Mã số học viên : CH1301020
Tp.HCM, Tháng 06 năm 2014
Điện toán lưới và đám mây GVHD: PGS.TS.Nguyễn Phi Khứ
LỜI CÁM ƠN
Công nghệ Grid Computing ra đời đánh dấu một bước phát triển mới trong
lĩnh vực điện toán hiệu năng cao. Nó cho phép tận dụng năng lực xử lý, lưu trữ cùng
các tài nguyên nhàn rỗi khác để cung cấp một môi trường tính toán có năng lực xử lý
lớn, khả năng lưu trữ dồi dào để giải quyết các bài toán phức tạp - khó có thể giải
quyết được với các công nghệ hiện hành hoặc giải quyết được nhưng với chi phí rất
cao - trong 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ư trong khi vẫn cung cấp năng lực tính toán
như mong muốn. Trong những 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 của 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ệ này đang ngày càng thu hút được sự quan tâm chú ý từ khắp nơi trên thế giới.
Có thể nói công nghệ Grid Computing là một xu hướng phát triển mới trong ngành
công nghệ thông tin.
Hiện nay, đất nước ta đang thực hiện công cuộc công nghiệp hoá, hiện đại
hóa, trong đó việc rút ngắn sự tụt hậu, phát triển về khoa học công nghệ là yếu tố
then chốt quyết định đến thành công của công cuộc đổi mới. Song song với quá trình
phát triển, ngày càng có nhiều bài toán mới, đòi hỏi năng lực xử lý lớn xuất hiện
trong khoa học, thương mại và quản lý đất nước. Các công nghệ tính toán hiện hành
cũng được áp dụng nhưng không thể triển khai rộng rãi để có thể giải quyết hết các


nhu cầu do chi phí đầu tư quá lớn. Việc nghiên cứu, áp dụng công nghệ Grid
Computing là một giải pháp tốt để giải quyết các tình huống này. Hơn nữa, công
nghệ Grid Computing hiện nay còn khá mới mẻ, đang trong giai đoạn hoàn thiện,
việc cùng tham gia nghiên cứu với cộng đồng thế giới sẽ giúp chúng ta học hỏi kinh
Điện toán lưới và đám mây GVHD: PGS.TS.Nguyễn Phi Khứ
nghiệm, tiến tới làm chủ công nghệ, từ đó có thể phát triển theo hướng đi của riêng
mình, đáp ứng nhu cầu tính toán hiệu năng cao ngày càng tăng của đất nước.
Thông qua đề tài này em tìm hiểu sơ lược về một mô hình tính toán với hiệu
năng cao, tận dụng được tài nguyên của máy tính và ứng dụng cho dịch vụ Web,
đang là mô hình tính toán được thế giới quan tâm phát triển.
Em xin gởi lời cám ơn chân thành đến Thầy PGS.TS Nguyễn Phi Khứ, dù thời
gian không nhiều nhưng Thầy đã giảng dạy và hướng dẫn chúng em tận tình trong
suốt thời gian môn học và đó là kiến thức quý báu và hữu ích.
Do thời gian hạn chế, bài thu họach còn nhiều thiếu sót. Rất mong nhận được
ý kiến đóng góp của Thầy.
Xin chân thành cảm ơn !
Điện toán lưới và đám mây GVHD: PGS.TS.Nguyễn Phi Khứ
MỤC LỤC
I. TỔNG QUAN VỀ CÔNG NGHỆ GRID COMPUTING 1
1.1 Khái niệm 1
1.2 Tài nguyên của Grid 1
1.3 Phân loại Grid & Grid Topology 3
1.4 Yêu cầu của công nghệ Grid 7
1.5 Một số ích lợi khi sử dụng công nghệ Grid Computing 13
1.6 Các thành phần cơ bản của một hệ thống cơ sở hạ tầng Grid 15
1.7 Kiến trúc Grid 16
1.8 Chuẩn hoá Grid 24
1.9 Giới thiệu các dự án Grid middleware chính 27
II. TỪ TÍNH TOÁN LƯỚI ĐẾN TÍNH TOÁN ĐÁM MÂY 33
III. CÁC BƯỚC XÂY DỰNG VÀ TRIỂN KHAI GRID SERVICE 34

IV. CẤU HÌNH QUÁ TRÌNH TRIỂN KHAI SERVICE VỚI WEB SERVICE
DEPLOYMENT DESCRIPTOR (WSDD) 38
4.1 Tạo file GAR với công cụ Ant 39
4.2 Triển khai Grid service trên một Grid service container 40
4.3 Xây dựng client 41
V. TÀI LIỆU THAM KHẢO 42
Điện toán lưới và đám mây GVHD: PGS.TS.Nguyễn Phi Khứ
I. TỔNG QUAN VỀ CÔNG NGHỆ GRID COMPUTING
1.1Khái niệm
Một định nghĩa về Grid khá hoàn chỉnh được đưa ra bởi tiến sỹ Ian Foster 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”
Một hệ thống Grid có những đặc trưng sau:
a. Có sự kết hợp, chia sẻ các tài nguyên không được quản lý tập trung:
Grid tích hợp và phối hợp tài nguyên, người dùng thuộc nhiều vùng quản lý
khác nhau, nhiều đơn vị khác nhau trong một tổ chức, hay nhiều tổ chức khác
nhau. Công nghệ Grid tập trung giải quyết các vấn đề về bảo mật, chính sách
quản trị, chi phí, thành viên,… nảy sinh trong quá trình chia sẻ và sử dụng tài
nguyên.
b. Sử dụng các giao diện và giao thức chuẩn, mang tính mở, đa dụng.
Grid được xây dựng trên các giao thức và giao diện tổng quát, đa dụng để giải
quyết các vấn đề cơ bản như chứng thực người dùng, phân quyền, tìm kiếm và

truy xuất tài nguyên.
c. Đáp ứng yêu cầu cao về chất lượng dịch vụ.
Grid cho phép sử dụng phối hợp các tài nguyên để cung cấp nhiều loại dịch vụ
với các mức chất lượng khác nhau, liên quan đến ví dụ như thời gian đáp ứng,
hiệu suất, tính sẵn sàng, bảo mật, cho phép kết hợp nhiều kiểu tài nguyên để
đáp ứng nhu cầu phức tạp của người dùng. Mục tiêu là phải phối hợp làm sao
để khả năng của hệ thống sau khi kết hợp phải lớn hơn hẳn tổng khả năng của
từng đơn vị cấu thành nên Grid.
1.2Tài nguyên của Grid
Các tài nguyên của Grid bao gồm các loại sau
a. Tài nguyên tính toán
Trang: 1
Điện toán lưới và đám mây GVHD: PGS.TS.Nguyễn Phi Khứ
Đây là tài nguyên phổ biến nhất, là các chu kỳ tính toán (computing cycles)
được cung cấp bởi bộ vi xử lý của các thiết bị trong Grid. Các bộ vi xử lý
không cần phải cùng loại mà có thể có tốc độ, kiến trúc, chạy phần mềm khác
nhau.
Có 3 cách để khai thác tài nguyên tính toán của Grid:
1. Cách đơn giản nhất là chạy các ứng dụng hiện có trên một node của Grid
thay vì chạy trên máy tính cục bộ.
2. Thiết kế ứng dụng, tách các công việc thành các phần riêng rẽ để có thể thực
thi song song trên nhiều bộ xử lý khác nhau.
3. Chạy ứng dụng thực thi nhiều lần trên nhiều node khác nhau trong Grid.
b. Tài nguyên lưu trữ
Tài nguyên phổ biến thứ nhì trong Grid là tài nguyên lưu trữ. Mỗi thiết bị trong
Grid thường cung cấp một số dung lượng lưu trữ phục vụ cho việc thực thi ứng
dụng trên Grid. Tài nguyên lưu trữ có thể là bộ nhớ trong, ổ đĩa cứng hoặc các
thiết bị lưu trữ khác. Bộ nhớ trong thường dùng để lưu trữ dữ liệu tạm thời cho
ứng dụng, trong khi các thiết bị lưu trữ ngoài có thể được sử dụng để tăng
không gian lưu trữ, tăng hiệu suất, khả năng chia sẻ và đảm bảo tính tin cậy của

dữ liệu.
c. Phương tiện liên lạc
Khả năng liên lạc giữa các máy tính phát triển nhanh chóng đã giúp cho công
nghệ Grid trở nên hiện thực, do đó đây cũng là một tài nguyên quan trọng. Ở
đây bao gồm việc liên lạc, trao đổi dữ liệu giữa các thành phần trong Grid và
giao tiếp giữa Grid với bên ngoài. Một số công việc đòi hỏi một lượng dữ liệu
lớn nhưng các dữ liệu này thường không nằm trên máy đang thực thi công việc.
Khả năng về băng thông trong những trường hợp như vậy là một tài nguyên
then chốt, ảnh hưởng đến khả năng của Grid.
Việc giao tiếp với bên ngoài được thực hiện thông qua mạng Internet. Grid có
thể sử dụng các kết nối Internet để liên lạc giữa các node. Vì các kết nối này
không chia sẻ một đường truyền nên làm tăng băng thông truy cập Internet.
Các đường truyền dự phòng đôi khi cần thiết để giải quyết tốt hơn các vấn đề về
hư hỏng mạng và truyền dữ liệu lớn.
d. Phần mềm, ứng dụng
Grid có thể được cài đặt các phần mềm mà có thể quá mắc để cài trên tất cả mọi
máy tính trong Grid. Các phần mềm này chỉ cần được cài trên một số node.
Thông qua Grid, khi một công việc cần đến chúng, nó sẽ gửi dữ liệu đến node
đã được cài đặt phần mềm và cho thực thi. Đây có thể là một giải pháp tốt để
tiết kiệm chi phí về bản quyền phần mềm.
Trang: 2
Điện toán lưới và đám mây GVHD: PGS.TS.Nguyễn Phi Khứ
e. Các thiết bị đặc biệt
Là các thiết bị dùng trong khoa học, kỹ thuật như kính viễn vọng, các bộ cảm
biến (sensor),… Các thiết bị này chủ yếu thu thập các dữ liệu khoa học, phục vụ
cho các bước phân tích, xử lý sau này.
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á
1.3 Phân loại Grid & Grid Topology
1.3.1 Phân loại Grid

a. Các kiểu Grid
Công nghệ Grid Computing có thể được sử dụng theo nhiều cách khác nhau
để giải quyết cá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ải quyế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àng giữ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ác
nhau.
b. Grid 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.
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 song song 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ỗi node 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ễn kết quả toàn cục cho người dùng. Hình 2-2 minh
họa quá trình này.
c. Grid 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.
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ác Grid 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ác nguồn dữ liệu này.
Các Grid Dữ liệu có thể được sử dụng trong lĩnh vực khai thác dữ liệu(data
mining) hoặc cá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.
d. Scavenging Grid
Trang: 3
Điện toán lưới và đám mây GVHD: PGS.TS.Nguyễn Phi Khứ
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.
1.3.2 Đồ hình Grid (Grid Topology)
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 đặt trong 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ùng mộ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 rà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 1-1 Các đồ hình Grid.
a. SimpleGrid
Trang: 4
Điện toán lưới và đám mây GVHD: PGS.TS.Nguyễn Phi Khứ
Hình 1-2 Đồ hình SimpleGrid
Một SimpleGrid chỉ bao gồm vài máy tính, tất cả đều có cùng kiến trúc phần
cứng, chạy cùng một hệ điều hành, kết nối vào mạng cục bộ. Dạng Grid này sử
dụng các hệ thống đồng nhất nên ít phức tạp, thường chỉ dùng để thử
nghiệm, làm quen với các phần mềm Grid. Các máy tính thuộc một phòng ban
trong tổ chức nên việc sử dụng chúng cho Grid không cầ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ình này khiến người ta liên tưởng đến các cluster hơn là Grid.

b. IntraGrid
Hình 1-3 Đồ hình IntraGrid
Trang: 5
Điện toán lưới và đám mây GVHD: PGS.TS.Nguyễn Phi Khứ
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ống
khô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 file mạng (network filesytem). Các máy tính tham gia Grid có thể thuộc nhiều
phòng ban khác nhau như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ực hiệ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ật cũ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ự truy cậ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.
c. ExtraGrid
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 2-6, 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ết nố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ới ExtraGrid, 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ài nguyê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.
Hình 1-4 Đồ hình ExtraGrid
Trang: 6
Điện toán lưới và đám mây GVHD: PGS.TS.Nguyễn Phi Khứ
d. InterGrid
Theo thời gian, các Grid mở rộng ra khỏi một tổ chức và bắt đầu liên kết nhiều

tổ chức với nhau, được dùng để phối hợp giữa các tổ chức trong các dự án lớn.
Một InterGrid đòi hỏi việc liên kết động các ứng dụng, tài nguyên và dịch vụ.
Khách hàng hay bất kỳ tổ chức hợp lệ nào khác đều 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ài nguyê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 1-5 Các minh họa về đồ hình InterGrid.
1.4 Yêu cầu của công nghệ Grid
14.1 Quản lý tài nguyên (Resource Management)
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ại tà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ác thách thức và yêu cầu chính sau đây:
a. 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 tôn trọng, tương thích với các chính sách quả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,
Trang: 7
Điện toán lưới và đám mây GVHD: PGS.TS.Nguyễn Phi Khứ
dữ liệu đến các máy tính, sensor,…; và cho nhiều phương thức sử dụng khá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 cung cấ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.
b. 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ông nghệ, 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ức nă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ài nguyên:
STT Đối Tượng Đặc tính
1 Người dùng, Người cung cấp Phân tán theo địa lý
2 Tài nguyên Đa dạng, phân tán theo địa lý,
thuộc nhiều vùng quản trị, sở hữu
khác nhau.
3 Tính sẵn sàng và
khả năng của tài
nguyên
Thay đổi theo thời gian
4 Các chính sách và
chiến lược sử dụng
Đa dạng và không tập trung, nhà
cung cấp và người dùng có các mục
tiêu và chiến lược chia sẻ, sử dụng
khác nhau.
5 Yêu cầu chất lượng dịch vụ Đa dạng
6 Chi phí/Giá cả Thay đổi tuỳ theo tài nguyên, người
dùng, thời gian.
7 Yêu cầu của ứng

dụng
Đa dạng về tốc độ xử lý, bộ nhớ,
đòi hỏi về năng lực lưu trữ, năng
lực mạng.
Bảng 1-1 Các đặc tính của tài nguyên
c. 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ều nguyê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,…Đây cũ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.
Trang: 8
Điện toán lưới và đám mây GVHD: PGS.TS.Nguyễn Phi Khứ
d. 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ụng song 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 site cù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úng trên các tài
nguyên.
e. 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 ứng nhu 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 đổi trong quá trình thực thi.
1.4.2 Bảo mật (Security)
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ầu sau:
a. Đă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ông thể 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ần chứng thực một lần mà có thể sử dụng nhiều tài nguyên khác nhau.
b. 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ần
phả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ác quyề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ười dù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.
c. 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 thay thế toàn bộ các giải pháp này mà cho phép kế thừa, sử dụng lại.
d. 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ập mô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, B liên lạc với nhau.
Trang: 9
Điện toán lưới và đám mây GVHD: PGS.TS.Nguyễn Phi Khứ
e. 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ày cầ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ính toán. Grid cần có giải pháp để thực hiện bảo mật cho các nhóm này.
f. Đảm bảo tính riêng tư
Mộ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ừ
đây cũ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ản trị 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ủa mình.

g. 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
theo nhiề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ới nhiều hệ thống khác nhau.
1.4.3 Bảo mật (Security)
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ầu sau:
a. Đă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ông thể 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ần chứng thực một lần mà có thể sử dụng nhiều tài nguyên khác nhau.
b. 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ần
phả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ác quyề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ười dù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.
c. 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 thay thế toàn bộ các giải pháp này mà cho phép kế thừa, sử dụng lại.
d. 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ập mô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, B liên lạc với nhau.
e. Hỗ trợ bảo mật liên lạc nhóm

Trang: 10
Điện toán lưới và đám mây GVHD: PGS.TS.Nguyễn Phi Khứ
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ày cầ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ính toán. Grid cần có giải pháp để thực hiện bảo mật cho các nhóm này.
f. Đảm bảo tính riêng tư
Mộ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ừ
đây cũ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ản trị 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ủa mình.
g. 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
theo nhiề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ới nhiều hệ thống khác nhau.
1.4.4 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ác loạ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 đặc tí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 đợi trong 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ày gầ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, cho phé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ây dự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ều thô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ôi trườ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ăng tí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ệ thống thông tin Grid cần phả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 nguồn
khác nhau để cung cấp các thông tin tổng hợp về hệ thống.
Trang: 11
Điện toán lưới và đám mây GVHD: PGS.TS.Nguyễn Phi Khứ
 Đư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.
1.4.5 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, cung 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âng cao 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ăng chọ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).

1.4.6 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ụng cho 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ệ Grid Computing vào thực tế.
1.4.7 Các vấn đề khác
 Khi kích cỡ Grid tăng lên, chi phí quản lý cũng tăng theo, hiệu suất của Grid
cũng giảm xuống, do đó khi xây dựng các công nghệ Grid cần tính toán khả
năng mở rộng của hệ thống.
 Cần có các cơ chế quản lý tiến trình để đặt chỗ trước trên tài nguyên, khởi
động, kiểm soát, điều khiển việc thực thi của các tiến trình.
Trang: 12
Điện toán lưới và đám mây GVHD: PGS.TS.Nguyễn Phi Khứ
 Về mã thực thi ứng dụng, dạng đặc biệt của tài nguyên lưu trữ này đòi hỏi các
cơ chế để quản lý phiên bản mã nguồn và mã thực thi của các đối tượng để đảm
bảo tính tương thích.
 Nguời dùng mong muốn có thể dùng môi trường ảo của Grid với chất lượng
gần giống như trên hệ thống cục bộ. Do đó, Grid cần phải cung cấp các công cụ
đơn giản để hỗ trợ người dùng để xác định các dịch vụ, số lượng và chất lượng
(QoS ) của chúng, chất lượng trong trường hợp này liên quan đến khả năng truy
cập dịch vụ một cách nhanh chóng thông qua các giao diện hoàn hảo, các hệ
thống chứng thực thông minh và các đường truyền tốc độ cao.
 Cần có một hệ thống quản lý phân phối hợp lý giữa các nhu cầu của ngườidùng
với khả năng của tài nguyên, theo dõi việc sử dụng các dịch vụ, và cung cấp các
dịch vụ cộng thêm khác như quản lý tài nguyên cục bộ, quản lý hiệu suất, trạng
thái tài nguyên, quản lý đăng nhập và bảo mật
 Cần có một giao diện chuẩn để chuyển các yêu cầu của người dùng và khả năng

của tài nguyên thành một ngôn ngữ duy nhất bất kể nền tảng phần cứng, phần
mềm của mỗi tài nguyên phân tán nhằm mục đích phối hợp hoạt động.
1.5 Một số ích lợi khi sử dụng công nghệ Grid Computing
a. 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ảnh rỗ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ửi mộ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ân nhỏ 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ưu trữ 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ường gặ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ới mộ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ại tài nguyên, do đó có thể cho phép
theo dõi tổng quan về các hoạt động sử dụng tài nguyên trong các tổ chức lớn, hỗ trợ
hoạch định các chiến lược sử dụng tài nguyên.
b. 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ải quyế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ài chí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ất nhiều lĩnh vực khác.
Trang: 13
Điện toán lưới và đám mây GVHD: PGS.TS.Nguyễn Phi Khứ
c. 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à

đơn giả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 Grid cho 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ấp rất nhiều dạng tài nguyên khác nhau.
d. 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ị đặc biệ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ết nố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ể được gử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 Internet của anh ta tăng lên rất nhiều lần,

e. 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
độ tin cậ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ải phá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ũng phả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ào cá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ện hay 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ềm quả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ác cô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.
f. 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ống hỗ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 tin lớ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ông thô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ên củ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ể được
giải quyết dễ dàng.
Trang: 14
Điện toán lưới và đám mây GVHD: PGS.TS.Nguyễn Phi Khứ
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
mang lạ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ốt nhất trong các tình huống cụ thể.
Công nghệ Grid Computing có thể được ứng dụng trong các bài toán trong khoa học
lẫn thương mại:
+ Đòi hỏi năng lực xử lý lớn (High-performance computing), yêu cầu rút ngắn
thời gian hoàn thành kết quả càng nhanh càng tốt.
+ Hướng dữ liệu, đòi hỏi phải thu thập, lưu trữ, phân tích một lượng lớn dữ liệu,
mang tính phân tán.
+ Cần sự hợp tác, chia sẻ giữa các cộng đồng.
1.6 Các thành phần cơ bản của một hệ thống cơ sở hạ tầng Grid
Một cơ sở hạ tầng (infrastructure) là một công nghệ cho phép chúng ta thực hiện các
hoạt động của mình, ví dụ hệ thống đường giao thông cho phép đi lại bằng xe, hệ
thống ngân hàng cho phép chuyển tiền một các nhanh chóng. Để có thể hữu dụng, cơ
sở hạ tầng cần phải được triển khai rộng rãi, điều đó cũng có nghĩa là nó phải đơn giản
hoặc có giá trị to lớn hoặc cả hai. Do đó, cơ sở hạ tầng Grid cần phải vừa đơn giản,
vừa hỗ trợ được nhiều dạng tài nguyên khác nhau.
Phần này sẽ giới thiệu tổng quan về các thành phần chính yếu của một môi trường

Grid. Tuỳ theo thiết kế và cách sử dụng Grid, một số thành phần có thể không cần thiết
và đôi khi trong một số trường hợp, có thể kết hợp nhiều thành phần lại thành một
thành phần phức hợp.
a. Portal/Giao diện người dùng
Truy cập thông tin trên Grid là việc rất quan trọng, thành phần giao diện người dùng
đảm nhiệm chức năng này. Giao diện người dùng thuộc một trong 2 dạng:
+ Giao diện cung cấp bởi ứng dụng đang chạy của người dùng.
+ Giao diện cung cấp bởi các nhà quản trị Grid giống như portal cho phép khả
năng truy xuất đến các ứng dụng và tài trong Grid như trong một không gian
ảo duy nhất Một Grid portal đưa ra một giao diện cho người dùng để chạy các
ứng dụng sử dụng các tài nguyên và dịch vụ của Grid. Giao diện kiểu portal
cũng có thể giúp người dùng học cách sử dụng Grid.
b. Bảo mật
Các máy tính trong Grid đều được nối mạng và chạy các ứng dụng; chúng có thể phải
xử lý các dữ liệu nhạy cảm hoặc có giá trị lớn, do đó thành phần bảo mật của Grid là
hết sức quan trọng. Ở mức cơ sở, bất kỳ môi trường Grid nào cũng phải có các cơ chế
bảo mật.
Trang: 15
Điện toán lưới và đám mây GVHD: PGS.TS.Nguyễn Phi Khứ
c. Broker
Khi đã được chứng thực, người dùng sẽ thực thi ứng dụng. Tùy thuộc vào ứng dụng và
các thông số cung cấp bởi người dùng, bước tiếp theo là phải xác định được các tài
nguyên thích hợp để sử dụng. Việc này đòi hỏi các chức năng của một broker.
d. Bộ lập lịch (scheduler)
Khi các tài nguyên đã được xác định và cấp phát, bước tiếp theo là lập lịch điều phối
các công việc chạy trên đó. Cần có các bộ lập lịch để xác định các node thực thi ứng
dụng và gửi các công việc được yêu cầu đến các node. Việc này có thể đơn giản là lấy
tài nguyên sẵn sàng tiếp theo trong hệ thống, nhưng thường thì nó liên quan đến các
hàng đợi công việc ưu tiên, quản lý tải, tìm kiếm các tài nguyên đã đăng ký sử dụng,
theo dõi tiến trình. Nếu có một tập các công việc riêng lẻ,không phụ thuộc vào nhau

thì không cần các bộ lập lịch phức tạp. Tuy nhiên, nếu muốn giữ chỗ các tài nguyên
đặc biệt hay chắc chắn rằng các công việc chạy song song thì nên sử dụng các bộ lập
lịch để phối hợp hoạt động của các công việc. Lưu ý, các cluster có thể được xem là
một tài nguyên đơn lẻ, chúng có bộ lập lịch riêng để quản lý các node của nó. Một bộ
lập lịch cấp cao hơn dùng để quản lý các công việc cần thực hiện trên cluster trong khi
bộ lập lịch cục bộ của cluster sẽ điều phối các công việc cụ thể trên từng máy tính con.
e. Thành phần quản lý dữ liệu (Data management)
Nếu bất cứ dữ liệu nào, bao gồm cả các module thực thi của ứng dụng, cần phải di
chuyển thì cần phải có các phương pháp an toàn, tin cậy để di chuyển các file và dữ
liệu qua lại giữa các node trong Grid. Do đó, cần phải có thành phần này.
f. Thành phần quản lý công việc và tài nguyên (Job and resource
management)
Sau khi đã có các tiện nghi như trên, việc tiếp theo là xây dựng các dịch vụ hỗ trợ việc
thực hiện các công việc thật sự trong môi trường Grid. Để giải quyết các tác vụ nòng
cốt như khởi chạy ứng dụng với các tài nguyên cụ thể, theo dõi trạng thái các công
việc, nhận kết quả, hệ thống Grid cần có thành phần quản lý công việc và tài nguyên.
g. Các thành phần khác
Còn có nhiều thành phần khác để đưa vào môi trường Grid và cần được xem xét khi
thiết kế và cài đặt ứng dụng. Ví dụ : Các tiện ích như liên lạc giữa các tiến trình (Inter
Process Communication) và các dịch vụ hỗ trợ tính toán chi phí và chi trả là những
tiện ích được yêu cầu nhiều nhất. Trên đây là giới thiệu vắn tắt và tổng quan về các
thành phần chính của môi trường Grid. Tuỳ thuộc vào việc triển khai Grid và các yêu
cầu của ứng dụng, có nhiều cách khác nhau để kết hợp các thành phần này lại với nhau
để tạo nên một giải pháp Grid.
1.7 Kiến trúc Grid
1.7.1 Bản chất Kiến trúc Grid
“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ệ

Trang: 16
Điện toán lưới và đám mây GVHD: PGS.TS.Nguyễn Phi Khứ
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.
Sở dĩ vấn đề “liên kết hoạt động” được xem là vấn đề cơ bản vì các mối quan hệ chia
sẻ có thể phải được thiết lập giữa các bên tham gia khác nhau về các chính sách, giữa
các môi trường khác nhau về nền tảng, ngôn ngữ, môi trường lập trình,…Nếu không
có nó, các thành viên trong VO sẽ thực hiện các chính sách chia sẻ song phương và
không chắc rằng các cơ chế sử dụng cho 2 thành viên này sẽ mở rộng được cho các
thành viên khác. Điều này khiến cho việc thành lập các VO động là không thể thực
hiện hoặc cũng chỉ thành lập được VO theo một kiểu nào đó mà thôi. Cũng giống như
Web đã làm bùng nổ việc chia sẻ thông tin bằng cách cung cấp các protocol và cú
pháp chuẩn (HTTP và HTML) dùng cho việc trao đổi thông tin, ở đây cũng cần các
protocol và cú pháp chuẩn để chia sẻ tài nguyên.
Để giải quyết vấn đề “liên kết hoạt động”, việc xây dựng các protocol là quan trọng.
Vì protocol xác định cách các thành phần phân tán trao đổi với nhau để đạt được một
mục đích nào đó, xác định các cấu trúc thông tin cần thiết trong quá trình trao đổi. Các
VO thường hay thay đổi, nên các cơ chế xác định, chia sẻ và sử dụng tài nguyên cần
phải mềm dẻo, gọn nhẹ, để các thỏa thuận chia sẻ tài nguyên có thể được thiết lập,
thay đổi một cách nhanh chóng. Các cơ chế chia sẻ không được ảnh hưởng đến các
chính sách cục bộ, và phải cho phép các thành viên quản lý được các tài nguyên của

họ. Vì các protocol quy định việc giao tiếp giữa các thành viên chứ không quy định
thành viên đó phải như thế nào, nên khi dùng các protocol, các chính sách cục bộ được
giữ lại. Do đó các protocol được cần đến.
Khi đã có các protocol, thì việc xây dựng các service là cần thiết và quan trọng, các
service là bản cài đặt cụ thể của các protocol. Việc xây dựng các service cơ bản phục
vụ truy cập đến tài nguyên tính toán, dữ liệu, tìm kiếm tài nguyên, lập lịch và đồng bộ
hoá, sao chép dữ liệu,… cho phép xây dựng các service cao cấp hơn cho ứng dụng
đồng thời trừu tượng hoá các chi tiết về tài nguyên.
Cũng cần phải xây dựng các bộ API và SDK, vì các nhà phát triển ứng dụng cần phải
có công cụ để hỗ trợ phát triển các ứng dụng phức tạp trong môi trường Grid, người
dùng cũng phải có khả năng thực thi được các ứng dụng này. Sức mạnh, tính đúng đắn
của ứng dụng, chi phí phát triển và bảo trì là những mối quan tâm quan trọng. Các API
Trang: 17
Điện toán lưới và đám mây GVHD: PGS.TS.Nguyễn Phi Khứ
và SDK có thể giúp tăng tốc việc phát triển mã, cho phép chia sẻ mã, tăng tính khả
chuyển cho ứng dụng. Tất nhiên, API và SDK chỉ hỗ trợ thêm chứ không thể thay thế
các protocol được.
1.7.2 Chi tiết Kiến trúc Grid tổng quát
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-6 Kiến trúc Grid tổng quát
a. Tầng Fabric
Đây là tầng thấp nhất của kiến trúc, đại diện cho các thiết bị vật lý và toàn bộ tài
nguyên của Grid mà các tổ chức, người dùng muốn chia sẻ, sử dụng. Các tài nguyên
có thể tồn tại dưới dạng vật lý như các máy tính, hệ thống lưu trữ, các danh mục, tài
nguyên mạng, các loại sensor, cũng có thể là các thực thể logic - một thực thể trừu
tượng - đại diện cho một tập các tài nguyên vật lý, như hệ thống file phân tán, các
cluster,… Trong trường hợp các thực thể logic, việc triển khai có thể liên quan đến các
protocol cục bộ (ví dụ các protocol phục vụ dạng truy cập NFS, hoặc protocol quản lý
Trang: 18
Điện toán lưới và đám mây GVHD: PGS.TS.Nguyễn Phi Khứ
tài nguyên, tiến trình trong cluster,…) nhưng các protocol này không liên quan đến
kiến trúc Grid.
Các thành phần của tầng Fabric thực hiện các hoạt động cục bộ trên các tài nguyên cụ
thể (vật lý lẫn logic) như là bước tiếp sau của các hoạt động chia sẻ tài nguyên của các
tầng trên. Do đó, có một mối liên hệ phụ thuộc chặt chẽ giữa các chức năng của tầng
Fabric với các hoạt động chia sẻ được hỗ trợ. Các chức năng của tầng Fabric càng
mạnh, càng nhiều sẽ cho phép các hoạt động chia sẻ phức tạp, phong phú hơn. Kinh
nghiệm cho thấy, việc quản lý tài nguyên ở tầng này ít nhất cũng phải có cơ chế cung
cấp thông tin để xác được cấu trúc, trạng thái, năng lực của tài nguyên và cơ chế điều
khiển chất lượng dịch vụ.
b. Tầng Connectivity
Tầng Connectivity định nghĩa các protocol liên lạc và chứng thực cơ bản cần thiết cho
các giao dịch mạng đặc trưng của Grid. Các protocol liên lạc cho phép trao đổi dữ liệu
giữa các tài nguyên tầng Fabric. Các protocol chứng thực xây dựng trên các dịch vụ
liên lạc nhằm cung cấp các cơ chế mã hóa, bảo mật, xác minh và nhận dạng các người
dùng và tài nguyên. Việc liên lạc đòi hỏi các công việc như vận chuyển, định tuyến,
đặt tên. Trong tương lai, việc liên lạc của Grid có thể cần các protocol mới, nhưng hiện
nay nên xây dựng trên các protocol có sẵn của bộ TCP/IP protocol stack, cụ thể là các
tầng Network (IP và ICMP), Transport (TCP,UDP) và Application (DNS,OSPF,…).

Về khía cạnh bảo mật của tầng Connectivity, các giải pháp phải dựa trên các chuẩn
bảo mật hiện hành khi có thể. Cũng giống như liên lạc, rất nhiều chuẩn bảo mật đã
được phát triển với bộ Internet protocol có thể áp dụng được.
Việc chứng thực, phân quyền trong môi trường Grid là rất phức tạp. Các công nghệ
bảo mật truyền thống chủ yếu tập trung bảo vệ các giao dịch giữa các máy client và
server. Trong Grid, việc phân biệt client/server không tồn tại, vì các mỗi tài nguyên
trong một lúc nào đó có thể là server (khi nó nhận yêu cầu), một lúc khác lại là client
(khi nó đề xuất yêu cầu đến các tài nguyên khác). Do đó, các giải pháp chứng thực cho
các môi trường VO nên đạt được các yêu cầu về bảo mật trong Grid như đã giới thiệu
ở trên.
c. Tầng Resource
Tầng Resource dựa trên các protocol liên lạc và chứng thực của tầng Connectivity để
xây dựng các protocol, API và SDK nhằm hỗ trợ việc thươnglượng, khởi tạo, theo dõi,
điều khiển, tính toán chi phí và chi trả cho các hoạt động chia sẻ trên từng tài nguyên
riêng lẻ một cách an toàn. Bản cài đặt các protocol của tầng Resource sẽ gọi các chức
năng của tầng Fabric để truy cập và điều khiển các tài nguyên cục bộ.
Các protocol tầng Resource tập trung toàn bộ vào các tài nguyên riêng lẻ, không quan
tâm đến trạng thái toàn cục và các hoạt động trong các tập tài nguyên phân tán.
Các protocol tầng Resource được phân thành 2 dạng chính như sau:
+ Các protocol thông tin
Trang: 19
Điện toán lưới và đám mây GVHD: PGS.TS.Nguyễn Phi Khứ
Sử dụng để thu thập thông tin về cấu trúc và trạng thái các tài nguyên ví dụ như
cấu hình hiện tại, tải hiện tại, chính sách sử dụng,…
+ Các protocol quản lý
Sử dụng để thượng lượng truy xuất đến một tài nguyên chia sẻ, xác định rõ, ví
dụ, các yêu cầu về tài nguyên (bao gồm luôn việc giữ chỗ tài nguyên và chất
lượng dịch vụ) và các thao tác cần được thực hiện như tạo tiến trình, hoặc truy
xuất dữ liệu. Do các protocol quản lý chịu trách nhiệm đại diện cho các quan hệ
chia sẻ, đảm bảo các hoạt động sử dụng tài nguyên phải phù hợp với các chính

sách chia sẻ tài nguyên, bao gồm luôn việc tính toán và chi trả chi phí. Mỗi
protocol cũng nên hỗ trợ việc theo dõi trạng thái và điều khiển các hoạt
động.
Với những yêu cầu như vậy, tập các protocol tầng Resource (và Connectivity) nên nhỏ
gọn và tập trung. Các protocol này chỉ nên đáp ứng được các cơ chế chia sẻ với nhiều
loại tài nguyên khác nhau (ví dụ, các hệ thống quản lý tài nguyên cục bộ khác nhau) là
đủ.
Các chức năng chính của tầng Resource cũng giống như của tầng Fabric cộng thêm
nhiều ngữ nghĩa mới với cơ chế báo lỗi tin cậy khi hoạt động không thành công.
d. Tầng Collective
Trong khi tầng Resource tập trung vào các tài nguyên đơn lẻ, tầng Collective chứa các
protocol, service, API, SDK không liên hệ đến bất kỳ một tài nguyên cụ thể nào mà
thực hiện quản lý toàn cục, tập trung vào các giao tác giữa các tập tài nguyên.
Tầng Collective có thể bổ sung thêm nhiều loại hoạt động chia sẻ mới ngoài những gì
đã có từ tầng Resource mà không cần bổ sung thêm các yêu cầu mới cho các tài
nguyên đang được chia sẻ. Ví dụ:
+ Directory service
Cho phép các thành phần tham gia VO phát hiện sự tồn tại và/hoặc đặc tính của
các tài nguyên trong VO. Một directory service có thể cho phép người truy vấn
tài nguyên qua tên và/hay các thuộc tính như kiểu, khả năng, tải, …
+ Co-allocation, scheduling, và broker service
Cho phép các thành phần tham gia VO yêu cầu cấp phát các tài nguyên cho các
mục đích cụ thể và lập lịch cho các tác vụ trên các tài nguyên tương ứng.
+ Monitoring ang dianostics sevice
Hỗ trợ việc kiểm soát các tài nguyên của VO, kiểm tra xem có bị lỗi, bị tấn
công, bị quá tải,… hay không.
+ Data replication service
Hỗ trợ quản lý tài nguyên lưu trữ của VO để tối ưu hiệu suất truy cập dữ liệu
theo các độ đo như thời gian đáp ứng, tính toàn vẹn, tin cậy, chi phí,…
+ Grid-enable programming system

Cho phép các sử dụng các mô hình lập trình hiện tại trong môi trường Grid, sử
dụng nhiều loại dịch vụ Grid để giải quyết các vấn đề như phát hiện, tìm kiếm
tài nguyên, bảo mật, cấp phát tài nguyên,…
Trang: 20
Điện toán lưới và đám mây GVHD: PGS.TS.Nguyễn Phi Khứ
+ Workload management system and collaboration framework
Cung cấp khả năng đặc tả, sử dụng, quản lý các luồng công việc đa thành phần,
bất đồng bộ và qua nhiều bước.
+ Software discovery service
Tìm kiếm và chọn ra các cài đặt phần mềm tốt nhất và môi trường thực thi dựa
theo ứng dụng cần được giải quyết.
+ Community authorization server
Thực hiện các chính sách công cộng quản lý truy cập tài nguyên, cho phép các
thành viên của cộng đồng truy cập đến các nguyên dùng chung. Các server này
sử dụng các dịch vụ xây dựng trên các protocol thông tin, quản lý tài nguyên
của tầng Resource và protocol bảo mật ở tầng Connectivity.
+ Community accounting and payment service
Thu thập các thông tin sử dụng tài nguyên để tính toán chi phí, thực hiện chi trả
và/hoặc giới hạn việc sử dụng tài nguyên của người dùng trong cộng đồng.
+ Collaboratory service
Hỗ trợ việc trao đổi thông tin đồng bộ và bất đồng bộ trong cộng đồng người dùng.
Các ví dụ trên đây cho thấy các protocol và dịch vụ tầng Collective rất phong
phú, đa dạng. Lưu ý rằng trong khi các protocol tầng Resource phải là các
protocol tổng quát và triển khai rộng rãi, thì các protocol tầng Collective có thể
trải dài từ việc phục vụ các vấn đề chung trong Grid đến việc phục vụ cho các
lĩnh vực ứng dụng cụ thể, có thể chỉ tồn tại trong các VO cụ thể. Theo nguyên
tắc, càng phục vụ nhiều người dùng thì các protocol và API của tầng Collective
càng phải được dựa theo chuẩn.
Các chức năng của tầng Collective có thể được cài đặt như các service (với các
protocol tương ứng), hay như các bộ SDK(với các API tương ứng) được thiết

kế để liên kết với ứng dụng. Trong cả hai trường hợp, các cài đặt này có thể
được xây dựng trên các protocol và API của tầng Resource và Connectivity.
e. Tầng Application
Tầng trên cùng của kiến trúc Grid bao gồm các ứng dụng của người dùng chạy
trong một trường VO. Hình 2-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.
Ví dụ : một chương trình phân tích bộ gen người cần phải chạy hàng ngàn tác
vụ độc lập, mỗi tác vụ cần nhiều file chứa thông tin từng phần của bộ gen có thể
sử dụng các chức năng Grid sau:
+ Lấy các thông tin, thẻ chứng thực (các protocol tầng Connectivity).
+ Truy vấn hệ thống thông tin Grid và các danh mục để tìm các tài
nguyên thích hợp và vị trí các file dữ liệu đầu vào. (các dịch vụ tầng
Collective).
+ Gửi các yêu cầu đến các tài nguyên để thực hiện tính toán, di chuyển
dữ liệu,… và kiểm soát quá trình thực thi công việc, thông báo cho
Trang: 21

×