Cấu Hình SQL Always On Availability Groups | Rules Are Made For ...
Có thể bạn quan tâm
SQL Always On Availability Groups được Microsoft giới thiệu lần đầu tiên trong bản SQL Server 2012 Enterprise như một chức năng nâng cao nhằm tăng độ sẳn sàng cho hệ thống Database mà không cần sử dụng các Shared Storage từ SAN hay NAS như mô hình SQL Cluster truyền thống (Failover Clustering). Dù vẫn còn một số vấn đề ở phiên bản đầu tiên nhưng theo đánh giá cá nhân thì SQL Always On Availability Groups thật sự hiệu quả trong việc tăng độ sẳn sàng, đơn giản trong vận hành và quản trị Database nên hoàn toàn có thể thay thế SQL Cluster truyền thống.
Trong bài viết [MS] Cấu hình SQL Always On Availability Groups, tôi sẽ giới thiệu cách cấu hình SQL Always On Availability Groups trên SQL 2016 với 3 Server sau:
| NO | NAME | ROLES | NIC 1 | NIC 2 * |
| 1 | UAT-ADSRV | Domain Controller | 172.30.81.222 | |
| 2 | UAT-SRV01 | SQL Cluster Node 1 | 172.30.81.223 | 10.30.0.10 |
| 3 | UAT-SRV02 | SQL Cluster Node 2 | 172.30.81.223 | 10.30.0.11 |
Lưu ý:
○ NIC 2 * – Không bắt buộc nhưng trong thực tế, giữa các SQL Cluster Node nên trao đổi thông tin bằng một card mạng riêng và bài hướng dẫn này sẽ sử dụng card NIC 2 để các SQL Cluster Nodes thực hiện việc trao đổi thông tin.
○ Sau đây, SQL Always On Availability Groups sẽ được gọi tắt là SQL AOAG
THỰC HIỆN
I. Chuẩn bị
Cài đặt SQL Server 2016 phiên bản Enterprise hoặc Evaluation trên các SQL Cluster Nodes: UAT-SRV01 và UAT-SRV02. Có thể tham khảo hướng dẫn cài đặt SQL Server 2016 tại đây
Tạo một Database tên UATDB (thay đổi tên theo nhu cầu) để đưa vào AOAG trên UAT-SRV01 (có thể tạo trên bất kỳ SQL Node nào sẽ thuộc SQL AOAG mà UATDB sẽ được đưa vào)
Tạo 02 Share Folder trên UAT-ADSRV với tên SQLCluster01 để làm witness cho Windows Clustering và AG-UATDB trên UAT-ADSRV để chứa các bản full backup, log phục vụ cho việc đồng bộ database, log giữa các SQL Node trong AOAG với Share Permissions giống nhau như sau:
○ Sharing Permissions cho Everyone – Full Controll
○ Security Permissions cho các SQL Cluster Node – Write
II. Cài đặt Windows Clustering trên các Cluster Nodes
Trong cửa sổ Server Manager, nhấn Add roles and features

Trong mục Before you begin của cửa sổ Add Roles and Features Wizard, nhấn Next để lướt qua giới thiệu. Giữ nguyên mặc định Role-based or feature-based installation của mục Select Installation Type rồi nhấn Next để cài đặt Role hoặc Feature mới

Trong mục Select destination server, chọn Server cần cài đặt Role hoặc Feature rồi nhấn Next

Trong mục Select server roles, nhấn Next để bỏ qua vì không cần cài đặt Roles.

Trong mục Select features, chọn Failover Clustering để cài đặt Windows Failover Clustering

Khi chọn Failover Clustering, hệ thống thông báo các feature khác cần được cài đặt để đảm bảo hoạt động cho Failover Cluster, nhấn Add Features để xác nhận

Sau khi xác nhận cài đặt các Feature liên quan, Failover Clustering đã được chọn, nhấn Next để tiếp tục

Trong mục Confirm installation selections, nhấn Install để bắt đầu cài đặt và khi quá trình cài đặt hoàn tất, nhấn Close để kết thúc

Lưu ý: Thực hiện cài đặt tương tự trên tất cả SQL Cluster Nodes. Trong bài viết này sẽ cài đặt trên UAT-SRV01 và UAT-SRV02
III. Tạo Windows Failover Cluster
Sau khi cài đặt Failover Clustering hoàn tất, mở Failover Cluster Manager từ một Cluster Node và trỏ phải lên Failover Cluster Manager rồi chọn Create Cluster để một Failover Cluster mới.

