SQL Server のことなら SQL Quality SQL Server パフォーマンス チューニング、コンサルティング、アドバイス、相談、定期診断、トレーニング

ホーム > 技術情報 > SQL Server 2012 自習書 DWH 関連の新機能

SQL Server 2012 自習書シリーズ (HTML 版)
新機能編 No.2「AlwaysOn による可用性の向上」

松本美穂と松本崇博が執筆した SQL Server 2012 自習書シリーズの「新機能編 No.2 AlwaysOn による可用性の向上」の HTML 版です。 日本マイクロソフトさんの Web サイトで Word または PDF 形式でダウンロードできますが、今回、HTML 版として公開する許可をいただきましたので、ここに掲載いたします。[2014年12月26日]

目次へ | 前のページへ | 次のページへ

1.2 SQL Server AlwaysOn による可用性の向上/DR の実現

◆ SQL Server AlwaysOn による可用性の向上/DR の実現

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)の概要

AlwaysOn 可用性グループ(Availability Group)は、従来の WSFC(Windows Server フェールオーバー クラスタリング)とデータベース ミラーリング機能の良いところどりをしたような機能で、容易な設定で可用性を向上させることができます。以下の画面は、可用性グループの設定ウィザードを利用して、4台のセカンダリ(複製データを保持するサーバー)を設定しているときの様子です。

00004

自動フェールオーバー(自動的に切り替わるサーバー)の指定や、DR(災害復旧)用途の非同期モードの設定などを簡単に行うことができます。

AlwaysOn 可用性グループでは、内部的にデータベース ミラーリングと同じようなテクノロジーを利用して、データベースの複製レプリカ)を作成しています(最大 4つの複製=セカンダリを作成することが可能です)。

00005

クライアントからは、リスナーと呼ばれる仮想サーバー名を介してアクセスするので、どのサーバーが処理しているかは意識する必要はありません。フェールオーバー(プライマリとセカンダリの役割変更)があったとしても、クライアントのアプリケーションを修正する必要はなく、同じサーバー名で透過的にアクセスすることが可能です。

フェールオーバーにかかる時間は、わずか 10~20秒程度であり、WSFC の場合の 30秒~数分かかるのに比べて大幅にダウンタイムを短縮することもできます。

AlwaysOn 可用性グループには、次の利点もあります。

  • ウィザードによる容易な設定およびダッシュボードによる容易な監視が可能
00006
  • セカンダリを遠隔地へ配置した DR(災害復旧)構成が可能。災害からの復旧時にも、アプリケーションを修正することなく同じサーバー名(リスナー)でアクセス可能なため、ダウンタイム(停止時間)を大きく短縮可能
  • セカンダリに対して読み取りアクセスが可能(レポーティング ツールのような読み取り中心のアプリケーションが、プライマリへ負荷をかけることなく、読み取り操作が可能)
  • セカンダリからバックアップを取得可能(プライマリへ負荷をかけることなく、バックアップを取得することが可能)
  • データ転送時の圧縮と暗号化が可能(データベース複製時の転送データは自動圧縮されるためパフォーマンス良く複製することが可能。暗号化によるセキュリティ強化も可能)
  • 自動ページ修復機能(万一プライマリ上のデータベース ページが破損した場合には、セカンダリ上の正常なページを利用して、自動修復が可能)
  • 柔軟なフェールオーバー ポリシー(フェールオーバーを発生させる障害のレベルを 5段階で調整可能)
  • 共有ストレージが不要な分、コスト削減が可能(可用性グループでは、それぞれのノードがローカル ディスク内にデータベースの複製を保持するため、共有ストレージが不要。通常、WSFC を構成する場合は、エントリー クラスの共有ストレージで数百万円、ミドル クラスだと一千万前後、その分のコスト削減が可能)。また、DBM のように監視サーバーを別途用意する必要がないため、その分のコスト削減も可能
  • 包含データベース(Contained Database)機能により、ログイン アカウントや照合順序に依存しないデータベースが作成可能になり、障害時のダウンタイム(停止時間)を短縮可能(従来のバージョンでは、障害によるフェールオーバー発生後は、ログイン アカウントとデータベース ユーザーとのマッピングの修復が必要)。

このように、AlwaysOn 可用性グループには多くの利点があり、従来のバージョンの DBM(データベース ミラーリング)機能ではサポートされなかった複数セカンダリ(最大4台まで構成可能。DBM では1台まで)や、セカンダリに対する読み取り操作バックアップ操作が可能なアクティブ セカンダリが実装されています(DBM の場合はスナップショット作成時点での過去データの読み取りのみがサポートされるのに対して、可用性グループではリアルタイムでの読み取り操作が可能)。

