CÀI ĐẶT VÀ CẤU HÌNH FAILOVER CLUSTER SQL SERVER 2012

Tóm tắt nội dung

Trong hệ thống mạng hiện đại ngày nay, SQL Server đóng vai trò rất quan trọng, lưu trữ dữ liệu cho các ứng dụng và dịch vụ như WebService, SharePoint, System Center…. Vì vậy việc xây dựng một hệ thống SQL có tính chịu lỗi (Failover) và khả năng sẵn sàng cao (High Availability) là hết sức cần thiết. Failover Cluster SQL Server (AlwaysOn) là 1 giải pháp toàn diện, đơn giản và linh hoạt hoạt động dựa trên nền tảng Windows Server Failover Clustering (WSFC).
SQL Server AlwaysOn cung cấp khả năng về HA & DR ở 2 level:

  • Database: thông qua tính năng AlwaysOn Availability Group (AG)
  • Instance: sử dụng AlwaysOn Failover Cluster Instance (FCI)
Trong bài viết này chúng tôi sẽ hướng dẫn cách cài đặt và cấu hình FAILOVER CLUSTER SQL SERVER 2012 sau đó sẽ kiểm tra hoạt động và khả năng chiệu lỗi của hệ thống.
 

Giới thiệu tổng quan FAILOVER CLUSTER

Thông thường, chúng ta nên sử dụng AlwaysOn Availability Group để bảo vệ dữ liệu trong SQL Server nhưng nếu như có sử dụng giải pháp shared disk của third-party (ví dụ như SAN) thì AlwaysOn Failover Cluster Instance là lựa chọn hợp lý hơn.
cài đặt
 
Các Node trong Cluster dùng chung một nơi lưu trữ dữ liệu có thể dùng công nghệ SCSI hoặc Storage Area Network (SAN) hay Network Attached Storage (NAS). Tính năng AlwaysOn Availability Groups là 1 giải pháp HA & DR thay thế cho tính năng Database Mirroring hoặc Log Shipping. Mỗi Replica phải ở trên các node khác nhau trong 1 WSFC cluster. Các ứng dụng kết nối đến các database nằm trong 1 Availability Group thông qua các Availability Group Listeners. Listener đóng vai trò như 1 Gateway để cung cấp khả năng chuyển hướng các Client Connection đến Primary Replica.
Các chế độ đồng bộ:
  • Asynchronous-commit mode: các transaction log của primary replica sẽ được gửi 1 cách không liên tục và không đồng bộ để commit ở secondary replica.
  • Synchronous-commit mode: yêu cầu primary replica chỉ được commit transaction log sau khi transaction log đã được gửi đến và commit ở secondary replica.
Các chế độ Failover:
  • Force Manual Failover (Force Failover): chỉ xảy ra khi cấu hình asynchronous-commit mode. Khôi phục dữ liệu sau thảm họa (DR) trong những trường hợp secondary replica không thể đồng bộ với primary replica và khi đó phải chấp nhận mất dữ liệu.
  • Planned Manual Failover (Manual Failover): không mất dữ liệu do thực hiện failover 1 secondary replica thành primary replica vì 1 mục đích nào đó ví dụ như bảo trì/ nâng cấp/ thay thế primary replica hiện hành. Chỉ xảy ra khi secondary được cấu hình synchronous-commit mode và đã được đồng bộ (synchronized) với primary replica.
  • Automatic Failover: không mất dữ liệu do quá trình failover sẽ tự động xảy ra giữa 1 synchronized secondary replica và primary. Chế độ đồng bộ giữa secondary replica và primary replica là synchronous-commit mode.

Triển khai FAILOVER CLUSTER trên SQL SERVER 2012

Chuẩn bị mô hình

Bài hướng dẫn này sử dụng 03 Servers sau:

Name

IP

OS

Ghi chú

dc.cloudviet.local

172.16.1.10

Windows Server 2012 R2

Standard 64 Bit

Đóng vai trò DC + DNS Server +

nơi lưu trữ cho Cluster SQL

Sql01.cloudviet.local

172.16.1.1

SQL Server 2012 Node 1

Sql02.cloudviet.local

172.16.1.2

SQL Server 2012 Node 2

Server DC đã được cài dặt và cấu hình Domain Controller + DNS Server. Các Node SQL đã được join vào domain cloudviet.local.

Chuẩn bị hệ thống lưu trữ cho Cluster SQL