Trong mục Before You Begin của cửa sổ Create Cluster Wizard, nhấn Next để lướt qua phần giới thiệu. Trong mục Select Servers, thêm tên các Server cần đưa vào Cluster vào mục Selected Servers rồi nhấn Next

Trong mục Validation Warning, giữ mặt định “Yes. When I click Next,…” rồi nhấn Next để yêu cầu thực hiện việc kiểm tra điều kiện của các Node trước khi đưa vào Cluster

Trong mục Before You Begin của cửa sổ Validate a Configuration Wizard, nhấn Next để lướt qua phần giới thiệu. Trong mục Testing Options, chọn Run all test (recommended) rồi nhấn Next để yêu cầu kiểm tra toàn bộ điều kiện

Trong mục Confirmation, nhấn Next để xác nhận và bắt đầu quá trình kiểm tra

Nếu sau khi thực hiện việc kiểm tra điều kiện mà kết quả trả về là “…The configuration appears to be suitable for clustering…” là các Cluster Node đã đảm bảo điều kiện để đưa vào Cluster, chọn Create the cluster now using the validated nodes rồi nhấn Finish để hệ thống tạo một Cluster với các Cluster Node đã kiểm tra.

Trong mục Access Point for Administering the Cluster, đặt tên cho Cluster trong phần Cluster Name và gán 01 địa chỉ IP cho Cluster rồi nhấn Next

Trong mục Confirmation, kiểm tra lại các thông tin cấu hình cho Cluster và nhấn Next để xác nhận các thông tin đã chính xác

Khi Cluster khởi tạo hoàn tất, nhấn Finish để kết thúc

Lưu ý:
○ Việc kiểm tra điều kiện các Cluster Node sẽ hoàn tất với một số cảnh báo về Storage (Disk) do mô hình Cluster đang thực hiện không bắt buộc sử dụng các đĩa từ SAN hay NAS nên có thể bỏ qua các cảnh báo về Storage.
○ Việc tạo Windows Cluster chỉ cần thực hiện 1 lần trên bất kỳ Node nào sẽ thuộc Cluster.
IV. Cấu hình Witness cho Failover Cluster
Trỏ phải lên SQL Cluster vừa tạo (SQLCluster01), nhấn More Actions rồi chọn Configure Cluster Quorum Settings…

Trong mục Before You Begin của cửa sổ Configure Cluster Quorum Wizard, nhấn Next để lướt qua phần giới thiệu. Trong mục Select Quorum Configuration Option, chọn Select the quorum witness rồi nhấn Next để tự chỉ định Witness cho Failover Cluster SQLCluster01

Trong mục Selct Quorum Witness, chọn Configure a file share witness rồi nhấn Next để chọn Witness là một Share Folder

Trong mục Configure File Share Witness, nhập đường dẫn của Share folder được chọn làm Witness vào mục File Share Path rồi nhấn Next. Trong bài hướng dẫn này sẽ sử dụng Share Folder SQLCluster01 đã tạo ở bước chuẩn bị

Trong mục Confirmation, kiểm tra các thông tin của Witness và nhấn Next để xác nhận thông tin

Khi Witness được thêm thành công, nhấn Finish để kết thúc.

V. Bặt chức năng Always On Availability Groups trên các SQL Cluster Nodes
Trong SQL Server Configuration Manager, trỏ phải lên SQL Server (MSSQLSERVER) rồi chọn Properties

Trong thẻ AlwaysOn High Availability, đánh dấu check vào ô Enable AlwaysOn Availability Groups rồi nhấn OK

Cửa sổ Warning thông báo các thay đổi chỉ có hiệu lực sau khi Services được khởi động lại, nhấn OK để đóng thông báo

Trong SQL Server Configuration Manager, trỏ phải lên SQL Server (MSSQLSERVER) rồi chọn Restart để khởi động lại dịch vụ của SQL

Lưu ý:
○ Enable chức năng AlwaysOn Availability Groups trên tất cả SQL Nodes.
○ Phải restart lại service SQL Server trước khi thưc hiện bước tiếp theo.
VI. Chuẩn bị đưa Database vào Availability Group
Điều kiện để đưa một Database vào SQL AOAG là Database đã được thực hiện Full Backup trước đó. Để thực hiện Full Backup cho database UATDB trong SQL Management Studio, trỏ phải lên Database UATDB chọn Back Up… trong mục Tasks

Trong cửa sổ Backup Up Database, chọn Full tại trường Backup type rồi nhấn OK

Khi backup hoàn tất, nhấn OK

