web-dev-qa-db-ja.com

Win2012R2上のMSSQL 2016AlwaysOnクラスター-ファイル共有監視がダウンしている場合、AGはフェイルオーバーします

現在の設定は次のとおりです。

  • 単一のフェールオーバークラスター内の8つのWindows2012 R2ノード、共有ストレージなし、ファイル共有監視(DC上)

  • MS SQL 2016AlwaysOnといくつかのAGグループ

  • デフォルトの「リソースが失敗した場合」ポリシー

クラスター検証レポートには、いくつかのマイナーな警告(更新の違いなど)が表示されますが、全体的にはすべて問題ないようです。

最近、約30分DCダウンタイムが発生し、その結果、ファイル共有監視が利用できなくなったため、AGの1つがフェイルオーバーしました。これは、8つすべてのクォーラムであるため、予想どおりではありません。ノードはまだ存続しているため、フェイルオーバーは予想されませんでした。

クォーラム/ FSWなどで利用可能なすべてのドキュメントを読んだ後でも、フェイルオーバーが発生した理由について明確な答えや理解がまだありません。

FCイベントログには、とりわけ、次のあいまいさが含まれています。

FailoverClustering Event ID:1069 Resource Control Manager

Cluster resource 'File Share Witness' of type 'File Share Witness' in clustered role 'Cluster Group' failed.

Based on the failure policies for the resource and role, the cluster service may try to bring the resource online on this node or move the group to another node of the cluster and then restart it. Check the resource and group state using Failover Cluster Manager or the Get-ClusterResource Windows PowerShell cmdlet.

セカンダリ(NODE5)にスワップしたノードでは、システムイベントログに次のものが含まれます。

16.03.2017 12:39:47 Cluster resource 'File Share Witness' of type 'File Share Witness' in clustered role 'Cluster Group' failed due to an attempt to block a required state change in that cluster resource.

16.03.2017 12:39:47 File share witness resource 'File Share Witness' failed to arbitrate for the file share '\\DC\CLUSTER'. Please ensure that file share '\\DC\CLUSTER' exists and is accessible by the cluster.

16.03.2017 12:39:48 The Cluster service failed to bring clustered role 'Cluster Group' completely online or offline. One or more resources may be in a failed state. This may impact the availability of the clustered role.

16.03.2017 12:39:48 Cluster resource 'File Share Witness' of type 'File Share Witness' in clustered role 'Cluster Group' failed due to an attempt to block a required state change in that cluster resource.

16.03.2017 12:39:48 File share witness resource 'File Share Witness' failed to arbitrate for the file share '\\DC\CLUSTER'. Please ensure that file share '\\DC\CLUSTER' exists and is accessible by the cluster.

およびフェールオーバークラスターイベントログ:

Cluster resource 'File Share Witness' in clustered role 'Cluster Group' has transitioned from state Terminating to state Failed.

<...>

The Cluster service is attempting to fail over the clustered role 'Cluster Group' from node 'NODE5' to node 'NODE6'.

<...>

Clustered role 'db5' is moving to cluster node 'NODE6'.

私の考えでは、これは基本的に、File ShareWitnessがオフラインになったという事実によってフェイルオーバーが発生したことを意味します。しかし、なぜ?

そして、この動作を修正する方法があるのではないかと考えています。どんな説明やアドバイスも大歓迎です、ありがとう!

1
Arseny V.

私の考えでは、これは基本的に、File ShareWitnessがオフラインになったという事実によってフェイルオーバーが発生したことを意味します。しかし、なぜ?

それはそれが意味することではありません。投稿されたログを読むと、コアクラスターグループが別のノードに失敗したことがわかります(監視との接続の問題が修正されることを期待しています)が、SQLServerに関しては何もありません。ログのどこでSQLServerに障害が発生したかを見つけて追跡し、クラスターが自動障害を開始することを決定した理由を確認する必要があります。

自動障害が発生したという事実は、クラスターにクォーラムがあったことを意味します。そうでなければ、自動障害は発生しなかったでしょう。

そして、この動作を修正する方法があるのではないかと考えています。どんな説明やアドバイスも大歓迎です、ありがとう!

これは起こっていることではないので、修正するものは何もありません。ログを調べて、自動失敗の理由を確認します。これが失敗した理由です。FSWのヘルスチェックができなかったためではありません。

3
Sean Gallardy