2ノードのSQLクラスター(2008 R2)があります。
SQLインスタンス内の一部のデータベースは、自動フェイルオーバーを備えた高安全性を使用して、リモートサイトの別のサーバーにミラーリングされます。これらのデータベースのミラーリング接続タイムアウト値は90秒に設定されています。
クラスター内のあるノードから別のノードにSQLを移動すると、フェールオーバークラスターマネージャーアプリケーションのオプションである[このサービスまたはアプリケーションを別のノードに移動する]を使用すると、ミラーリングされているデータベースが即座にミラーにフェイルオーバーします。
これは望ましくない動作です。ミラーリング接続タイムアウト値を設定する理由は、クラスターが完全に失敗し、機能しているノードがない場合にのみ、データベースミラーにフェールオーバーするためです。
これを達成する方法はありますか?それは可能であるかのように感じられます。そうしないと、クラスター内のすべてのノードのフェイルオーバーがミラーフェイルオーバーをトリガーするため、クラスタリングと自動フェイルオーバーデータベースミラーリングを組み合わせるという概念は機能しません。
ありがとう。
ミラーのフェイルオーバーを防ぐ1つの方法は次のとおりです。
ALTER DATABASE XYZ SET PARTNER SUSPEND
でミラーリングを一時停止ALTER DATABASE XYZ SET PARTNER RESUME
でミラーリングを再開しますミラーリング監視サーバーとセカンダリサーバーの両方がプライマリインスタンスを認識できなくなったため、インスタンスはミラーにフェールオーバーしています。
ミラーリングとクラスタリングを組み合わせてSQL Server 2012可用性グループを再作成しようとしているようです。
データベースミラーリングは、いわゆる「ソフト」エラーでのみタイムアウトします。クラスターのフェイルオーバーなどのハードエラーはミラーリングセッションに報告され、即座にフェイルオーバーが発生します。詳しくは http://msdn.Microsoft.com/en-us/library/ms190913.aspx をご覧ください。
ハードエラーの考えられる原因には、次の条件が含まれます(これらに限定されません)。
A broken connection or wire
A bad network card
A router change
Changes in the firewall
Endpoint reconfiguration
Loss of the drive where the transaction log resides
Operating system or process failure
ミラーリングのタイムアウトを引き起こす可能性のある条件には、次のものがあります(ただし、これらに限定されません)。
Network errors such as TCP link time-outs, dropped or corrupted packets,
or packets that are in an incorrect order.
A hanging operating system, server, or database state.
A Windows server timing out.
Insufficient computing resources, such as a CPU or disk overload, the transaction
log filling up, or the system is running out of memory or threads. In these
cases, you must increase the time-out period, reduce the workload, or change
the hardware to handle the workload.
ミラーリングと潜在的な問題の詳細については、私の質問を参照してください ミラーリングセッションがタイムアウトしてフェールオーバーする原因は何ですか?SQL Server 2005
これは、サーバーは応答しているがミラーリングエンドポイントがダウンしているために発生しています。パートナーと証人は、OSから、エンドポイントが存在するポートが閉じているという応答を受け取り、すぐにフェイルオーバーを開始します。タイムアウトは、「探しているポートがもうリッスンしていない」という応答ではなく、ホストから応答を受け取っていない場合に適用されます。
これを回避するには、Maxが推奨するようにミラーリングセッションを一時停止するか、計画外のクラスターフェイルオーバーも懸念される場合は、swasheckが推奨する自動フェイルオーバーを無効にし、必要に応じて手動でミラーフェイルオーバーを行う必要があります。