VI. Tạo SQL Always On Availability Group
Trong SQL Management Studio, trỏ phải lên AlwaysOn High Availability rồi chọn New Availability Group Wizard để tạo SQL AOAG mới

Trong mục Introduction của cửa sổ New Availability Group, nhấn Next để lướt qua các thông tin giới thiệu. Đặt tên cho Availability Group trong trường Availability group name, đánh dấu check vào Database Level Heath Detection của mục Sepcify Options rồi nhấn Next để tiếp tục

Trong mục Select Databases, chọn Database đáp ứng yêu cầu và cần đưa vào Availability Group (UATDB) rồi nhấn Next

Trong thẻ Replicas của mục Specify Replicas, nhấn Add Replica… để thêm các SQL Node cần đưa vào SQL AOAG đang tạo.

Trong cửa sổ Connect to Server, nhận tên SQL Node và các thông tin đăng nhập rồi nhấn Connect để kết nối. Trong bài hướng dẫn [MSSQL] Configure SQL Always On Availability Groups, user UAT\Administrator được chỉ định là SQL Administrator trên các SQL Nodes của AOAG và đang login vào UAT-SRV01 nên không cần nhập lại username và password.

Đánh chọn Automatic Failover và Synchronous Commit trong mục (1) và (2) cho tất cả các SQL Nodes để cho phép các SQL Nodes trong AOAG đồng bộ database theo cơ chế Synchronous và chuyển trạng thái Readable Secondary sang Yes để cho phép các các truy vấn đọc dữ liệu trên Database có thể kết nối đến các Secondary Nodes.

Trong thẻ Listener của mục Specify Replicas, đặt tên cho Listener của AOAG đang tạo trong trường Listener DNS Name, chỉ định port để kết nối trong trường Port, chọn Static IP trong trường Network Mode rồi nhấn Add để gán IP cố định cho Listener.

Chọn Subnet cần gán Static IP trong trường Subnet và nhập IP cần gán vào trường IPv4 Address rồi nhấn OK để tiếp tục

Khi gán các thông tin cho Listener hoàn tất, nhấn Next để tiếp tục

Trong mục Select Data Synchronization, chọn Full database and log backup rồi nhập địa chỉ Share Folder AG-UATDB đã tạo ở bước chuẩn bị để chứa các bản Backup và Log file phục vụ cho việc đồng bộ giữa các SQL Node. Nhấn Next để tiếp tục

Trong mục Validation, khi Result của các bước đều hiển thị Success thì nhấn Next để tiếp tục

Trong mục Summary, kiểm tra lại các thông số đã gán và nhấn Finish để bắt đầu quá trình tạo AOAG

Khi Availability Group tạo thành công, nhấn Close để kết thúc

Lưu ý:
○ Một Availability Group có thể sử dụng cho nhiều Databases
○ Mặc định các SQL Nodes trong AOAG sẽ đồng bộ theo cơ chế Asynchronous và việc đồng bộ database giữ các SQL Nodes trong AOAG theo cơ chế Synchronous sẽ tăng thời gian xử lý các Transaction nên trường hợp có nhiều hơn 2 SQL Nodes, cần cân nhắc cơ chế đồng bộ cho từng SQL Node. Tham khảo thêm cơ chế Synchronous và Asynchronous tại đây
Từ khóa » Cài đặt Và Cấu Hình Failover Cluster Sql Server 2016
-
Cài đặt Và Triển Khai Failover Clustering Trên Windows Server - EngISV
-
Install Failover Cluster Instance - SQL Server Always On | Microsoft ...
-
Cài đặt Cấu Hình Failover Cluster SQL Server 2016
-
Cài đặt Cấu Hình Failover Cluster SQL Server 2016 - Tài Liệu Text
-
III Hướng Dẫn Cài đặt Cấu Hình Failover Cluster SQL Server - Tài Liệu Text
-
Triển Khai Failover Clustering - Hyper-V Trên Windows Server 2016 ...
-
Cài đặt Và Cấu Hình Failover Cluster Sql Server 2012
-
Cài đặt & Cấu Hình Failover Cluster SQL Server 2016 | PDF - Scribd
-
Hướng Dẫn Cấu Hình Failover Clustering Trên Windows Server 2012
-
Lab Microsoft Installation Storage And Compute With Windows ...
-
Cài đặt Và Cấu Hình Failover Cluster Sql Server 2012
-
Triển Khai SQL Server 2012 Failover Cluster - Part 3
-
Cài đặt Và Cấu Hình Failover Cluster Sql Server 2012
-
Manual Deployment Of A SQL Server Failover Cluster Instance - SIOS