這一篇是從0開始搭建SQL Server AlwaysOn 的第二篇,主要講述如何搭建故障轉移集羣,由於AlwaysOn是基於Windows的故障轉移集羣的算法
在講解步驟以前須要瞭解一下故障轉移集羣仲裁配置服務器
下面圖片來自《Windows Server2012系統配置指南》網絡
四種集羣的仲裁配置:負載均衡
一、多數節點:這種配置不會用到仲裁磁盤,而所謂多數節點就是在正常節點數量佔多數的狀況下,集羣纔會提供服務,不然就中止服務。這種配置適用於奇數節點的集羣,例如5個節點的集羣,其正常節點數量必須至少3個,集羣纔會提供服務ide
二、多數節點和磁盤:適用於偶數節點的集羣,他在計算法定數量時會將仲裁磁盤計算進來,例如,4個節點+1個仲裁磁盤節點的集羣,能夠將其視爲5個節點的集羣,這時正常節點數量必須至少3個,集羣纔會提供服務測試
三、多數節點和文件共享:它和(多數節點和磁盤)相似,不過仲裁磁盤改成共享文件夾內的文件操作系統
四、沒有多數:只有磁盤,只要仲裁磁盤脫機,集羣就會中止提供服務(不建議使用,這種方式很早以前已經有了)orm
簡單說一下見證磁盤和見證共享文件夾blog
見證共享文件夾是Windows 2008才推出的見證磁盤方式,由於之前的見證磁盤(簡稱仲裁盤)須要共享存儲,也就是各個節點須要掛載同一個磁盤,這個磁盤叫見證磁盤,是放在共享存儲上面的圖片
推出見證共享文件夾以後咱們能夠不須要高大上的共享存儲,用共享文件夾就能夠了
咱們在使用故障轉移集羣的時候,只用兩種仲裁配置:(多數節點) 和 (多數節點和文件共享)
若是集羣節點是奇數,那麼使用多數節點
若是集羣節點是偶數,那麼使用多數節點和文件共享 (須要配置一個共享文件夾,各個節點都能訪問這個共享文件夾,而且共享文件夾所在機器不須要加入域)
注意:
域控不須要安裝故障轉移集羣服務和SQL Server,也不須要加入到故障轉移集羣
全部機器防火牆都關掉
兩個節點都須要安裝相同的更新程序,建議不要開啓自動更新功能,由系統管理員手動更新
SQL Server 2012 AlwaysOn只支持最多一個主副本和四個輔助副本,最多容許三個同步提交的可用性副本(包括主副本),最多容許兩個自動故障轉移副本(包括主副本)
步驟
此次也是step by step的方式向你們展現
一、 安裝故障轉移集羣,兩個節點都同時安裝故障轉移集羣服務
二、兩個節點都安裝完故障轉移集羣以後,在其中一個節點上進行註銷操做,而後使用DCADMIN這個域用戶登陸計算機
三、打開故障轉移集羣管理器
四、在「選擇服務器或羣集」界面中,單擊「瀏覽」按鈕將全部要加入羣集的服務器添加進來,而後單擊「下一步」按鈕。
五、在驗證配置嚮導中最好選擇運行全部測試,進行所有檢測就能夠查看到服務器之間創建羣集的全部設置,包括網絡、共享磁盤、操做系統等。
能夠查看一下報告
報告裏面必定不能出現失敗,不然你須要檢查是什麼問題致使失敗,失敗是創建不了故障轉移集羣的
出現警告要看狀況,對於存儲的警告,因爲目前爲止沒有添加任何的存儲設備,這裏能夠忽略,還有網絡警告
因爲各個節點只有一個網卡,正常來講還須要一個心跳網卡,因此這裏會出現警告,因爲實驗環境這個警告能夠忽略
集羣報告會存放在這個路徑下
C:\Windows\Cluster\Reports
六、點擊完成
七、建立集羣嚮導
八、輸入集羣名稱和vip
注意:這個只是集羣的管理名稱和管理IP,跟AlwaysOn無關
因爲咱們當前尚未任何存儲,因此不勾選將全部符合條件的存儲添加到羣集
查看報告能夠看到 找不到磁盤見證的相應磁盤,由於咱們還沒加見證共享文件夾或仲裁盤,這裏能夠忽略
九、羣集建立完成
能夠在域控的AD用戶和計算機裏看到集羣的virtual name
十、因爲咱們是兩個節點的故障轉移集羣,因此須要加上共享文件夾,在域控上創建一個共享文件夾,讓兩個集羣節點均可以訪問
注意:若是是奇數節點,這一步是不須要作的!
共享文件夾所在機器入域(域網絡)和不入域(獨立機器)都無所謂
生產環境不要把共享文件夾放在域控上!
注意集羣中止服務的條件
十一、在域控上的C盤新建一個quorumshare文件夾做爲共享文件夾
quorumshare文件夾的權限爲everyone徹底控制和DCADMIN域用戶的讀寫權限(保險起見)
十二、UNC路徑:\\WIN-FELBG10UU7F\quorumshare
在quorumshare文件夾下隨便建一個文本文件
1三、在兩個集羣節點上測試可否訪問共享文件夾
兩個節點都用域用戶DCADMIN登陸,並測試另外兩個節點可否訪問這個quorumshare共享文件夾
1四、回到故障轉移集羣管理器,填寫文件共享路徑:\\WIN-FELBG10UU7F\quorumshare
注意:若是quorumshare文件夾沒有寫入權限,那麼在填寫文件共享路徑的時候會被拒絕
1五、能夠看到共享文件夾下面會生成VerifyShareWriteAccess.txt和Witness.log兩個文件,至於這兩個文件的做用你們看它們的文件名就知道了
故障轉移集羣到這裏就已經配置完成
Windows Server2012系統配置指南
配置羣集網絡(SQL CLUSTER的狀況,不是alwayson的狀況)
public網絡:192.168.8.0 客戶端能夠經過此網絡與羣集節點通訊,也要讓羣集節點之間能夠經過此網絡進行通訊(看成private網絡的備用網絡 心跳的備用網絡),菠蘿說過換alwayson的鏡像ip很是麻煩,須要停機
private網絡:192.168.9.0 此網絡只用做心跳
iSCSI網絡:192.168.10.0 利用iSCSI通訊協議與目標服務器通訊的專用網絡,不能夠羣集節點之間通訊網絡,也不能夠用來與客戶端通訊
public網絡
容許在此網絡上進行羣集網絡通訊 and 容許客戶端經過該網絡鏈接
private網絡
容許在此網絡上進行羣集網絡通訊
iSCSI網絡
不容許在此網絡上進行羣集網絡通訊
本地盤不用共享存儲的狀況下
最佳作法:不分開網段,只有一個public192.168.8.0,兩個網卡作teaming,最好是負載均衡那種,不用active-backup主備模式,分擔壓力
若是分開網段,好比
主副本 網卡1:192.168.8.20 ;網卡2:192.168.9.20
輔助副本 網卡1:192.168.8.21;網卡2:192.168.9.21
一旦輔助副本的網卡2壞了,要用網卡1來代替,變成了跨子網,並且輔助副本的網卡1也要承擔客戶端流量
若是不分開網段可是沒作網卡teaming
主副本 網卡1:192.168.8.20 ;網卡2:192.168.8.21
輔助副本 網卡1:192.168.8.22;網卡2:192.168.9.23
一旦輔助副本的網卡2壞了,要用網卡1來代替,只是輔助副本的網卡1承擔客戶端流量
最佳設置:不分開網段,無論網卡是否作了teaming
都設置爲容許在此網絡上進行羣集網絡通訊 and 容許客戶端經過該網絡鏈接,也就是保持默認設置
若是集羣節點跟見證共享文件夾不能通訊,例如 域控關機了,到達必定時間,在服務器管理器面板裏角色和服務器組會顯示紅色
點擊服務能夠看到 故障轉移集羣服務已經掛起
權限問題
在AD用戶和計算機管理界面 裏的 域用戶和故障轉移集羣用戶的權限須要添加下面紅框的權限,不然建立偵聽器的時候有可能報錯
Create failed for Availability Group Listener ‘SQLCDB01Temp’. (Microsoft.SqlServer.Smo)
The WSFC cluster could not bring the Network Name resource with DNS name ‘SQLCDB01Temp’ online. The DNS name may have been taken or have a conflict with existing name services, or the WSFC cluster service may not be running or may be inaccessible. Use a different DNS name to resolve name conflicts, or check the WSFC cluster log for more information. The attempt to create the network name and IP address for the listener failed. The WSFC service may not be running or may be inaccessible in its current state, or the values provided for the network name and IP address may be incorrect. Check the state of the WSFC duster and validate the network name and IP address with the network administrator. (Microsoft SQL Server, Error: 19471)
參考文章:https://blogs.msdn.microsoft.com/alwaysonpro/2013/10/30/create-availability-group-listener-fails-with-message-19471-the-wsfc-cluster-could-not-bring-the-network-name-resource-online/
總結
經過上面的步驟演示,故障轉移集羣配置就完成了,但願你們可以看清楚截圖,一步一步進行配置,基本上就沒有問題了
下一篇正式講SQL Server AlwaysOn搭建了