天天看點

從0開始搭建SQL Server AlwaysOn 第四篇(配置異地機房節點)

第一篇

http://www.cnblogs.com/lyhabc/p/4678330.html

第二篇

http://www.cnblogs.com/lyhabc/p/4682028.html

第三篇

http://www.cnblogs.com/lyhabc/p/4682986.html

第四篇

http://www.cnblogs.com/lyhabc/p/6136227.html

搭建非域AlwaysOn win2016+SQL2016

http://www.cnblogs.com/lyhabc/p/6498712.html

SQL Server AG叢集啟動不起來的臨時自救大招

http://www.cnblogs.com/lyhabc/p/6953255.html

這一篇是從0開始搭建SQL Server AlwaysOn 的第四篇,這一篇開始搭建異地機房節點

注意點1

注意異地節點最好至少有2個AG節點,否則在本地節點進行手動故障轉移的時候會出現仲裁警告,提示WSFC叢集有脫機危險

在異地節點隻有一個的情況下,雖然Windows2012R2有動态仲裁機制,但是,當本地節點非優雅當機的情況下,整個WSFC叢集有可能得不到任何票數

也就是異地節點也得不到票數而導緻整個WSFC叢集脫機!!

注意點2

當進行手動故障轉移的時候,更新DNS緩存需要10分鐘,是以當進行手動故障轉移之後,用偵聽器ip連接配接SQL Server會很慢,這是因為還在更新DNS緩存

步驟

這一篇依然使用step by step的方式介紹怎麽搭建AlwaysOn異地機房節點

新加異地機房節點機器名:

1、在異地節點上安裝故障轉移叢集

2、在本地機房節點機器上打開故障轉移叢集管理器,添加一個節點

從0開始搭建SQL Server AlwaysOn 第四篇(配置異地機房節點)

3、驗證配置

從0開始搭建SQL Server AlwaysOn 第四篇(配置異地機房節點)

4、解決新加節點OU不同問題,隻需修改組織機關ou,不需要修改站點site,因為如果本地機房和異地機房的域設定了site,在驗證配置的時候會警告,當然可以忽略也可以修正

因為隻是警告已而,忽略也無所謂

5、添加節點成功

6、在新節點上安裝好SQL Server并優化SQL Server,這裡忽略安裝和優化步驟

7、把異地機房新節點添加到alwayson可用性組裡,打開alwayson的可用性屬性界面,可用性組名稱為:AGWMSJXC

可以看到添加了異地機房節點之後,這個異地機房節點還沒有聯接到可用性組,也就是目前可用性組還沒識别到這個異地機房節點

8、對偵聽器添加另一個子網的VIP,這一步,如果可用性組沒有啟用可用性組偵聽器那麼這一步可以忽略

如果可用性組啟用了偵聽器,那麼需要分兩種情況

1、異地節點的網段跟本地機房是一樣的,比如都是192.168.1.x ,那麼這一步也不需要做

2、異地節點的網段跟本地機房是不一樣的,也就是跨子網,比如本地機房是192.168.1.x,異地機房是192.168.10.x,那麼這一步需要做

現在偵聽器IP有兩個,一個是本地機房網段的IP,一個是異地機房網段的IP

添加了新的偵聽器vip之後,故障轉移叢集管理器裡會自動将這個偵聽器vip資源脫機

9、建立一個測試可用性組,主要用來打通/開啟本地節點和異地節點的5022端口

建好之後,在原AG重新整理一下會看到異地節點JXCA-WMS08已經自動聯接到可用性組AGWMSJXC

10、對資料庫進行備份還原到異地節點JXCA-WMS08,在異地節點JXCA-WMS08上進行操作,将資料庫逐個點選聯接到可用性組

11、異地節點添加完成

12、手動故障轉移主副本到異地節點

注意當隻有一個異地節點的時候,正在驗證WSFC仲裁投票配置那一欄會出現警告!

故障轉移之後會發現異地節點的偵聽器ip聯機,本地節點的偵聽器ip脫機

13、在異地節點上使用異地節點偵聽器ip連接配接SQL Server,并寫入測試資料

14、把主副本手動故障轉移回來本地節點

15、用本地節點偵聽器ip連接配接SQL Server,發現剛才對異地節點偵聽器ip的資料寫入都已經同步過來本地機房節點

16、添加WSFC叢集IP位址資源的異地機房IP,在WSFC管理器裡選中群集核心資源下面的伺服器名稱,右鍵-》屬性

添加一個異地機房的WSFC的vip:192.168.7.130

從0開始搭建SQL Server AlwaysOn 第四篇(配置異地機房節點)

添加成功之後vip會顯示脫機這是因為目前WSFC主節點不在異地機房的節點上,而是本地機房的節點上

從0開始搭建SQL Server AlwaysOn 第四篇(配置異地機房節點)

17、把WSFC主節點轉移到異地機房的某個節點,然後把本地所有節點都關機

從0開始搭建SQL Server AlwaysOn 第四篇(配置異地機房節點)
從0開始搭建SQL Server AlwaysOn 第四篇(配置異地機房節點)

這時候把本地機房的所有節點關機

從0開始搭建SQL Server AlwaysOn 第四篇(配置異地機房節點)

現在用異地機房節點的WSFC的vip連接配接WSFC叢集

從0開始搭建SQL Server AlwaysOn 第四篇(配置異地機房節點)
從0開始搭建SQL Server AlwaysOn 第四篇(配置異地機房節點)

可以發現WSFC的主節點已經轉移到WIN-BDKSOOLDV18這個異地節點上了,而且群集資源還是聯機狀态

從0開始搭建SQL Server AlwaysOn 第四篇(配置異地機房節點)

18、沒有加入域的應用伺服器(IIS伺服器)如果需要用偵聽器名稱來連接配接alwayson叢集是不行的,解決方法是修改

應用伺服器的hosts檔案,寫上偵聽器名和偵聽器ip,這樣用戶端才能用偵聽器名稱連接配接alwayson叢集,用戶端的webconfig檔案

裡寫偵聽器名稱,這樣即使failover到異地節點也不需要修改應用伺服器的webconfig檔案,當然應用伺服器加入了域就不用了,、

加入了域的應用伺服器會自動去查詢DC上的DNS管理器找到alwayson的偵聽器名稱

從0開始搭建SQL Server AlwaysOn 第四篇(配置異地機房節點)
從0開始搭建SQL Server AlwaysOn 第四篇(配置異地機房節點)

hosts檔案

提示:實際上第16步不是必須的,你可以不添加WSFC的異地子網的vip,但是當本地機房所有節點關機之後

你就不能用本地的vip:192.168.6.60來連接配接WSFC叢集,也就無法管理WSFC叢集

附上結構圖

兩個網段,是以會有兩個偵聽器IP,但是同一個時刻隻有一個偵聽器IP是聯機狀态,在WSFC叢集管理器裡檢視

主站點:192.168.6x

DR站點:192.168.7.x

從0開始搭建SQL Server AlwaysOn 第四篇(配置異地機房節點)

故障轉移到DR站點之後

從0開始搭建SQL Server AlwaysOn 第四篇(配置異地機房節點)

參考文章:

http://blog.itpub.net/29371470/viewspace-2087672

http://www.tech-coffee.net/understand-failover-cluster-quorum/

如有不對的地方,歡迎大家拍磚o(∩_∩)o 

本文版權歸作者所有,未經作者同意不得轉載。

繼續閱讀