GIẢI PHÁP CÀI ĐẶT HA CHO HỆ THỐNG MÁY CHỦ- HA SERVER
Để đáp ứng nhu cầu về máy chủ dữ liệu luôn hoạt động và có tính sẵn sàng cao nhằm đảm bảo việc kết nối thông suốt, hệ thống máy chủ cần có High Availability (HA), HA server cung cấp cơ chế dự phòng trong hạ tầng mạng, đảm bảo các host luôn truy cập được đến các máy chủ-server quan trọng trong mạng hoặc Internet ở bất cứ thời điểm nào . Hầu hết các hạ tầng mạng doanh nghiệp hiện nay đều được triển khai tính năng HA server.
I. HA là gì?
High Availability ( HA server) là một giải pháp/quy trình/công nghệ để đảm bảo ứng dụng/cơ sở dữ liệu có thể truy cập được 24/7 trong bất kì điều kiện nào, dù là có dự định trước hay bất ngờ.
HA là một lý thuyết chứ không phải là một công nghệ cụ thể, được đo bằng % uptime của dịch vụ đó trong khoảng thời gian, ví dụ HA server=99.999%/1 năm. Để nâng cao % HA server người ta phải kết hợp nhiều công nghệ đồng thời dưới đây.
Về cơ bản thì có 5 lựa chọn để thiết lập tính sẵn sàng HA server cho cơ sở dữ liệu trong MS SQL Server.
- Replication
- Log Shipping
- Mirroring
- Clustering
- AlwaysON Availability Groups
- Replication
Dữ liệu gốc sẽ được sao chép tới điểm đích qua tác vụ sao chép (agent/job), sử dụng công nghệ ở mức độ đối tượng. Một số thuật ngữ cần biết:
– Bên phát hành (Publisher) là máy chủ nguồn.
– Bên phân phối (Distributor) là tùy chọn, lưu trữ dữ liệu đã được sao chép cho bên đăng ký (Subscriber).Bên đăng ký (Subscriber) là máy chủ đích.
- Log Shipping
Dữ liệu nguồn được sao chép tới điểm đích thông qua tác vụ sao lưu Transaction Log, sử dụng công nghệ ở mức độ cơ sở dữ liệu. Một số thuật ngữ:
– Máy chủ sơ cấp (Primary Server) là máy chủ nguồn.
– Máy chủ thứ cấp (Secondary Server) là máy chủ đích.
– Máy chủ giám sát là tùy chọn, được giám sát bằng trạng thái Log Shipping.
- Mirroring
Dữ liệu sơ cấp được sao chép sang thứ cấp qua các giao dịch mạng với sự trợ giúp của các điểm kết nối hình chiếu và số cổng, sử dụng công nghệ ở cấp độ cơ sở dữ liệu. Một số thuật ngữ:
– Máy chủ gốc (Principal Server) là máy chủ nguồn.
– Máy chủ hình chiếu (Mirror Server) là máy chủ đích.
– Máy chủ chứng kiến (Witness Server) là tùy chọn, được dùng cho giải pháp chịu lỗi tự động.
- Clustering
Dữ liệu được lưu trữ tại địa điểm chung, được cả máy chủ sơ cấp và thứ cấp sử dụng, dùng công nghệ ở mức bản cài (instance). Cần phải thiết lập Windows Clustering trên nơi lưu trữ chung này. Một số thuật ngữ:
– Node chủ động (Active Node) là nơi SQL Services chạy.
– Node bị động (Passive Node) là nơi SQL Services không chạy.
- AlwaysON Availability Groups
Dữ liệu sơ cấp sẽ được chuyển sang thứ cấp qua các giao dịch, sử dụng công nghệ ở mức độ nhóm cơ sở dữ liệu. Thiết lập Windows Clustering không cần nơi lưu trữ chung. Một số thuật ngữ:
– Primary Replica là máy chủ nguồn.
– Secondary Replica là máy chủ đích.
II. Các bước cấu hình High Availability HA server cho Mirroring và Log Shipping
Dưới đây là các bước cấu hình HA server (Mirroring và Log Shipping) ngoại trừ Clustering, AlwaysON Availability Groups và Replication.
Bước 1: Lấy một bản đầy đủ và một bản sao T-log của cơ sở dữ liệu gốc.
Ví dụ: Để cấu hình Mirroring/Log Shipping cho CSDL TestDBtrên TESTINSTANCE làm máy chủ SQL Server sơ cấp và DEVINSTANCE làm máy chủ thứ cấp, dùng truy vấn dưới đây để lấy sao lưu đầy đủ và T-log trên máy chủ nguồn (TESTINTANCE).
– Kết nối tới SQL Server TESTINSTANCEvà mở truy vấn mới, viết đoạn mã dưới đây và thực thi như trong hình.
– Backup database TestDB to disk = ‘D:\testdb_full.bak’
GO
– Backup log TestDB to disk = ‘D:\testdb_log.trn’
Truy vấn lấy sao lưu
Bước 2: Sao chép tập tin sao lưu tới máy chủ đích.
Trong trường hợp này chúng ta chỉ có một máy chủ vật lý và 2 bản SQL Server Instance nên không phải sao chép. Nhưng nếu 2 bản SQL Server Instance nằm ở 2 máy chủ vật lý khác nhau thì cần sao chép 2 tập tin dưới đây tới địa điểm trên máy chủ thứ cấp, nơi cài đặt
Sao chép tập tin sao lưu tới máy chủ đích
Bước 3: Khôi phục CSDL bằng tập tin sao lưu trên máy chủ đích bằng lựa chọn norecovery.
Ví dụ: Kết nối tới SQL Server DEVINSTANCEvà mở truy vấn mới New Query. Viết đoạn mã dưới đây để khôi phục CSDL với tên TestDB, trùng với tên của CSDL gốc. Có thể dùng tên khác cho cấu hình Log Shipping. Dùng lựa chọn norecovery để khôi phục.
– Restore database TestDB from disk = ‘D:\TestDB_full.bak’
with move ‘TestDB’ to ‘D:\DATA\TestDB_DR.mdf’,
move ‘TestDB_log’ to ‘D:\DATA\TestDB_log_DR.ldf’,
norecovery
GO
– Restore database TestDB from disk = ‘D:\TestDB_log.trn’ with norecovery
Khôi phục CSDL bằng tập tín sao lưu
– Refresh lại thư mục CSDL trên máy chủ DEVINSTANCEđể thấy CSDL đã được khôi phục TestDB với trạng thái khôi phục như trong hình dưới đây.
Trạng thái khôi phục CSDL
Bước 4: Cấu hình HA server (Log Shipping/Mirroring) như trong hình dưới đây.
Ví dụ: Click chuột phải vào CSDL TestDBcủa SQL Server TESTINTANCE (máy chủ gốc) và click Màn hình dưới đây sẽ hiện ra.
Cấu hình Log Shipping/Mirroring
Bước 5: Chọn Mirroring hoặc Transaction Log Shipping theo yêu cầu của bạn và làm theo các bước Wizard được hệ thống đưa ra để hoàn tất việc cấu hình HA server.
Để được hỗ trợ chi tiết hơn, các bạn có thể liên hệ với kỹ thuật viên của chúng tôi qua hotline 02437 335 999 hoặc 0913 399 913 . Chúc các bạn thao tác thành công!