松本美穂と松本崇博が執筆した SQL Server 2012 自習書シリーズの「新機能編 No.2 AlwaysOn による可用性の向上」の HTML 版です。 日本マイクロソフトさんの Web サイトで Word または PDF 形式でダウンロードできますが、今回、HTML 版として公開する許可をいただきましたので、ここに掲載いたします。[2014年12月26日]
SQL Server 2012 で提供される目玉の新機能は、新たな SQL Server AlwaysOn テクノロジーとして提供される「AlwaysOn 可用性グループ」と「AlwaysOn フェールオーバー クラスター インスタンス」、「Windows Server Core のサポート」です。
AlwaysOn は、「いつでも利用できる」ことを目指したテクノロジーで、いわゆる「高可用性」(High Availability)および「ビジネス継続性」(Business Continuity)を実現するための機能のブランド名です。これまでのバージョンでは、WSFC(Windows Server フェールオーバー クラスタリング)や DBM(データベース ミラーリング)、ログ配布、レプリケーション機能などが提供されていました。そして、これらのテクノロジーを利用して、稼働率 99.999%(ファイブ ナイン=年間ダウンタイム約5.3分以内)を達成/実現している企業もすでに存在しています。
弊社のお客様でも、可用性を向上させるために、「WSFCとDBMの組み合わせ」や「WSFCとログ配布の組み合わせ」で年間ダウンタイム0(1年間無障害・無停止)を実現しているお客様がいらっしゃいます。また、求める可用性レベルが低くても良いという場合には「WSFC のみ」や「DBM のみ」で運用されているお客様もいらっしゃいます。昨今では、万が一の災害に備えるべく、DR(Disaster Recovery:災害復旧)へのニーズも高まっています(従来のバージョンでは、「DBM 非同期モード」や「ログ配布」機能を利用することで DR を実現できます)。
しかし、これらの機能は、すべて別々のテクノロジーとして提供されていたため、組み合わせて利用するためには設定が面倒であったり、組み合わせならではの設定のコツが必要だったりもしました。また、柔軟な設定が行えない部分や、DR 構成時の復旧手順が複雑(これに伴うダウンタイムの増加)などの課題もありました。コスト面でも、WSFC では共有ストレージ(エントリ クラスでも数百万円~)が必須であったこと、DBM での自動フェールオーバー構成時には監視サーバーを別途用意する必要があるなど、余計なコストがかかっていました。そこで、これらの課題を解決するべく登場したのが、今回の SQL Server 2012 で提供された「AlwaysOn 可用性グループ」(Availability Group)です。
AlwaysOn 可用性グループ(Availability Group)は、従来の WSFC(Windows Server フェールオーバー クラスタリング)とデータベース ミラーリング機能の良いところどりをしたような機能で、容易な設定で可用性を向上させることができます。以下の画面は、可用性グループの設定ウィザードを利用して、4台のセカンダリ(複製データを保持するサーバー)を設定しているときの様子です。
自動フェールオーバー(自動的に切り替わるサーバー)の指定や、DR(災害復旧)用途の非同期モードの設定などを簡単に行うことができます。
AlwaysOn 可用性グループでは、内部的にデータベース ミラーリングと同じようなテクノロジーを利用して、データベースの複製(レプリカ)を作成しています(最大 4つの複製=セカンダリを作成することが可能です)。
クライアントからは、リスナーと呼ばれる仮想サーバー名を介してアクセスするので、どのサーバーが処理しているかは意識する必要はありません。フェールオーバー(プライマリとセカンダリの役割変更)があったとしても、クライアントのアプリケーションを修正する必要はなく、同じサーバー名で透過的にアクセスすることが可能です。
フェールオーバーにかかる時間は、わずか 10~20秒程度であり、WSFC の場合の 30秒~数分かかるのに比べて大幅にダウンタイムを短縮することもできます。
AlwaysOn 可用性グループには、次の利点もあります。
このように、AlwaysOn 可用性グループには多くの利点があり、従来のバージョンの DBM(データベース ミラーリング)機能ではサポートされなかった複数セカンダリ(最大4台まで構成可能。DBM では1台まで)や、セカンダリに対する読み取り操作/バックアップ操作が可能なアクティブ セカンダリが実装されています(DBM の場合はスナップショット作成時点での過去データの読み取りのみがサポートされるのに対して、可用性グループではリアルタイムでの読み取り操作が可能)。
また、従来のバージョンだと複数のテクノロジーを組み合わせないと実現できなかった構成(ローカル環境での高可用性と、遠隔地サーバーによる DR 構成を実現するには「WSFC と DBM 非同期モード」あるいは「WSFC とログ配布」、「DBM 同期とログ配布」などの組み合わせが必要だったもの)を、可用性グループ だけで実現できるようになりました。障害からの復旧時にも、アプリケーションを修正する必要がないため(同じサーバー名でアクセスできるため)、ダウンタイム(停止時間)を大きく短縮することが可能です。
AlwaysOn フェールオーバー クラスター インスタンス(FCI)は、WSFC(Windows Server フェールオーバー クラスタリング)のリソースとしてインストールした SQL Server インスタンス(SQL Server クラスター)のことを指します。SQL Server 2012 では、従来のバージョンの SQL Server クラスターと比べて、次の機能が強化されています。
このように、SQL Server 2012 では WSFC が強化されて柔軟な構成をとれるようになりました。これらは、可用性の向上に繋がるだけでなく、性能向上にも役立つものです。
SQL Server 2012 からは、Windows Server Core へのインストールがサポートされるようになりました。Server Core は、GUI を持たない、コマンドベースでの操作で管理する Windows Server の構成です。以下の画面は、Server Core 上へ SQL Server 2012 をインストールしているときの様子です(コマンドラインから setup.exe を実行しています)。
Server Core では、GUI が不要であるため、必要最小限の機能のみしかインストールされません。これにより、よりセキュアな運用が可能になり、また、修正プログラムの適用回数を大きく削減できるというメリットが得られます。Server Core の場合は、修正プログラムの数を 50~60%程度削減できると言われており、その分 OS を再起動する回数を減らすことができます(計画停止時間を大きく短縮することが可能です)。
このように、SQL Server 2012 では、可用性を高めるための機能強化が数多く行われています。
以降では、これらの AlwaysOn テクノロジーを簡単に試せるように、ステップ バイ ステップ形式で画面ショット満載で説明しますので、ぜひ試しながら読み進めてください。
第38回: SQL Server 2014 CTP2 の公開
第37回: SQL Server 2014 CTP1 の自習書をご覧ください
第36回: SQL Server 2014 CTP1 のクラスター化列ストア インデックスを試す
第35回: SQL Server 2014 CTP1 のインメモリ OLTP の基本操作を試す
第34回: GeoFlow for Excel 2013 のプレビュー版を試す
第33回:iPad と iPhone からの SQL Server 2012 Reporting Servicesのレポート閲覧
第32回:PASS Summit 2012 参加レポート
第31回:SQL Server 2012 Reporting Services 自習書のお知らせ
第30回:SQL Server 2012(RTM 版)の新機能 自習書をご覧ください
第29回:書籍「SQL Server 2012の教科書 開発編」のお知らせ
第26回:SQL Server 2012 の Power View 機能のご紹介
第25回:SQL Server 2012 の Data Quality Services
第24回:SQL Server 2012 自習書のご案内と初セミナー報告
第23回:Denali CTP1 が公開されました
第22回 チューニングに王道あらず
第21回 Microsoft TechEd 2010 終了しました
第20回 Microsoft TechEd Japan 2010 今年も登壇します
第19回 SQL Server 2008 R2 RTM の 日本語版が公開されました
第18回 「SQL Azure 入門」自習書のご案内
第17回 SQL Server 2008 自習書の追加ドキュメントのお知らせ
第16回 SQL Server 2008 R2 自習書とプレビュー セミナーのお知らせ
第15回 SQL Server 2008 R2 Reporting Services と新刊のお知らせ
第14回 TechEd 2009 のご報告と SQL Server 2008 R2 について
第13回 SQL Server 2008 R2 の CTP 版が公開されました
第12回 MVP Summit 2009 in Seattle へ参加