Công nghệ Cluster là gì?
Công nghệ Cluster được hiểu là một nhóm các máy tính độc lập làm việc cùng nhau như một hệ thống duy nhất; để đảm bảo rằng các ứng dụng và tài nguyên quan trọng nhất có thể sẵn sàng phục vụ ở mức độ cao nhất. Nhóm được quản lý như một hệ thống duy nhất; chia sẻ một không gian chung và được thiết kế đặc biệt để chịu đựng; chấp nhận sai sót và hỗ trợ việc bổ sung hoặc loại bỏ các thành phần theo cách minh bạch với người dùng.
Cơ chế hoạt động của công nghệ Cluster
Do đó, Clustering có nghĩa là liên kết hai hoặc nhiều hệ thống với nhau; để xử lý khối lượng công việc thay đổi; hoặc để cung cấp hoạt động liên tục, không bị gián đoạn trong trường hợp một hệ thống bị lỗi. Mỗi máy tính có thể là một hệ thống đa xử lý. Ví dụ, một Cluster gồm bốn máy tính; mỗi máy có hai CPU, sẽ cung cấp tổng cộng tám CPU xử lý đồng thời. Khi được Clustering, các máy tính này hoạt động giống như một máy tính duy nhất; và được sử dụng để cân bằng tải, chịu lỗi và xử lý song song.
Hai hoặc nhiều máy chủ đã được cấu hình trong một Cluster sử dụng “cơ chế nhịp tim” để liên tục theo dõi tình trạng hoạt động của nhau. Mỗi máy chủ sẽ gửi cho máy chủ kia một thông báo “I am OK” – “Tôi ổn” trong những khoảng thời gian đều đặn. Nếu một số thông báo; nó được cho là máy chủ bị lỗi và máy chủ còn sống sẽ bắt đầu hoạt động chuyển đổi dự phòng. Có nghĩa là, máy chủ còn tồn tại giả định danh tính của máy chủ bị lỗi ngoài danh tính của nó và khôi phục các giao diện mạng, kết nối lưu trữ và ứng dụng. Khách hàng sau đó được kết nối lại với các ứng dụng của họ trên máy chủ còn tồn tại.
Các yêu cầu tối thiểu cho một cụm máy chủ là
(a) hai máy chủ được kết nối bởi một mạng,
(b) một phương pháp để mỗi máy chủ truy cập vào dữ liệu đĩa của các máy chủ khác
(c) phần mềm Cluster đặc biệt như Microsoft Cluster Service (MSCS).
Phần mềm đặc biệt này cung cấp các dịch vụ như phát hiện lỗi; khôi phục và khả năng quản lý dịch vụ như một hệ thống duy nhất.
Lợi ích của công nghệ phân cụm Cluster
Tính sẵn có, khả năng mở rộng; độ tin cậy cao là những lợi ích từ công nghệ phân cụm Cluster.
- Tính sẵn có (Availability): Các tài nguyên phải luôn sẵn có trong tình trạng cao nhất; kịp thời cung cấp và phục vụ cho người dùng cuối; giảm thiểu tình trạng hệ thống ngưng hoạt động.
- Khả năng mở rộng (Scalability): Hệ thống dễ dàng cho việc nâng cấp, mở rộng trong tương lai. Có thể dễ dàng thêm số lượng người dùng; những ứng dụng, tiện ích dịch vụ; cũng như các thêm các thiết bị và máy tính vào hệ thống để nâng cao chất lượng dịch vụ.
- Độ tin cậy cao (Reliability): giảm thiểu tần số xảy ra sự cố; và khả năng chịu đựng sai sót của hệ thống.
Các loại mô hình phân cụm Clustering
Có hai loại mô hình Cluster chính. Chúng là mô hình thiết bị được chia sẻ và mô hình thiết bị không được chia sẻ.
Trong mô hình thiết bị chia sẻ, các ứng dụng chạy trong một Cluster có thể truy cập bất kỳ tài nguyên phần cứng nào được kết nối với bất kỳ nút nào trong Cluster. Điều này buộc việc truy cập dữ liệu phải được đồng bộ hóa. Có một thành phần đặc biệt được gọi là Trình quản lý khóa phân tán (DLM – Distributed Lock Manager); là một dịch vụ quản lý quyền truy cập vào tài nguyên phần cứng Cluster. Khi nhiều ứng dụng truy cập cùng một tài nguyên, DLM sẽ giải quyết mọi loại xung đột nếu có.
Mặc dù DLM mang lại sự tinh vi và phức tạp; nhưng nó phát sinh chi phí đáng kể cho Cluster để đạt được hiệu suất mong muốn.
Còn mô hình thiết bị không chia sẻ, không sử dụng thành phần DLM này. Vì vậy, hệ thống phân Cluster không có chi phí này. Trong mô hình không chia sẻ; chỉ một nút có thể sở hữu và truy cập vào một tài nguyên phần cứng duy nhất tại bất kỳ thời điểm nào. Khi sự cố xảy ra; một nút sống sót có thể có quyền sở hữu tài nguyên của các nút bị lỗi và cung cấp chúng cho người dùng.
Máy chủ Cluster Microsoft
Microsoft Cluster Service (MSCS) được tích hợp sẵn trong Microsoft Windows NT Server 4.0 – Enterprise Edition. Phiên bản cập nhật của dịch vụ Cluster được tích hợp trong Windows 2000 Advanced Server và Windows 2000 Datacenter server. Vì việc triển khai phân Cluster của Microsoft sử dụng nền tảng dựa trên Intel và công nghệ mạng tiêu chuẩn; nó cung cấp giải pháp phân Cluster chi phí thấp. Dịch vụ Cluster cũng đã được thiết kế để sử dụng bởi các tổ chức nhỏ hơn; không có đủ khả năng cung cấp nhân viên hành chính có tay nghề cao.
Microsoft đã thiết kế các trình hướng dẫn trong Quản trị viên Cluster để tự động hóa và đơn giản hóa cấu hình Cluster. Với Windows 2000, Dịch vụ Tên Internet của Windows (WINS), Dịch vụ Tệp Phân tán (DFS) và giao thức cấu hình máy chủ động (DHCP) hiện là các dịch vụ nhận biết Cluster có thể tự động bị lỗi.
Các Cluster Windows của Microsoft được tạo thành từ hai máy chủ và một tập hợp các đĩa được gắn vật lý vào cả hai máy chủ. Mặc dù các đĩa được kết nối với cả hai máy chủ; chỉ một máy chủ có thể hỗ trợ; sở hữu và có đặc quyền truy cập vào một đĩa cụ thể bất kỳ lúc nào.
Khi một máy chủ bị lỗi, máy chủ kia sẽ khởi động lại các ứng dụng đang chạy trên máy chủ bị lỗi và tiếp quản quyền sở hữu đĩa và các tài nguyên khác của nó. Thuật ngữ lưu trữ chia sẻ được sử dụng để phân biệt kiểu thiết kế Cluster này với thiết kế Cluster; mà trong đó, mỗi đĩa được sao chép vật lý và được kết nối với một máy chủ khác và nơi tất cả các thay đổi dữ liệu được ghi vào cả hai bộ đĩa. Kiến trúc thứ hai được gọi là thiết kế Cluster lưu trữ được nhân đôi.
Các thành phần chính của Microsoft Cluster Service
MSCS hỗ trợ Cluster hai máy tính chạy Microsoft NT Server – Enterprise Edition. MSCS bao gồm hai thành phần chính: phần mềm phân Cluster và quản trị viên phân Cluster. Phần mềm phân Cluster cho phép hai máy chủ của một Cluster trao đổi các loại thông báo cụ thể; để kích hoạt việc chuyển tài nguyên vào thời điểm thích hợp. Phần mềm phân Cluster có hai thành phần chính: dịch vụ Cluster và giám sát tài nguyên. Dịch vụ Cluster chạy trên mỗi máy chủ Cluster. Nó kiểm soát hoạt động của Cluster, giao tiếp giữa các máy chủ Cluster và các hoạt động lỗi. Trình giám sát tài nguyên xử lý giao tiếp giữa dịch vụ Cluster và tài nguyên ứng dụng.
Quản trị viên Cluster là một ứng dụng đồ họa được sử dụng để quản lý một Cluster. Các ứng dụng mạng, tệp dữ liệu và các công cụ khác có sẵn trong hệ thống là tài nguyên Cluster cung cấp dịch vụ cho máy khách mạng. Tài nguyên chỉ được lưu trữ trên một nút bất kỳ lúc nào.
Windows Load Balancing Service (WLBS)
WLBS là một tính năng cân bằng tải cho các ứng dụng Windows NT TCP / IP hỗ trợ cân bằng tải và phân Cluster cho các dịch vụ dựa trên Web như Máy chủ Thông tin Internet (IIS) (Web, FTP, v.v.), phương tiện truyền trực tuyến, mạng riêng ảo (VPN) và Máy chủ Proxy của Microsoft. Network Load Balancing là tên của phần mềm cân bằng tải ứng dụng TCP / IP trong Windows 2000. Các Cluster NLB phân phối các kết nối máy khách qua nhiều máy chủ; mang lại sự ổn định và tính sẵn sàng cao cho các dịch vụ và ứng dụng dựa trên TCP / IP.
Từ góc độ phần mềm, MSCS trên Windows NT đang bị tụt hậu về chức năng quản lý. MSCS xem mỗi Cluster như một hòn đảo đối với chính nó; làm cho quản trị viên trở nên cồng kềnh khi quản lý nhiều Cluster trong một doanh nghiệp.
Với dịch vụ Cluster Windows 2000, Microsoft đã giải quyết các thiếu sót về quản trị Cluster; bổ sung các cải tiến về tính khả dụng và cung cấp khả năng tích hợp tốt hơn với các công nghệ cơ bản của Windows 2000; giúp việc phát triển và triển khai ứng dụng dễ dàng hơn.