また、従来のバージョンだと複数のテクノロジーを組み合わせないと実現できなかった構成(ローカル環境での高可用性と、遠隔地サーバーによる DR 構成を実現するには「WSFC と DBM 非同期モード」あるいは「WSFC とログ配布」、「DBM 同期とログ配布」などの組み合わせが必要だったもの)を、可用性グループ だけで実現できるようになりました。障害からの復旧時にも、アプリケーションを修正する必要がないため(同じサーバー名でアクセスできるため)、ダウンタイム(停止時間)を大きく短縮することが可能です。

◆ AlwaysOn フェールオーバー クラスター インスタンス(FCI)の新機能

AlwaysOn フェールオーバー クラスター インスタンスFCI)は、WSFC(Windows Server フェールオーバー クラスタリング)のリソースとしてインストールした SQL Server インスタンス(SQL Server クラスター)のことを指します。SQL Server 2012 では、従来のバージョンの SQL Server クラスターと比べて、次の機能が強化されています。

  • SMB 接続共有フォルダー)へのデータベース配置が可能に。SQL Server 2012 からは、共有ストレージが必須ではなくなり、データベースのインストール先としてネットワーク上の共有フォルダーを選択可能
00007
  • tempdb データベースローカル ディスクへ配置可能。ボトルネックになりやすい tempdb データベースをローカル ディスクへ配置できることで、SSD などより高速な内蔵ストレージへ配置して性能向上を実現可能
  • 複数サイト(複数サブネット)フェールオーバー クラスタリングのサポート(従来のバージョンではサブネットをまたがったクラスタリングは構成不可。SQL Server 2012 からはサブネットをまたがった構成が可能に)
  • 柔軟なフェールオーバー ポリシー(フェールオーバーを発生させる障害のレベルを 5段階で調整可能。障害検知をより詳細に行うことが可能)

このように、SQL Server 2012 では WSFC が強化されて柔軟な構成をとれるようになりました。これらは、可用性の向上に繋がるだけでなく、性能向上にも役立つものです。

◆ Windows Server Core による計画停止時間の短縮

SQL Server 2012 からは、Windows Server Core へのインストールがサポートされるようになりました。Server Core は、GUI を持たない、コマンドベースでの操作で管理する Windows Server の構成です。以下の画面は、Server Core 上へ SQL Server 2012 をインストールしているときの様子です(コマンドラインから setup.exe を実行しています)。

00008

Server Core では、GUI が不要であるため、必要最小限の機能のみしかインストールされません。これにより、よりセキュアな運用が可能になり、また、修正プログラムの適用回数を大きく削減できるというメリットが得られます。Server Core の場合は、修正プログラムの数を 50~60%程度削減できると言われており、その分 OS を再起動する回数を減らすことができます(計画停止時間を大きく短縮することが可能です)。

このように、SQL Server 2012 では、可用性を高めるための機能強化が数多く行われています。

以降では、これらの AlwaysOn テクノロジーを簡単に試せるように、ステップ バイ ステップ形式で画面ショット満載で説明しますので、ぜひ試しながら読み進めてください。

目次へ | 前のページへ | 次のページへ

事例1

MPNロゴ


SQLQualityは執筆とセミナーを通じて技術の啓蒙やエンジニアの育成支援も行っています
最新刊
SQL Server 2012 の教科書
SQL Server 2012 の教科書(ソシム)

弊社オリジナル制作の
SQL Server 2012 自習書も
マイクロソフトのサイトで公開中!
ロングセラー
ASP.NET でいってみよう  SQL Server 2000 でいってみよう
ASP.NET でいってみよう
第7刷 16,500 部発行
SQL Server 2000 でいってみよう
第12刷 28,500 部発行


セミナー風景
セミナー風景

弊社執筆の
SQL Server 2012 自習書
マイクロソフトのサイトで公開中
全30冊
ダウンロードはこちら
弊社執筆の
SQL Server 2008 R2 自習書
マイクロソフトのサイトで公開中
全30冊
目次はこちら
松本美穂のコラム
(公開活動などのお知らせ)

第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 へ参加

技術コミュニティでも活動中

Microsoft MVP for SQL Server

松本崇博 Blog(SQL Server Tips)
松本美穂ブログ(SQL Serverノート)