Microsoft [P1] SQL Server 2017 Always On Cluster

vohongnhuy

Internship/Fresher
Mar 11, 2019
21
7
3
27
HCM
SQL Server 2017 Always On Cluster

Các bước thực hiện:
1. Chuẩn bị
2. Cài đặt SQL Server 2017
3. Cài đặt SQL Server Management Studio.
4. Cài đặt Window failover clustering
5. Tạo Windows Failover Cluster
6. Bật chức năng Always On Availability Groups trên các SQL Cluster Nodes
7. Cấu hình User chạy các service SQL
8. Tạo SQL Always On Availability Group

Phần 1[bước 1 - 4]: [P1] SQL Server 2017 Always On Cluster
Phần 2[bước 5 - 8]: [P2] SQL Server 2017 Always On Cluster

1. Chuẩn bị

  • Thực hiện với 3 server:
    • AD: domain abc.xyz

    • DB1: db1.abc.xyz

    • DB2: db2.abc.xyz

    • Đảm bảo các port trên firewall của server DB1 và DB2 được mở: 1234 TCP, 1433 TCP/UDP, 1434 TCP/UDP, 5022 TCP.
  • Trên AD, tạo 2 share folder:
    • C:\witness\Xdb để làm witness cho Windows Clustering.

    • C:\sql\Xdb để 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.

    • User Xdb@abc.xyz (ABC\Xdb) là user admin database, được tạo trên domain. Gán full quyền cho user Xdb truy cập 2 thư mục trên.
 SQL AOL (1)

 SQL AOL (2)



2. Cài đặt SQL Server 2017. (Thực hiện tương tự nhau trên DB1 và DB2)
  • Mở source cài đặt SQL Server 2017 rồi chạy ứng dụng Setup.exe.

  • Trong cửa sổ SQL Server Installation Center, chọn menu Installation → New SQL Server stand-alone installation or add features to existing installation.
 SQL AOL (3)


  • Ở cửa sổ Setup, Nhập Product Key vào mục Enter the product key để kích hoạt license hoặc chọn Evaluation trong mục Specify a free edition để dùng thử. Nhấn Next.
 SQL AOL (4)


  • Đánh dấu check vào I accept the license terms → nhấn Next.
 SQL AOL (5)


  • Chờ kiểm tra hoàn tất, chọn Next.
 SQL AOL (6)


  • Đánh dấu check vào Use Microsoft Update to check for updates (recommended) để cài đặt các bản vá lỗi và cập nhật từ Windows Update → nhấn Next.
 SQL AOL (7)


  • Nhấn Next.
 SQL AOL (8)


  • Tại menu Feature Selection, tick chọn Database Engine Services để cài đặt các dịch vụ cần thiết, nhấn Next.
 SQL AOL (9)


  • Chọn Default Instance, nhấn Next,
 SQL AOL (10)


  • Trong phần Server Configuration, chỉ định user được sử dụng để quản lý (start/restart/stop/disable/…) các services của MSSQL → nhấn Next. (sẽ thay đổi sau)
 SQL AOL (11)


  • Chọn Windows authentication mode để chứng thực cho SQL Server bằng user của Windows và AD (nếu SQL Server có gia nhập domain) → Chỉ định các user quản trị Database trong mục Specify SQL Server Administrator.
 SQL AOL (12)


  • Chọn thẻ Data Directories để chỉ định vị trí lưu Database, Log và file Backup → nhấn Next.
 SQL AOL (13)


  • Chọn thẻ TempDB để chỉ định vị trí lưu các file tạm thời → nhấn Next.
 SQL AOL (14)


  • Nhấn Install để tiến hành cài đặt.
 SQL AOL (15)


  • Nhấn Close để hoàn tất.
 SQL AOL (16)



3. Cài đặt SQL Server Management Studio. (Thực hiện tương tự nhau trên DB1 và DB2)
  • Mở source cài đặt SQL Server Management Studio rồi chạy ứng dụng setup đã tải về.

  • Nhấn Install. Chờ đến khi cài đặt hoàn tất. Nhấn Close.
 SQL AOL (17)



4. Cài đặt Window failover clustering. (Thực hiện tương tự nhau trên DB1 và DB2).
  • Trong cửa sổ Server Manager, nhấn Add roles and features.
 SQL AOL (18)


  • Nhấn Next.
 SQL AOL (19)


  • Giữ nguyên mặc định Role-based or feature-based installation của mục Select Installation Type rồi nhấn Next
 SQL AOL (20)


  • Chọn server đang cài đặt rồi nhấn Next
 SQL AOL (21)


  • Nhấn Next.
 SQL AOL (22)


  • Nhấn chọn Failover clustering, một của sổ mới hiện ra, nhấn Add features
 SQL AOL (23)


  • Nhấn next.
 SQL AOL (24)


  • Nhấn Install để cài đặt.
 SQL AOL (25)


  • Nhấn Close để hoàn tất.
 SQL AOL (26)

HẾT PHẦN 1!
 
Last edited:
Ad ơi, slide P1 & P2 bị mất hình nhờ Ad up lại hình giúp em với.

Em cảm ơn!
 
Add ơi, cho em hỏi tí,

Em create Failover-Cluster thì tới bước add Node hệ thống báo lỗi "the node cannot be contacted ensure that the node is powered on"

Bước này em mới cài Failover-cluster và bạo Cluster chưa có cài SQL