Các ổ đĩa lưu trữ trên hệ thống phục vụ cho SQL Cluster gồm:

  • Quorum disk: Lưu cấu hình Cluster windows.
  • MsDTC disk (Microsoft Distributed Transaction Coordinator): Lưu các giao dịch, trao đổi qua lại giữa các Nodes.
  • Database disk: Lưu dữ liệu. 

Trên máy dc.cloudviet.local, chúng ta cài đặt iSCSI Target Server. Sau đó tạo ra các iSCSI Virtual Disks để cho phép các nodes sql01.cloudviet.local và sql02.cloudviet.local kết nối, lưu trữ dữ liệu thông qua giao thức iSCSI. Các bước cài đặt & cấu hình như sau:

Bước 1

Trong Windows, mở Server Manager, click Add roles and features. Click Next, … sau đó chọn iSCSI Target Server. Cuối cùng, nhất Close để hoàn thành:

cài đặt

cài đặt

Bước 2

Tiến hành tạo iSCSI Virtual Disk để các Node SQL kết nối và lưu trữ dữ liệu:

cài đặt

cài đặt

Tùy vào mục đích và nhu cầu có thể lựa chọn Partition hoặc Folder làm nơi lưu trữ:

cài đặt

Đặt tên cho ổ đĩa ảo:

cài đặt

Cấp phát dung lượng cho ổ đĩa ảo:

cài đặt

Ở phần iSCSI Target, chọn New iSCSI Target để các Server có thể kết nối và sử dụng các iSCSI Virtual Disk mà chúng ta đã tạo ở trên:

cài đặt

Đặt tên cho iSCSI Target:

cài đặt

Khai báo các IP của các server nào có thể kết nối đến và sử dụng tài nguyên trên các iSCSI Virtual Disk này:

cài đặt

cài đặt

cài đặt

cài đặt

Đơi quá trình khởi tạo iSCSI Virtual Disk:

cài đặt

Tiếp tục tạo thêm ClusterDisk 02 và 03 tương tự như trên:

cài đặt

2.3. Kết nối các nodes SQL Server đến hệ thống lưu trữ

Trên 2 máy sql01.cloudviet.local và sql02.cloudviet.local, thực hiện kết nối vào iSCSI Target bằng công cụ iSCSI Initiator:

Bước 1

Mở công cụ iSCSI Initator trên các Nodes tại phần Server Manager:

cài đặt

Bước 2

Nhập IP của iSCSI Targer Server và connect đến server này:

cài đặt

Bước 3

Kết nối thành công, nhấn OK để hoàn thành:

cài đặt

Bước 4

Vào Computer Management để kiểm tra:

cài đặt

cài đặt

Bước 5

Thực hiện các bước tương tự trên máy sql02.cloudviet.local.

Bước 6 

Trên máy sql01.cloudviet.loca, mở Disk Management, bấm phải chuột lên Disk1 chọn
Online:

cài đặt

Bấm phải chuột lên Disk1 – Chọn Initialize Disk, sau đó bấm OK:

cài đặt

Bấm phải chuột lên vùng trống trên Disk1 – Chọn New Simple Volume sau đó thực hiện bấm Next trên New Simple Volume Wizard. Đặt tên là ClusterDisk01, nhấn Next để hoàn thành:

cài đặt

Bước 7

Thực hiện các bước tương tự để tạo thêm ClusterDisk 02 và 03. Kết quả cuối cùng như
sau:

cài đặt

2.4. Tạo Failover Cluster
Bước 1

Trên các nodes sql01.cloudviet.local và sql02.cloudviet.local chúng ta tiến hành cài đặt Feature Failover Cluster:

cài đặt

Bước 2

Trên sql01.cloudviet.local mở Failover Clustering Manager :

cài đặt

Bước 3

Trên Failover Clustering Manager, click chuột phải chọn Create Cluster. Nhấn Next:

cài đặt

Bước 4

Lần lượt đưa 2 Nodes SQL vào danh sách Selected servers, nhấn Next:

cài đặt

Bước 5

Chọn No, nhấn Next:

cài đặt

Bước 6

Nhập tên của Cluster, VD: SQLCluster, sau đó nhập IP của Cluster (IP chưa từng đc sử dụng):

cài đặt

Bước 7

Nhấn Next và Finish:

cài đặt

cài đặt

Bước 8

Kiểm tra lại trên cả 2 Nodes đều đã được add vào chung 1 Cluster:

cài đặt

cài đặt

2.5. Cài đặt SQL Server 2012 cho Node 01
Bước 1

Insert DVD cài đặt SQL Server 2012 vào máy sql01.cloudviet.local và chạy File Setup.exe. Chọn Installation – New SQL Server failover cluster installation, nhấn OK:

