SQLServer 2014 本地机房HA+灾备机房DR解决方案
SQLServer 2014 主數(shù)據(jù)中心HA+災(zāi)備機房DR解決方案
?
SQLServer 2008 的時候使用 local WSFC+DR Mirror方式,對象是單數(shù)據(jù)庫
兩個單獨的 WSFC 上使用兩個 FCI
每個WSFC有兩個以上的節(jié)點
數(shù)據(jù)庫鏡像允許單獨 WSFC 上的多個 FCI 使用相同的實例名稱
?
?
SQLServer 2012/2014 的時候使用 local WSFC+DR AG方式,對象是可用性組(一般為整個實例)
單個 WSFC 上使用兩個 FCI
單個 WSFC 含有四個以上節(jié)點,每個FCI(failover cluster instance)有兩個以上的節(jié)點
在同一個 WSFC 內(nèi),兩個 FCI 必須使用不同的實例名稱,例如,使用“INST_A”作為主 FCI 的實例名稱,使用“INST_B”作為 DR FCI 的實例名稱
?核心業(yè)務(wù)dr使用集群
?
非核心業(yè)務(wù)dr使用單實例
?
?
(*)由于跨機房的WSFC,共享存儲的注意事項
每個 FCI 都有自己的共享存儲(其他數(shù)據(jù)中心內(nèi)的節(jié)點無法訪問),稱作非對稱存儲
兩個 FCI 中的數(shù)據(jù)庫文件和事務(wù)日志文件也應(yīng)該使用完全相同的文件路徑,磁盤應(yīng)使用完全相同的驅(qū)動器號(避免搭建ag,還原輔助副本的時候使用restore with move/創(chuàng)建文件組或者日志操作的失敗)
每個FCI中,SQL Server 實例的 FCI 故障轉(zhuǎn)移是自動執(zhí)行的;AG的故障轉(zhuǎn)移模式必須是手動,AG同步模式建議異步提交
?
(*)由于跨機房的WSFC,仲裁投票、仲裁模型 的注意事項
默認情況下,故障轉(zhuǎn)移群集中的每個節(jié)點都具有投票( 節(jié)點的 NodeWeight 屬性),引入一個修補程序 (http://support.microsoft.com/kb/2494036(用于將 1 個投票分配給 WSFC 中的特定節(jié)點,將 0 個投票分配給其他一些節(jié)點),拓撲中的每個節(jié)點上都必須安裝此修補程序
投票方案:
- 主數(shù)據(jù)中心的每個節(jié)點有 1 個投票
- DR數(shù)據(jù)中心的每個節(jié)點有 0 個投票
作為最佳做法,WSFC 的投票總數(shù)應(yīng)為奇數(shù)。如果投票節(jié)點數(shù)目為偶數(shù)(上圖示例拓撲),應(yīng)在各自FCI中備機節(jié)點(避免使用文件仲裁,管理成本高)
(*)發(fā)生dr切換時
如果主數(shù)據(jù)中心發(fā)生停機,正常切換到DR數(shù)據(jù)中心時,需要對DR重新設(shè)置仲裁配置。必須向DR數(shù)據(jù)中心的每個節(jié)點都分配一個投票,而將主數(shù)據(jù)中心每個節(jié)點上的投票都設(shè)置為“0”
當(dāng)主數(shù)據(jù)中心恢復(fù)活動后,還要再次對投票進行調(diào)整
--查看仲裁設(shè)置
SELECT cluster_name, quorum_type_desc, quorum_state_desc
FROM sys.dm_hadr_cluster;
--查看是否有投票權(quán)
SELECT member_name, number_of_quorum_votes
FROM sys.dm_hadr_cluster_members
order by number_of_quorum_votes desc
?
--完全設(shè)置
?
?
PowerShell
查看所有節(jié)點的當(dāng)前投票設(shè)置
??????? ?Get-ClusterNode | fl NodeName, NodeWeight
將某一節(jié)點的投票設(shè)置為“0”
(Get-ClusterNode "DRNode1").NodeWeight=0
?
?
?
?
?
--注意:
windows故障轉(zhuǎn)移集群+ag環(huán)境時,不能再將ag的自動故障轉(zhuǎn)移打開,但可以打開同步模式
由于只能使用windows故障轉(zhuǎn)移,所以避免主機房節(jié)點失敗,沒有正常切換到主機房的備機,需要拉掉dr機房的投票權(quán)(避免故障轉(zhuǎn)移到dr,實際上搭ag之前需要拉掉overlap的節(jié)點,不允許集群不同實例間出現(xiàn)節(jié)點交叉)
The FCI already has automatic failover configured between the nodes.
The current implementation of AG doe not allow a failover outside of the FCI nodes.
詳見:
https://blogs.msdn.microsoft.com/arvindsh/2012/09/26/alwayson-availability-group-forced-failover-under-the-hood/
轉(zhuǎn)載于:https://www.cnblogs.com/ios9/p/9533431.html
總結(jié)
以上是生活随笔為你收集整理的SQLServer 2014 本地机房HA+灾备机房DR解决方案的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 进程与线程理论基础
- 下一篇: javascript console自动