Nhờ Add hỗ trợ giúp.

Em xin cảm ơn!
 
Add ơi, cho em hỏi tí,

Em create Failover-Cluster thì tới bước add Node hệ thống báo lỗi "the node cannot be contacted ensure that the node is powered on"

Bước này em mới cài Failover-cluster và bạo Cluster chưa có cài SQL

Nhờ Add hỗ trợ giúp.

Em xin cảm ơn!
Chỗ Microsoft Failover Clustering này bạn đã setup môi trường chưa. trên 2 node đã cài đặt xong hết service rồi phải ko. với lại này sẽ sử dụng 1 account domain chung và account này phải có quyền nhất định như bài viết trên link mình hướng dẫn.
Ngoài ra bạn có thể kiểm tra xem DNS record đã khai báo cho 2 Node và cluster chưa nhé
 
Chỗ Microsoft Failover Clustering này bạn đã setup môi trường chưa. trên 2 node đã cài đặt xong hết service rồi phải ko. với lại này sẽ sử dụng 1 account domain chung và account này phải có quyền nhất định như bài viết trên link mình hướng dẫn.
Ngoài ra bạn có thể kiểm tra xem DNS record đã khai báo cho 2 Node và cluster chưa nhé
Dạ, em đã cài MS Failover Clustering và SQL server, sử dụng 1 user domain chung.

Nhưng khi Add Cluster vào nó chỉ nhận được 1 Node chính nó, không nhận Node thứ 2
 
Em làm theo hướng dẫn của Ad được rồi, em check lại anh quản lý Domain chưa tạo DNS Record cho 2 Node này và Cluster.

Em add được 2 Node vào Cluster rồi, em cảm ơn Ad nhiều
 
  • Like
Reactions: l3g0n
Chào AD,

AD cho em hỏi tí, em restore DB và báo Sync thành công, nhưng khi truy cập vào DB thì báo lỗi như bên dưới


The database is not accessible. (ObjectExplorer)

Nhờ AD xem giúp.

Em xin cảm ơn!
 
Mà Ad ơi cho em hỏi thêm, khi tạo Always On thì em có thể dụng User SQL local như SA hoặc User khác để test được không?

Em cảm ơn nhiều!
 
Hiện em muốn tạo thêm 1user SQL local, khi em tạo và gán quyền trên Cluster thì chỉ con Primary thể hiện User này, trên Con Secondary không nhận được user vừa tạo, nhờ AD hỗ trợ giúp em.

Em cảm ơn!
 
Mà Ad ơi cho em hỏi thêm, khi tạo Always On thì em có thể dụng User SQL local như SA hoặc User khác để test được không?

Em cảm ơn nhiều!
Khi dựng xong cluster Always On thì mình có thể tạo database để đồng bộ giữa các node. database này mình có thể sử dụng user local SA hoặc user khác để test được nhé ko cần thiết phải sử dụng user AD, user AD để connect các node trong cluster AG thôi. còn user cho user truy cập vào database nên recommend sử dụng user khác SA để truy cập nhé.
Lưu ý nếu tạo user local thì khi chuyển primary từ host A sang host B thì đảm bảo host B phải có user ABC mình dùng để connect database. và mình sẽ cần chạy lại lệnh trên host 2 (fix user) nếu user không truy cập được.
USE databaseA
EXEC sp_change_users_login 'Auto_Fix', 'UserABC'
 
  • Like
Reactions: cuong.lamht
Khi dựng xong cluster Always On thì mình có thể tạo database để đồng bộ giữa các node. database này mình có thể sử dụng user local SA hoặc user khác để test được nhé ko cần thiết phải sử dụng user AD, user AD để connect các node trong cluster AG thôi. còn user cho user truy cập vào database nên recommend sử dụng user khác SA để truy cập nhé.
Lưu ý nếu tạo user local thì khi chuyển primary từ host A sang host B thì đảm bảo host B phải có user ABC mình dùng để connect database. và mình sẽ cần chạy lại lệnh trên host 2 (fix user) nếu user không truy cập được.
USE databaseA
EXEC sp_change_users_login 'Auto_Fix', 'UserABC'

Em cảm ơn AD,

Em có tạo user khác user SA để connect vào DB, có điều trên SQL Always ON không có cơ chế tự đồng bộ USER ACCOUNT :)

Mà để tạo User trên con Secondary giống trên Primary thì phải tạo bằng lệnh trên SQL, theo em tìm hiểu thì phải thay đổi SID mới tạo được.

AD có câu lệnh nào chuẩn để tạo user trên con Secondary giống Primary, AD cho em xin với.

Em cảm ơn!
 

About us

  • Securityzone.vn là một trang web chuyên về an ninh mạng và công nghệ thông tin. Trang web này cung cấp các bài viết, tin tức, video, diễn đàn và các dịch vụ liên quan đến lĩnh vực này. Securityzone.vn là một trong những cộng đồng IT lớn và uy tín tại Việt Nam, thu hút nhiều người quan tâm và tham gia. Securityzone.vn cũng là nơi để các chuyên gia, nhà nghiên cứu, sinh viên và người yêu thích an ninh mạng có thể trao đổi, học hỏi và chia sẻ kiến thức, kinh nghiệm và giải pháp về các vấn đề bảo mật trong thời đại số.

Quick Navigation

User Menu