こんにちは。Premier Field Engineering 部の坂輪です。今回はSQL Serverフェールオーバークラスターの新しい機能についてご紹介します。
フェールオーバー クラスターインスタンスの改良
AlwaysOnと聞くとSQL Server 2012の新しい機能である可用性グループをイメージされる方が多いかと思いますが、AlwaysOnは高可用性やディザスタリカバリのソリューションを表しています。そのため、これまで提供されてきたSQL Serverフェールオーバークラスターの機能もAlwaysOnの1つのソリューションです。SQL Server 2012では様々な改良も行われ、AlwaysOnフェールオーバークラスターインスタンスと呼ばれるようになりました。そしてSQL Server 2012 AlwaysOnフェールオーバークラスターインスタンスでおこなわれた改良は次のとおりです。
- 柔軟なフェールオーバー ポリシーと新しいSQL Serverの正常性チェック
- SMBファイル共有のサポート
- マルチサブネット クラスタリングのサポート
- tempdb のローカル ストレージへの配置
今回はこれらの改良点についてご紹介したいと思います。
柔軟なフェールオーバー ポリシーと新しい SQL Server の正常性のチェック
SQL Server 2012のAlwaysOnフェールオーバークラスターインスタンス(以下AlwaysOn FCI)もこれまでと同様にWindowsのフェールオーバークラスター(以下WSFC)が必要です。WSFCにインストールされたSQL ServerのサービスはWSFCによって正常に稼働しているかどうか定期的なチェックが行われます。簡単なチェックを行うLooksAliveとより厳密なチェックを行うIsAliveと呼ばれるものです。LooksAliveとIsAliveの実際の処理はSQL Serverが提供するリソースDLLに実装されており、SQL Serverフェールオーバークラスターをインストールしたときにインストールされます。
SQL Server 2008 R2までは、LooksAliveがサービスコントロールマネージャ(以下SCM)を使用して、SQL Serverサービスの状態のチェック、IsAliveはSQL Serverに対して“SELECT @@servername”を実行した結果を使用したチェックを行っています。これらのチェックは、既定ではそれぞれLooksAliveが5秒間隔、IsAlvieが60秒間隔で実行されます。これらのチェックが失敗した場合、再起動またはフェールオーバーが行われます。
次の図はSQL Server 2008 R2までの正常性のチェックを図にしたものです。

この記事は参考になりましたか?
- あたらしいSQL Server/Denaliの世界連載記事一覧
- この記事の著者
-
坂輪貴行(サカワ タカユキ)
日本マイクロソフトの Premier Field Engineering 部にて、SQL Server ユーザーの支援を行う。前職はシステム エンジニアであり、長く Sybase を使用したプロジェクトに従事。業界歴 14 年の月一ゴルファー。
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です
この記事は参考になりましたか?
この記事をシェア