cài đặt

Bước 2

Chọn Free Edition hoặc nhập Key bản quyền, nhấn Next:

cài đặt

Bước 3

Chọn Select All (hoặc có thể tùy chọn theo nhu cầu), nhấn Next:

cài đặt

Bước 4

Trên khung Server Network Name đặt tên tùy ý cho SQL Cluster, nhấn Next, Next:

cài đặt

Bước 5

Chọn ổ đĩa lưu trữ cho SQL Cluster (mặc định đã được chọn sẵn), nhấn Next:

cài đặt

Bước 6

Trong khung IP Address, nhập một IP chưa sử dụng cho Cluster (172.16.1.4), nhấn Next:

cài đặt

Bước 7

Chỉ định 2 account SQL Server Agent và SQL Server Database Engine là account domain administrator (CLOUDVIET\Administrator). Nhập password ở khung Passsord – Nhấn
Next:

cài đặt

Bước 8

Add Current User – Nhấn Next, Next, Next, Install:

cài đặt

Sau khi quá trình cài đặt hoàn tất – Nhấn nút Close

Bước 9

Mở Failover Cluster Manager kiểm tra. Chọn SQLCluster.cloudviet.local – Roles. Bạn sẽ thấy role SQL Server (MSSQLSERVER) đang chạy (trạng thái Running):

cài đặt

Bước 10

Chọn SQLCluster.cloudviet.local – Storage – Disk: quan sát Cluster Disk 2 đã được sử dụng cho SQL Server (MSSQLSERVER):

cài đặt

2.6. Cài đặt SQL Server 2012 và kết nối Node 02 vào Failover Cluster
Bước 1

Insert DVD cài đặt SQL Server 2012 vào máy sql02.cloudviet.local và chạy File
Setup.exe. Chọn Installation – Add node to a SQL Server failover cluster, nhấn OK:

cài đặt

Bước 2

Thực hiện các bước tương tự như ở Node 01. Ta thấy SQL Server instance name đã cài đặt trước đó trên Node 01 – Nhấn Next:

cài đặt

Bước 3

IP Address của Cluster đã cấu hình trước đó – Nhấn Next:

cài đặt

Bước 4

Nhập password của account domain admin (CLOUDVIET\Administrator) ở khung Password – Nhấn Next, Next:

cài đặt

Bước 5

Nhấn Install. Sau khi quá trình cài đặt hoàn tất – Nhấn nút Close:

Kiểm tra hoạt động và khả năng chịu lỗi FAILOVER CLUSTER

Kiểm tra hoạt động của Cluster SQL

Bước 1

Kiểm tra trên Tab Roles thì hiện tại SQL Server MSSQLSERVER đang chạy trên Node SQL01:

cài đặt

Bước 2

Ta thực hiệện di chuyển MSSQLSERVER để running trên Node SQL02 như sau:

cài đặt

Chọn SQL02, bấm OK.

cài đặt

Chờ đợi quá trình di chuyển (trạng thái sẽ hiển thị là Pending):

cài đặt

 

Qúa trình di chuyển thành công, SQL Server (MSSQLSERVER) đang có trạng thái Running và đang có Owner Node là SQL02

cài đặt

3.2. Kiểm tra quá trình Failover của Cluster SQL
Bước 1

Hiện tại thời điểm này, MSSQLSERVER đang chạy trên Node SQL02. Ta tiến hành disable card mạng của Node SQL02:

cài đặt

 

Bước 2

Tại TAB Nodes, trạng thái của SQL02 đang là Down:

cài đặt

 

Bước 3

Chờ quá trình move hoàn tất, MSSQLSEVER sẻ running trên Owner Node là SQL01:

cài đặt

Kết luận

Trong bài trên chúng tôi đã hướng dẫn cài đặt và cấu hình FAILOVER CLUSTER SQL SERVER 2012.

Logo Cloud Việt

Thông Tin Và Hoạt Động Của Chúng Tôi

Cloud Việt là đơn vị cung cấp dịch vụ TTDL uy tín tại Việt Nam. Với tiêu chí là đặt quyền lợi và trải nghiệm của khách hàng lên hàng đầu để  đem đến dịch vụ tốt nhất.

Trụ sở chính

110/20/41 đường số 30, phường 6, quận Gò Vấp, TPHCM

Ngày làm việc

Thứ 2 - Thứ 6, Hàng tuần

Giờ làm việc

08 : 00 AM - 18 : 00 PM

Email

Support@cloudviet.com.vn

Hotline

0972 710 812