TỔNG QUAN VỀ CÔNG NGHỆ CLUSTERING
Khái niệm Clustering
Clustering là kiến trúc nhằm tăng cường khả năng sẵn sàng cho các hệ thống mạng máy tính Nó cho phép nhiều máy chủ kết hợp thành một cụm, có khả năng chịu đựng lỗi (fault-tolerant) để nâng cao độ sẵn sàng của hệ thống Cluster bao gồm nhiều máy chủ được kết nối theo dạng song song hoặc phân tán, hoạt động như một tài nguyên thống nhất.
Khi một máy chủ trong Cluster ngừng hoạt động do sự cố hoặc bảo trì, toàn bộ công việc sẽ tự động chuyển sang máy chủ khác mà không gây gián đoạn cho hệ thống Quá trình này được gọi là “fail-over”, trong khi việc phục hồi tài nguyên cho máy chủ ban đầu được gọi là “fail-back”.
Việc thiết kế và lắp đặt các cluster cần thỏa mãn các yêu cầu sau:
Yêu cầu về tính năng sẵn sàng cao (High availability) đòi hỏi các tài nguyên mạng phải luôn được duy trì ở mức tối ưu, nhằm đảm bảo phục vụ người dùng cuối một cách liên tục và giảm thiểu tối đa tình trạng ngưng hoạt động hệ thống ngoài ý muốn.
Độ tin cậy cao của cluster được định nghĩa là khả năng giảm thiểu tần suất xảy ra các sự cố, đồng thời nâng cao khả năng chịu đựng sai sót của hệ thống.
Hệ thống cần phải đáp ứng yêu cầu về khả năng mở rộng (scalability), cho phép nâng cấp và mở rộng dễ dàng trong tương lai Điều này bao gồm việc thêm các thiết bị và máy tính vào hệ thống để cải thiện chất lượng dịch vụ, cũng như tăng số lượng người dùng, ứng dụng, dịch vụ và tài nguyên mạng khác.
Ba yêu cầu quan trọng trong hệ thống được gọi là RAS (Reliability-Availability-Scalability) Những hệ thống đáp ứng đầy đủ ba tiêu chí này được xem là hệ thống RAS, cần lưu ý rằng RAS không nên nhầm lẫn với dịch vụ truy cập từ xa (Remote Access Service).
Phân loại Clustering
Kỹ thuật Clustering được chia làm 2 loại gồm Cluster và Network Load Balancing (NLB)
A cluster is utilized for stateful applications, which are long-running applications, including database servers like Microsoft SQL Server, Microsoft Exchange Server, and File and Print Servers All nodes within the cluster share a common data storage location, which can employ SCSI technology or a Storage Area Network (SAN) Windows Server 2003 Enterprise and Datacenter editions support clusters of up to 8 nodes, while Windows 2000 Advanced Server supports 2 nodes and Windows 2000 Datacenter Server supports 4 nodes.
NLB (Cân bằng tải mạng) là một kỹ thuật Clustering giúp chia tải và nâng cao khả năng chịu lỗi cho hệ thống, đặc biệt hiệu quả cho các ứng dụng Stateless như Web, FTP, VPN và DHCP Mỗi node trong hệ thống cần có một nơi lưu trữ cục bộ riêng, dẫn đến yêu cầu đồng bộ hóa dữ liệu (replication) tại mỗi vị trí lưu trữ Số lượng node càng nhiều thì thời gian cho việc replication càng kéo dài, vì vậy không nên triển khai các ứng dụng Stateful trên NLB để đảm bảo tính chính xác của dữ liệu Bài viết không đi sâu vào chi tiết kỹ thuật này.
CLUSTER SERVICE
Cấu trúc của Cluster
Trong một Cluster, tùy thuộc vào nhu cầu, chúng ta có thể triển khai nhiều ứng dụng trên cùng một Cluster hoặc cài đặt mỗi node một ứng dụng riêng biệt Cấu trúc của một Cluster không cố định, nhưng thường thấy các loại cấu trúc sau là hữu ích nhất.
Khi triển khai hai ứng dụng stateful trên hệ thống cluster, một phương pháp đơn giản là cài đặt cả hai ứng dụng trên mỗi node Tuy nhiên, cấu trúc này có nhược điểm là nếu một ứng dụng gặp lỗi, nó sẽ ảnh hưởng đến ứng dụng còn lại trên cùng một server, dẫn đến hiệu suất của hệ thống cluster giảm.
Vào thứ 2, chúng tôi đã thiết lập hai hệ thống cluster riêng biệt, mỗi cluster chỉ cài đặt một ứng dụng duy nhất Cấu trúc này mang lại hiệu quả cao hơn, vì nếu một ứng dụng gặp lỗi, nó sẽ không ảnh hưởng đến các ứng dụng khác Tuy nhiên, chi phí đầu tư cho mô hình này rất cao do số lượng node cần thiết cho mỗi ứng dụng lớn hơn so với loại 1.
Vào thứ 3, chúng ta triển khai cả hai ứng dụng trên cùng một cluster, với mỗi node cài đặt một ứng dụng Khác với loại 1, hệ thống này có một node backup (node passive) để hỗ trợ Node passive sẽ cài đặt cả hai ứng dụng từ node 1 và node 2 (cả hai đều là node Active) Nếu một trong hai node Active gặp sự cố, node passive sẽ ngay lập tức thay thế chức năng của node bị lỗi, mang lại hiệu quả cao hơn so với hai loại trước đó.
Các thuật ngữ sử dụng trong Server Cluster
- Node: Là một server thuộc một Cluster nào đó mà trên đó các ứng dụng và Cluster service được cài đặt
Quá trình failover diễn ra tự động khi một node trong Cluster gặp sự cố, dẫn đến việc chuyển giao các resource group của nó sang một hoặc nhiều node khác trong Cluster vẫn đang hoạt động Tự động failover tương tự như kế hoạch tái chỉ định quyền sở hữu các resource.
Quá trình failover yêu cầu xác định các resource group đang chạy trên node hỏng và xác định các node có khả năng giữ quyền sở hữu Các node trong Cluster sẽ đàm phán để giành quyền sở hữu resource group dựa trên khả năng, tải hiện tại, khả năng phản hồi ứng dụng và danh sách node ưu tiên Danh sách này là một thuộc tính trong resource group, giúp chỉ định resource group tới một node cụ thể Sau khi việc đàm phán hoàn tất, tất cả các node trong Cluster sẽ cập nhật cơ sở dữ liệu của mình và tiếp tục theo dõi node sở hữu resource group.
- Failback: Khi một node trở lại phục vụ, Cluster trả lại quyền sở hữu tài nguyên cho nó và nó sẵn sàng để thực hiện yêu cầu
- Quorum Resource: Trong mỗi Cluster, Quorum resource chứa đựng và duy trì những thông tin cấu hình cần thiết cho việc phục hồi Cluster
Các Cluster resource bao gồm phần cứng vật lý như ổ đĩa và card mạng, cùng với các thực thể logic như địa chỉ IP, ứng dụng và cơ sở dữ liệu Mỗi node trong Cluster sẽ được cấp quyền sở hữu các resource cục bộ.
Cluster có các tài nguyên chung như thiết bị lưu trữ và thẻ mạng riêng Mỗi node trong Cluster đều có khả năng truy cập vào những tài nguyên này Một tài nguyên chung quan trọng là Quorum resource, là ổ đĩa vật lý trong dãy ổ đĩa chung của Cluster, đóng vai trò thiết yếu trong hoạt động của Cluster Quorum resource cần được dành riêng cho các tác vụ của node, như tạo Cluster hoặc thêm node mới.
Resource group là một tập hợp logic của các resource trong một Cluster, bao gồm các ứng dụng, thiết bị ngoại vi và dữ liệu liên kết với nhau Nó có thể chứa các thực thể của Cluster như server ảo và địa chỉ IP, nhưng chỉ được liên kết khi cần thiết Mỗi resource group chỉ có thể được sở hữu bởi một node tại một thời điểm, và các resource bên trong group phải tồn tại trên node đó Các node khác trong Cluster không thể sở hữu các resource group khác nhau trong cùng một resource group.
Các thành phần của Cluster Service
Dịch vụ Cluster hoạt động trên từng nút trong Server Cluster, quản lý tất cả các hoạt động của hệ thống Nó bao gồm nhiều thành phần phần mềm phối hợp với nhau để theo dõi, duy trì tính ổn định và di chuyển tài nguyên giữa các nút.
Resource DLLs play a crucial role in managing and monitoring applications within a Cluster database They are responsible for backing up and restoring application properties, bringing resources online and offline, and checking the status of these resources During failover events, Resource DLLs collaborate with the Resource Monitor and Failover Manager to ensure a smooth failover process.
The Checkpoint Manager ensures that Cluster service can recover from a resource failure by monitoring registry keys when a resource is brought online and recording checkpoint data to the quorum resource when the resource goes offline.
Một số ứng dụng lưu trữ thông tin cấu hình cục bộ thay vì trong cơ sở dữ liệu cấu hình cluster Để đáp ứng yêu cầu này, Checkpoint Manager duy trì một bản sao của thông tin cục bộ trên Quorum resource, đảm bảo khả năng failover Đối với các ứng dụng lưu trữ thông tin cấu hình trong registry trên server, Checkpoint Manager theo dõi dữ liệu khi ứng dụng hoạt động trực tuyến và cập nhật quorum resource khi có sự thay đổi trong dữ liệu cấu hình.
Database Manager hoạt động trên mỗi node, duy trì một bản sao cục bộ của cơ sở dữ liệu cấu hình Cluster, chứa thông tin về các thực thể vật lý và logic trong Cluster Các thực thể này bao gồm Cluster, các node thành viên, resource group, các loại resource và mô tả các resource đặc biệt như ổ đĩa và địa chỉ IP Database Manager sử dụng Global Update Manager để cập nhật và đồng bộ hóa tất cả các thay đổi tới các node khác trong Cluster Nhờ vào phương thức này, thông tin cấu hình được duy trì xuyên suốt Cluster, ngay cả khi một node gặp sự cố, và khi Administrator thực hiện thay đổi cấu hình trước khi node đó trở lại hoạt động.
Database Manager cung cấp giao diện để theo dõi và quản lý các thay đổi trong cơ sở dữ liệu cấu hình cluster thông qua các thành phần khác như Failover Manager và Node Manager Giao diện này cho phép thực hiện các thay đổi tương tự như khi sử dụng Windows Application Programming Interface (API) để cập nhật registry Các thay đổi này được Database Manager tiếp nhận và cập nhật cho các node khác trong cluster thông qua Global Update Manager.
The Event Log Replication Manager is a component of the Cluster service that collaborates with the Event Log Service to replicate event logs across all nodes within the Cluster Each event is tagged to indicate the specific node where the event occurred.
Các sự kiện được ghi lại trên một node sẽ được sắp xếp, củng cố và gửi qua Event Log Replication Manager để phát sóng tới các node hoạt động khác Nếu có nhiều sự kiện xảy ra trong một khoảng thời gian ngắn, chúng sẽ được kết hợp trước khi được phát sóng Mỗi sự kiện đều được dán nhãn để xác định node mà chúng xảy ra, và các node khác sẽ tiếp nhận các sự kiện này và ghi lại vào local log của mình.
Failover Manager là công cụ quản lý các tài nguyên và nhóm tài nguyên, chịu trách nhiệm khởi động và tắt các tài nguyên, đồng thời chuẩn bị cho quá trình failover của nhóm tài nguyên Để thực hiện nhiệm vụ này, Failover Manager nhận thông tin về tài nguyên và trạng thái hệ thống từ các thành phần Cluster trên một node cùng với Resource Monitors Resource Monitors đóng vai trò cung cấp môi trường hoạt động cho các DLL tài nguyên và đảm bảo giao tiếp giữa các DLL tài nguyên và Failover Manager.
Failover Manager trong Cluster xác định node nào sẽ sở hữu resource group Khi cần thực hiện failover cho resource group, các Failover Manager trên từng node sẽ hợp tác để tái chỉ định quyền sở hữu cho resource group đó.
Dựa vào cấu hình của nhóm tài nguyên, Failover Manager có khả năng khởi động lại tài nguyên bị hỏng một cách cục bộ hoặc đưa tài nguyên đó vào trạng thái offline đối với các tài nguyên liên quan, sau đó chuẩn bị cho quá trình failover.
Global Update Manager được sử dụng bởi các thành phần trong cluster như Failover Manager và Database Manager để truyền tải các cập nhật đến từng node Quá trình cập nhật bắt đầu từ một node client, với một node khác được chỉ định để giám sát việc cập nhật nhằm đảm bảo tất cả các node đều nhận được thay đổi Node client yêu cầu một global lock từ node giám sát để thực hiện cập nhật Nếu lock chưa sẵn sàng, node client sẽ chờ cho đến khi có thể sử dụng Khi lock có sẵn, node giám sát sẽ cấp phát cho node client và chỉ định cập nhật cục bộ Nếu node client cập nhật thành công nhưng một node khác gặp lỗi, node đó sẽ bị loại bỏ khỏi danh sách hoạt động và cập nhật sẽ tiếp tục trên các node còn lại Trong trường hợp này, quorum log sẽ được ghi lại để đảm bảo node bị lỗi có thể nhận lại thông tin cấu hình cần thiết khi trở lại hoạt động.
Log Manager tương tác với Checkpoint Manager để đảm bảo rằng log phục hồi trên tài nguyên quorum chứa dữ liệu cấu hình mới nhất và các thay đổi checkpoint Nếu một hoặc nhiều node trong Cluster bị hỏng, các node còn hoạt động có thể tiếp tục thực hiện thay đổi cấu hình Khi các node này phục hồi, Database Manager sử dụng Log Manager để ghi lại thay đổi cấu hình lên tài nguyên quorum Các node bị lỗi sẽ đọc vị trí của tài nguyên quorum trong cluster cục bộ và các cơ chế sẽ dò tìm những tài nguyên quorum không chính xác trong cơ sở dữ liệu cũ Sau đó, Database Manager yêu cầu Log Manager cập nhật bản sao cục bộ của Cluster bằng cách sử dụng file checkpoint trong tài nguyên quorum và đối chiếu với file log trên đĩa quorum, hoàn thành việc cập nhật Cluster.
Quản lý thành viên (Membership Manager) có nhiệm vụ duy trì sự nhất quán về trạng thái của các node trong Cluster, cho dù chúng đang hoạt động hay bị hỏng Thành phần này tập trung vào thuật toán regroup, được kích hoạt khi phát hiện có một hoặc nhiều node gặp sự cố.
Node Manager hoạt động trên mỗi node trong cluster, duy trì danh sách cục bộ các node, mạng và giao diện mạng Nó đảm bảo rằng tất cả các node có cùng danh sách các node hoạt động thông qua giao tiếp giữa chúng Sử dụng thông tin từ cơ sở dữ liệu cấu hình Cluster, Node Manager xác định node nào được thêm vào hoặc loại bỏ Nó theo dõi các node khác để phát hiện lỗi bằng cách gửi và nhận các heartbeat Nếu một node gặp sự cố giao tiếp, nó sẽ phát broadcast thông điệp tới các node khác để xác nhận lại danh sách hoạt động, gọi là sự kiện regroup Node Manager cũng tham gia vào quá trình thêm node mới vào Cluster, thiết lập giao tiếp với các Node Manager khác để thực hiện chứng thực.
Nguyên tắc hoạt động của Server Cluster
Khi một node hoặc ứng dụng trong Cluster gặp sự cố, Server Cluster có khả năng khởi động lại ứng dụng bị lỗi hoặc phân phối công việc từ node gặp sự cố sang các node còn lại hoạt động trong Cluster.
Dịch vụ Cluster kiểm tra tình trạng hoạt động của các resource và node, tự động di chuyển hoặc khởi động lại ứng dụng, dữ liệu và file tới một node còn hoạt động Quá trình này giúp duy trì tính sẵn sàng cao cho các resource như database, file share và application, phục vụ nhu cầu của người dùng và khách hàng Server Cluster cung cấp hai cơ chế kiểm tra tình trạng không hoạt động khác nhau.
Detecting Node Failure involves periodic exchange of heartbeat messages between nodes in a cluster over a private network This heartbeat exchange allows each node to assess the availability of other nodes and their applications If a server fails to respond to a heartbeat, the remaining active servers initiate a failover process to negotiate ownership of the resources and applications of the failed node, utilizing Challenge and Defense protocols for this negotiation.
Việc thất bại trong quá trình phản hồi Heartbeat có thể xảy ra do nhiều nguyên nhân như lỗi máy tính, lỗi giao diện mạng hoặc sự cố mạng Thông thường, khi các node giao tiếp, Configuration Database Manager sẽ gửi bản cập nhật Global Configuration Database đến từng node Tuy nhiên, khi xảy ra lỗi trong quá trình trao đổi heartbeat, Log Manager sẽ ghi lại các thay đổi trong cấu hình database tới Quorum Resource, đảm bảo rằng các node còn hoạt động có thể truy cập thông tin cấu hình Cluster mới nhất và dữ liệu registry cục bộ trong quá trình phục hồi.
The Failover Manager and Resource Monitors work together to detect and recover failed resources Resource Monitors continuously check the status of resources utilizing Resource DLLs through a two-step process: a quick LookAlive query followed by a longer IsAlive query When a Resource Monitor identifies a failed resource, it alerts the Failover Manager and continues to monitor the resource.
Failover Manager giữ vai trò quan trọng trong việc duy trì trạng thái của các resource và resource group, đồng thời đảm nhiệm việc phục hồi khi có sự cố xảy ra Khi một resource bị lỗi, Failover Manager sẽ yêu cầu Resource Monitor cung cấp thông tin về tình trạng hoạt động của resource Sau khi xác định được resource bị lỗi, Failover Manager có khả năng khởi động lại resource hoặc di chuyển toàn bộ resource group sang một node khác để đảm bảo tính liên tục của dịch vụ Quá trình phục hồi này dựa trên các thuộc tính của resource, resource group và tình trạng khả dụng của node.
Trong quá trình failover, resource group được xem như một đơn vị failover để đảm bảo phục hồi tài nguyên chính xác Khi một tài nguyên được khôi phục từ trạng thái fail, Resource Monitor sẽ thông báo cho Failover Manager, từ đó tự động thực hiện failback các resource group theo cấu hình thuộc tính failback của chúng.
- Đối với những Cluster có 2 node, dùng thông điệp unicast cho traffic trong nội bộ Cluster Không dùng multicast
For clusters with three or more nodes operating in a mixed version setup—where some nodes run Windows Server 2003 Enterprise Edition or Datacenter Edition while others run Windows 2000—communication occurs through unicast messages rather than multicast.
Heartbeat là một gói UDP được gửi giữa các node trong Cluster mỗi 1.2 giây để xác định sự hoạt động của từng node Nếu một node không nhận được 5 heartbeat liên tiếp, nó sẽ khởi động quá trình regroup event nhằm đảm bảo tất cả các node có danh sách nhất quán về những node đang hoạt động Mạng Server Cluster có thể được phân loại thành ba loại: private (chỉ giao tiếp giữa các node), public (giao tiếp giữa client và node) và mixed (cả giao tiếp giữa node và client).
Heartbeat có khả năng giao tiếp qua mọi loại mạng, nhưng việc theo dõi heartbeat và cách Cluster thể hiện các heartbeat lỗi phụ thuộc vào các kiểu mạng khác nhau.
Trên mạng private và mixed, các node giao tiếp với nhau, và việc theo dõi heartbeat giúp xác định hoạt động của từng node trong Cluster.
- Trên public network, chỉ có sự giao tiếp giữa client với node, heartbeat được theo dõi chỉ để xác định network adapter của node có hoạt động hay không
Khi một node không nhận được 5 heartbeat liên tiếp, quá trình regroup event sẽ được kích hoạt Nếu node này vẫn không phản hồi, nó sẽ bị loại khỏi danh sách các node hoạt động Nếu node không phản hồi đang sở hữu một quorum resource, các node còn lại sẽ tiến hành đàm phán quorum Cuối cùng, quá trình failover sẽ được bắt đầu.
Quá trình đàm phán quorum diễn ra khi một node sở hữu quorum resource gặp lỗi hoặc không hoạt động, buộc các node còn lại phải xác định node nào sẽ tiếp quản quyền sở hữu Mục tiêu của quá trình này là đảm bảo rằng chỉ một node duy nhất nắm giữ quorum resource tại bất kỳ thời điểm nào.
Việc chỉ định một node sở hữu quorum resource là rất quan trọng để ngăn chặn tình trạng "split brain" trong Cluster Khi tất cả các giao tiếp giữa các node bị lỗi, Cluster có thể bị chia thành nhiều phần riêng biệt Server Cluster giải quyết vấn đề này bằng cách cho phép chỉ một Cluster tách ra có node sở hữu quorum resource tiếp tục hoạt động Những node không thể giao tiếp với node này sẽ không còn được coi là thành viên trong Cluster.
Clusters ensure that resource groups remain available by monitoring the status of resources, bringing them online, and executing failover processes.
Tính mở của Cluster
Một yếu tố quan trọng mà các nhà đầu tư xây dựng hệ thống cần lưu ý là khả năng mở rộng của hệ thống Clustering Tùy thuộc vào yêu cầu cụ thể, các cluster có thể cần bổ sung máy chủ mới hoặc nâng cấp CPU và RAM cho các máy chủ hiện có để tăng cường hiệu suất làm việc.
Để mở rộng Cluster bằng cách thêm các server, cả kỹ thuật Clustering và hệ điều hành của server đều đóng vai trò quan trọng Sự khác biệt cơ bản giữa Advanced Server và Datacenter Server nằm ở khả năng mở rộng, cụ thể là số nút có thể sử dụng trong Cluster Bảng dưới đây sẽ cung cấp chi tiết về số lượng tối đa các nút được hỗ trợ trong một Cluster cùng với các yêu cầu về chuẩn lưu trữ.
Hệ điều hành Số lượng các nodes Lưu trữ
1-2 Fibre Channel Windows 2000 Advanced Server
Windows 2000 Datacenter Server 1-4 Fibre Channel
Edition Windows Server 2003 Enterprise version for Itanium – based systems
Edition for Itanium – based systems
Edition for Itanium – based systems
Windows Server 2008 Datacenter x64 Edition Windows Server 2008 R2 Enterprise
Số node tương ứng với các hệ điều hành và chuẩn lưu trữ
Để mở rộng Cluster bằng cách thêm CPU và RAM, việc lựa chọn hệ điều hành là rất quan trọng Hệ điều hành Windows Advanced Server chỉ hỗ trợ tối đa 8 bộ vi xử lý và 8 GB RAM, trong khi Windows Datacenter Server hỗ trợ lên đến 32 bộ vi xử lý và 64 GB RAM Do đó, nếu nhu cầu tăng thêm CPU và RAM vượt quá khả năng của hệ điều hành hiện tại, có thể cần nâng cấp từ Advanced Server lên Datacenter Server.
Công cụ Cluster Administrator
Đây là công cụ dùng để khởi tạo, thiết lập và quản lý Cluster
To launch the Cluster Administrator tool, navigate to Star > Programs > Administrative Tools > Cluster Administrator To create a new cluster, select "Create New Cluster." If you wish to add a node to an existing cluster, choose "Add Nodes to Cluster." To access an already established cluster, select "Open Connection to Cluster."
Quá trình tạo mới Cluster, thêm node sẽ được trình bày chi tiết trong phần mô phỏng
Chỉnh sửa thông tin cấu hình Cluster: Chuột phải vào Cluster chọn Propeties
- Tab General : thiết lập tên Cluster
- Quorum: thiết lập đường dẫn lưu trữ thông tin Quorum
- Network: mức động ưu tiên của card mạng mà Cluster sẽ truyền dữ liệu nội bộ
- Security: thiết lập quyền quản lý Cluster cho các user
Tạo mới các Group, Resource:
Thay đổi thông tin của Group: Chuột phải vào Group cần thay đổi, chọn Propeties:
- Tab General: thiết lập tên Group
Trong mục Modify ta có thể thiết lập mực ưu tiên của một node sẽ sở hữu Cluster khi quá trình Failover xảy ra:
Tab Failover quy định số lần một node có thể bị lỗi (Threshold) trong một khoảng thời gian nhất định Nếu một node vượt quá giới hạn số lần lỗi này, nó sẽ tạm thời bị loại ra khỏi nhóm để đảm bảo tính ổn định và hiệu suất của hệ thống.
Tab Failback quy định khoảng thời gian mà một node cần để trở lại và đảm nhận vai trò cũ sau khi hoạt động trở lại.
Prevent failback: không cho trở lại vai trò cũ
Allow failback: cho phép trở lại ngay lập tức (Immediately) hoặc sau một khoảng thời gian (Failback between).
CÀI ĐẶT VÀ CẤU HÌNH HỆ THỐNG EXCHANGE CLUSTER
Yêu cầu hệ thống và các bước chuẩn bị cài đặt
- Một máy Domain Controller (DC) Domain Name: test.com
- Hai máy cài Windows Server 2003 Enterprise Edition SP2 (Node1, Node2) đã join vào máy DC.
Quy trình cài đặt và cấu hình
3.3.1 Cấu hình thiết lập mạng cho các nút Cluster Đặt tên cho các kết nối mạng là Public và Private tương ứng với mạng bên trong và mạng bên ngoài (thực hiện điều này cho cả hai nút)
Cấu hình Public network cho các thiết lập mạng tương ứng
- Cấu hình cho máy Node1
- Cấu hình mạng cho máy Node2
Kích Advanced, chọn tab DNS Hủy chọn Register this connection's addresses in DNS và Use this connection's DNS suffix
Kích vào tab WINS, hủy chọn Enable LMHOSTS lookup và chọn Disable NetBIOS over TCP/IP
3.3.2 Tinh chỉnh một số cấu hình hệ thống Cluster
Kích Advanced > Advanced Setting, chỉnh sao cho card Public được liệt kê đầu tiên trong danh sách thứ tự kết nối
Vô hiệu hóa File and Printer Sharing for Microsoft Networks cho kết nối mạng Private
3.3.3 Tạo và thiết lập hệ thống Cluster trên Node1
Mở Start /Administrative Tools / Cluster Administrator và chọn Create new cluster Kích OK
Trong cửa sổ Cluster Name and Domain chọn Domain name và khai báo tên cho hệ thống Cluster: EXCluster
Nhập vào tên của máy chủ Windows 2003 sẽ làm nút đầu tiên trong cluster
Cho phép tiện ích cluster wizard xác định cấu hình cluster và kích Next
Trong cửa sổ IP Adress nhập IP đại diện cho Cluster
Nhập usename và password cho account Cluster của Cluster Service trong hộp thoại Cluster Service Account
Kích Quorum và chọn Majority Node Set để lưu trưu thông tin hệ thống Cluster
Hệ thống sẽ tạo và cấu hình Cluster
Kích Finish để hoàn tất quá trình tạo Cluster
3.3.4 Thêm Node2 vào hệ thống Cluster
- Mở Cluster Administrator/ File/ Add Node
- Nhập vào tên của máy chủ sẽ là nút thứ hai
- Tiếp theo hệ thống sẽ kiểm tra các yêu cầu và nhập phần password cho DomainAccount của Cluster Service
- Quá trình add Node2 kết thúc
3.3.5 Cài đặt Hub Server Role va Client Access trên máy Domain
Phiên bản cài đặt là Exchange 2007 SP1 Chạy file Setup.exe
- Chọn Install Microsoft Exchange Server 2007
- Chọn Custom Exchange Server Installation Click Next
- Chọn Client Access Role và Hub Transport Role Click Next
- Màn hình Completion chon Finish
3.3.6 Cấu hình Majority Node Set (MNS) Quorum với File Share
Chứng kiến Majority Node Set (MNS) Quorum với File Share Witness là một mô hình đại biểu hoàn toàn mới, cho phép sử dụng xác nhận chia sẻ file bên ngoài để bổ sung cho trạng thái của cluster trong triển khai two-node MNS quorum cluster Điều này không chỉ cải thiện hiệu quả sử dụng mà còn đáp ứng yêu cầu cho chức năng CCR trong Exchange Server 2007.
File chia sẻ cho xác nhận chia sẻ file này có thể được đặt trong bất kỳ kiểu
In your environment, the best practice for Windows Server is to utilize the Exchange 2007 Hub Transport Server within the Active Directory server that has corresponding cluster nodes First, create a shared file on the Hub Transport server by logging into the server, opening Windows Explorer, and creating a new folder named E2K7Cluster on the C drive or any preferred drive.
Chuột phải vào thư mục E2K7Cluster chọn Properties và kích Sharing
Kích Permissions và cấu hình các điều khoản chia sẻ để chỉ có Administrator mới được quyền truy cập vào thư mục chia sẻ này
To configure security settings, navigate to the Security tab, select Advanced, and uncheck the option to allow inheritable permissions from the parent to propagate to this object and all child objects Then, log in to Node1 to set the properties pointing to the newly created shared file by using the command provided below.
Cluster res “Majority Node Set” /priv MNSFileShare=\\DC\E2K7Cluster
Bạn sẽ nhận được thông báo rằng tất cả các thuộc tính đã được lưu, nhưng không phải tất cả các thay đổi sẽ có hiệu lực cho đến khi tài nguyên được đưa ra trực tuyến lần tiếp theo Để áp dụng tất cả các thay đổi, bạn cần chuyển nhóm cluster từ một nút này sang nút khác, nghĩa là cần đưa nhóm cluster offline và sau đó trực tuyến trở lại Bạn có thể thực hiện điều này bằng cách sử dụng lệnh dưới đây:
Cluster Group “Cluster Group” /Move
Khi đã thực hiện như vậy thì bạn sẽ thấy rằng nhóm cluster lúc này sẽ online trong Node2
Tiếp theo hãy thẩm định xem thuộc tính Priv đã được thiết lập đúng hay chưa Cluster Res “Majority Node Set” /Priv
Để kích hoạt và cấu hình Transport Dumpster, bạn sử dụng CMDlet Set-TransportConfig Ví dụ, để thiết lập kích thước lớn nhất của dumpster trên một nhóm lưu trữ là 25MB và thời gian lưu trữ là 10 ngày, bạn cần chạy lệnh sau:
MaxDumpsterTime 10.00:00:00 Đánh lệnh Get-TransportConfig để có thể thấy được các thiết lập cấu hình MaxDumpsterSizePerStorageGroup và MaxDumpsterTime
3.3.7 Cài đặt Cluster Continuous Replication Databases
- Cài đặt Active Clustered Mailbox Role trên máy Node1
Bỏ đĩa cài đặt Exchange chạy file Setup.exe
+ Chọn Custom Exchange Server Installation
Tích vào Active Clustered Mailbox Role và kích Next
Lúc này bạn hãy chọn Cluster Continuous Replication sau đó chỉ định tên cho máy chủ và một địa chỉ IP duy nhất trong mạng chung Kích Next
Chọn Finish để hoàn tất việc cài Active Clustered Mailbox Role
Để cài đặt Passive Clustered Mailbox Role trên Node2, bạn cần đăng nhập vào Node2 và thực hiện các bước tương tự như khi cài đặt trên Node1, với điểm khác biệt là chọn Passive Clustered Mailbox Role thay vì Active Clustered Mailbox Role.
3.3.8 Thẩm định chức năng của CCR trên Mailbox Server
Mở Cluster Administrator và chọn các Exchange Resources đã được tạo Như hình bên dưới cho thấy, cả hai nút đã được liệt kê trong bảng điều khiển bên trái, với tất cả tài nguyên Exchange hiện đang thuộc về Node2.
Mở Exchange Management Shell bằng cách kích Start > All rograms > Microsoft Exchange Server 2007 > Exchange Management Shell trên một trong các nút, sau đó đánh Get-ClusteredMailboxServerStatus
Bạn sẽ thấy trạng thái của máy chủ mailbox đã nhóm là Online, và Node2 hiện trong tình trạng kích hoạt
Để kiểm tra trạng thái online của mailbox server, hãy sử dụng CMDlet Move-ClusteredMailboxServer để chuyển các tài nguyên Exchange từ nút một sang nút hai Trong môi trường kiểm thử, chúng tôi thực hiện thao tác này bằng CMDlet như sau:
Move-ClusteredMailboxServer -Identity:E2K7CCR -TargetMachine:Node1 - MoveComment:"This is a test!"
Bạn sẽ được yêu cầu xác nhận hành động bằng cách chọn Yes và nhấn Enter Sau khi xác nhận, các tài nguyên hộp thư đã nhóm sẽ được chuyển đến nút đầu tiên.
Kích Start > All Programs > Microsoft Exchange Server 2007 > Exchange
In the Management Console, navigate to Server Configuration and select Mailbox It is important to note that the mailbox server, grouped under the name E2K7Cluster, will appear in the results pane and is identified as a cluster server.
Để kiểm tra quá trình chuyển đổi giữa các nút, bạn cần xem lại file bản ghi Cách đơn giản nhất là tạo một file bản ghi mới bằng cách gửi một số thông báo kiểm thử kèm theo một hoặc hai file đính kèm.
Kiểm tra dữ liệu trên hai node cho thấy các file được đồng bộ liên tục với kích thước giống nhau Khi mở cả hai thư mục chứa Database Mail Kiem Thu, chúng ta nhận thấy dữ liệu tự động được sao chép ở cả hai node.
3.3.9 Kiểm tra quá trình Failover từ Node1 sang Node2
- Mở Exchange Manager Consolo để kiểm tra tình trạng Failover
Tạo ra một Mailbox Database để kiểm tra
- Vào Server Configuration / Mailbox -> Xem thông tin của Mailbox Group
- Qua tab Clustered Mailbox Server sẽ thấy tình trạng Online và Node1 Active và Node2
- Tạo ra 2 user mailbox trên Database mới tạo ra và gửi mail qua lại để kiểm tra tình trạng hoạt động của Replication
Shutting down Node1 renders the Active Database inactive When accessing the Exchange Server Configuration and checking the Mailbox information, you will observe that Node2 automatically performs a failover and becomes the Active Database.
- Mở mail của các user vẫn hoạt động bình thường
- Mở Server Node1 trở lại bình thường Vào kiểm tra tình trạng Failover vẫn tiếp tục hoạt động bình thường và chuyển Node2 sang Active và Node1 Passive.