クラウド時代の可用性向上―サービスレベルに応じた具体策とは?

2014年9月26日(金)
井谷 征市

アベイラビリティゾーン間HA

次にクラウド環境で高可用性を実現するためにHAクラスターを構築する場合だが、クラウド特有の環境に留意する必要がある。ここからは代表的なクラウド環境として、Amazon Web Services(以下、AWS)を例に取って紹介する。

図1 AWS上での典型的なクラスター構成例
図1 AWS上での典型的なクラスター構成例

1つ目に、クラウド環境ではオンプレミスのように複数ノードから同時アクセス可能な共有ディスクを持つことができない。したがって、HAクラスターはデータレプリケーション方式で構築する必要がある。AWSにおいては、各クラスターノード(EC2インスタンス)にEBS(Amazon Elastic Block Store、EC2用ブロックストレージ)を追加して、これをレプリケーションすることで実現できる。

次に、構成するそれぞれのクラスターノードは異なるデータセンターに配置するのが望ましい。先に述べたように、サイト障害などに備え、SPOFの排除は可能な限り行う必要がある。具体的には、AWS上のクラスターノードはそれぞれ異なるアベイラビリティゾーン(以下、AZ)に配置する。これにより、各AZは異なるサブネットに分けられるため、ネットワーク構成を十分に検討する必要が出てくる。例えば、仮想IPアドレスはそれらのサブネットに属さないように設定する必要がある。これは仮想IPアドレスのフェイルオーバー時に仮想IPアドレスに向けるVPC上のルートテーブルを切り替えできるようにするための条件となる。LifeKeeperでは仮想IPアドレス切り替え時にVPC上のルートテーブルを制御するRecovery Kit for EC2が提供されており、確実にアクティブ側ノードへアクセスできるよう設計されている。

Cross Region HA

大規模災害対策などに備え、さらなる高可用性を求めるため等、地理的に離れたリージョン間でのHAクラスターの構築について紹介する。全体の構成はやや複雑なため、本稿では概略図での大まかな説明にとどめるが、詳細についてはAmazon EC2 Cross Region クイックスタートガイドにて具体的な方法が紹介されているので、そちらを参照していただきたい。考え方として前述のAZ間HAと異なるところは、リージョン間がインターネット接続となっているためにセキュリティーを確保する必要がある点と、各リージョンでそれぞれ異なる仮想IPアドレスを指定する必要があるため、切り替えの仕組みを検討する必要があるという点である。

図2 Cross Region 構成概略図
図2 Cross Region 構成概略図

では順を追って概略図を解説していく。まず、図の四隅に示すノードが実際にサービスを提供する4ノードのクラスターである。これらは各リージョンにAZを分けて配置されており、同一リージョン内でのフェイルオーバーは自動で行われるが、リージョン間のフェイルオーバーをする場合は手動で切り替える必要がある。また、リージョン間フェイルオーバーの際には仮想IPアドレスが変わるため、アドレス解決の仕組みを用意する必要もあるが、これはRoute53を利用したDNSのAレコードを更新することで対応する。LifeKeeperではこの機能をRoute53 Recovery Kitで提供している。

次に、リージョン間をセキュアに接続しているノードがVPNクラスターノードだ。VPN接続は冗長性を考慮して2本のセッションが用意されており、実装にはオープンソースのOpenswanを使用している。クラスターノードは各リージョン内でクラスター構成されているため、2ノードx2セットで配置されている。各VPNセッションは常時接続されており、接続状態の監視はOpenswan Recovery Kit、フェイルオーバー時の経路切り替えはRecovery Kit for EC2で提供しており、これらを組み合わせることで確実なフェイルオーバーを実現している。VPNセッションはリージョン間で相互監視をしているため、片側のアクティブノードで障害が発生してスタンバイノードに切り替わった場合、対向リージョンのアクティブノードもスタンバイノードへ切り替えを行うことができる。

最後に

今回は、クラウド環境における可用性向上の方法についていくつか紹介してきたが、注意すべきポイントは、要件に応じて適切な構成を選択していく必要があるということだ。また、高可用性の考え方については以前から大きく変わってはいないが、クラウド環境上で特有の環境を考慮する必要がある。サイオスではAWSだけでなく「FUJITSU Cloud IaaS Trusted Public S5」や「ニフティクラウド」などのクラウド環境でも検証をすすめており、検証レポートや構築ガイドも公開している。LifeKeeper製品は、シングルノードの高可用性からCross Regionクラスターまで幅広く対応することができるので、HAを構築する際にはぜひご検討いただきたい。

仮想化・クラウド環境にも対応 HAクラスターソフトウェア「LifeKeeper」
仮想化・クラウド環境にも対応 HAクラスターソフトウェア「LifeKeeper」

参考情報

サイオステクノロジー株式会社
フィールドエンジニアとしてUNIX系ハードウェア、クラスターソフトウェアの導入作業を経験した後、x86サーバーやストレージの技術的なプリセールス支援を担当。サイオステクノロジー入社後は、LifeKeeperプリセールスとしてLifeKeeper製品の技術的な提案支援、セミナー・勉強会での講演等を行っている。

連載バックナンバー

Think ITメルマガ会員登録受付中

Think ITでは、技術情報が詰まったメールマガジン「Think IT Weekly」の配信サービスを提供しています。メルマガ会員登録を済ませれば、メルマガだけでなく、さまざまな限定特典を入手できるようになります。

Think ITメルマガ会員のサービス内容を見る

他にもこの記事が読まれています