AlwaysOnのところWindowsクラスタに障害が発生した後、どのように迅速に(極端な場合には)回復テストDBサーバの残りのノードで

AlwaysOnは、高可用性と災害復旧技術の両方の機能の集合体である、それは、データベース全体の一つ以上のフェイルオーバーをサポートし、それはそれは、ある程度の負荷分散は、プライマリサーバへの圧力を減らす最もている実装します良いオプション。極端な状況が発生したときに、クラスタノードの大部分がハングアップされ、マスター・ノード・サーバ・データベースはまた、ハングアップに存在します。これは、Windowsクラスタが失敗したときで、まだどのように迅速にいくつかの存続ノード、サービスを引き継ぐために、データベースを選択します。

1:テストの目的

他の残りのサーバーノードが回復保留中の状態になるには、あまりにも、クラスタ全体が失敗になります、この時間DBデータベースはなり誤動作・ノード・サーバーにWindowsフェールオーバークラスターは、それを使用することはできません。次のテストノードは粘り強いで、高速リカバリのためのデータベースが利用できるようにする状態を選ぶまだ生きています。

2:テスト環境

ノード1 ノード1 ノード1 CLUSTERIP ListenerIP
172.XXX.XXX.112 172.XXX.XXX.113 172.XXX.XXX.114 172.XXX.XXX.115 172.XXX.XXX.117
ALWAYSONTEST01

ALWAYSONTEST02

ALWAYSONTEST03    
プライマリ;同期コミット

セカンダリ;同期コミット

セカンダリ;非同期コミット    

 以下を参照して、この時点ではマスターノードをログに記録します。

各ノードは正常に動作しています。

3:試験手順

ステップ1:2つのノード(XXX.112; XXX.113)閉じるので、Windowsクラスタ失敗、PingのクラスタIPタイムアウト表示。

         ----残り172.XXX.XXX.114は、非同期のコピーを保持します。

Step 2:登入唯一的存活的节点172.XXX XXX.114,SQL 显示错误如下:

 

Step 3:刷新DB,查询可用性组和DB的状态已分别处于Resolving 和Recovery Pending,数据库不可用。

 

此时Listener IP 也不可用

Step 4: 查看对应的Cluster 服务对应的Service Name

(Server ManageràLocal ServeràServices)

或(Server ManageràToolsàComponent ServicesàServices)

 Step5:手动停止群集服务

---- net.exe stop Cluster_Name(实为Service name)

成功关闭后172.XXX.XXX.115无法Ping 通

 

 

  Step6:在单一节点上使用强制仲裁,藉以启动WSFC群集

---- net.exestart Cluster_Name/forcequorum

成功启动后Cluster IP 可以Ping 通;Listener IP 无法Ping 通

通过FailOver Cluster Manger 查看节点和AG的状态如下:

下图为各节点状态;

下图为高可用性组的状态

 

Step 7:重启SQL Serveice 服务

----(个别情况下:首先,Disable后restart,然后再Enable后restart)

Step 8:执行可用性群组的强制性手动容错转移

  ---- ALTER AVAILABILITY GROUP group_name FORCE_FAILOVER_ALLOW_DATA_LOSS (其中 group_name 是可用性组的名称)

 

Step 9:可用性组的状态变为Primary状态,DB显示同步,listener IP也为可用

 

4:补充说明

此时Restart测试过程中关闭的节点(XXX.112;XXX.113),部署其上的DB显示Not Synchronizing。

 

  

本文版权归作者所有,未经作者同意不得转载,谢谢配合!!!

おすすめ

転載: www.cnblogs.com/xuliuzai/p/11069279.html