レック・テクノロジー・コンサルティング株式会社TECH BLOG

CLUSTERPRO Xの導入で知るべきオンプレミス環境とAWS環境の違い

Re:Q Techブログをご覧いただきありがとうございます。
インフラ技術部Iです。

今回はクラスタソフトウェアであるCLUSTERPRO Xについての記事となります。
オンプレミス環境への導入が多いCLUSTERPRO Xですが、AWS環境にも導入することが可能です。
今回はAWS環境上のEC2へ導入した場合のオンプレミス環境とAWS環境の違いを簡単に説明いたします。

CLUSTERPRO Xとは

CLUSTERPRO Xは高信頼性と高可用性を特徴とするクラスタソフトウェアです。
サーバのダウンタイムを最小限に抑え、システムの連続稼働を実現します。
類似のソフトウェアだと、LifeKeeperなどがあります。

比較時の注意事項

今回比較を行うにあたり、以下を前提に記載します。
・オンプレミス環境
 仮想化基盤上の仮想マシン
・AWS環境
 AWS環境のEC2

オンプレミス環境とAWS環境の大きな違い

オンプレミス環境とAWS環境でCLUSTERPRO Xを導入する際の大きな異なる点は、システムの可用性である"冗長化"の軸となります。
この軸が大きく異なることで、オンプレミス環境では設定可能であった項目もAWS環境では一部設定不可となっています。

一般的に、システムの可用性を考える際には「冗長化」を意識する必要があります。
・冗長化
 仮想マシンが動作しているホストを軸に考え、障害発生時に別のホストや仮想マシンで
 サービスを継続できることを目的とします。

環境 冗長化(仮想マシン配置場所)
オンプレミス 仮想化基盤
AWS Availability Zone

※以降、Availability ZoneはAZと表記させて頂きます。

CLUSTERPRO Xを設計するうえで、冗長化の軸が大きく異なります。
AWS環境では、異なるAZ上にEC2(仮想マシン)を配置して冗長化を行います。

このAZはデータセンターの集まりとなっており、冗長化する仮想マシンの配置場所(AZ)を分けています。

それぞれの環境の違いを簡単に図でまとめました。

冗長化

113.png

オンプレミス環境、AWS環境それぞれ詳しく記載します。

オンプレミス環境

オンプレミス環境では物理サーバー(仮想化基盤)が存在していて、その上に仮想マシンを作成してCLUSTEPRO Xを導入します。
1.pngのサムネイル画像

仮想マシンを2台以上用意して、1号機と2号機...へCLUSTERPRO Xを導入して冗長化することで、
例えば1号機が停止してしまった場合においても、CLUSTERPRO Xが検知を行い2号機でサービスを継続することが出来ます。
2.pngのサムネイル画像

しかし、それだけでは冗長化という点では不十分な設計となります。
同一の仮想化基盤上、つまり仮想化基盤#2上に仮想マシン1号機、2号機を稼働させた場合、
仮想基盤が故障してしまうと、当然仮想マシン2台共に停止してしまうため、サービスを継続することができません。
3.pngのサムネイル画像

それを防ぐために、オンプレミス環境では下記の様な設計をすることが多くなっております。
クラスタ化した仮想マシンは、同一仮想化基盤上にクラスタ化した仮想マシンを稼働させない様に設計します。
多くの仮想化ソフトウェアでは、アフィニティルールといった設定があり、それらを使用して仮想化基盤の1個が
停止した場合においても、クラスタ化した全ての仮想マシンが停止することを防いでおります。
4.pngのサムネイル画像

それでは、AWS環境ではどうでしょうか。

AWS環境


AWS環境の場合、AZ・EC2を軸として導入を検討します。

AWS環境では、リージョンの中に、AZが複数存在しています。
AZはデータセンターの集まりとなり、それぞれのAZは物理的に離れております。
5.pngのサムネイル画像

AWS環境でEC2を使用する場合、オンプレミス環境と同様にクラスタ化したEC2を異なるホスト上で稼働させることは基本的に出来ません。
この要件は、Dedicated Hostなどを使用すれば満たすことが可能ではありますが、別途料金もかかる事やAZ単位の障害を考えると適切とは考えられません。
AWS環境ベストプラクティスの1つである、Multi AZ構成で設計を行います。
6.pngのサムネイル画像

1つのAZ内に2台以上のEC2に対してCLUSTERPRO Xを導入し、クラスタ化します。
そうすることで、1台のEC2が停止してもCLUSTEPROが検知を行い、もう1台のEC2でサービスを継続することが出来ます。
7.pngのサムネイル画像

AZに障害が発生した場合はどうでしょうか。
同一のAZにクラスタ化したEC2を全て配置していた場合、AZに障害が発生すると全てのEC2に影響が出てしまい、
サービス停止が発生するなど、継続することが難しくなってしまいます。
10.png

そのため、AWS環境でCLUSTERPRO Xを導入する場合は、クラスタ化したEC2を異なるAZに配置することが求められます。
AWS環境ベストプラクティスにも記載されている、Multi AZ構成となります。
AZが異なるため、同一のホスト(仮想化基盤上)でEC2が稼働することもありません。
また、1個のAZに障害が発生した場合においても、サービス継続することが可能となります。
9.pngのサムネイル画像

まとめ

・オンプレミス環境
 仮想化基盤: 複数の物理サーバー上に仮想化基盤を構築
 配置方法: クラスタ化する仮想マシンを異なる物理サーバー上に配置
 冗長化の目的: 仮想化基盤の障害時にサービスが停止しないようにする

・AWS環境
 Availability Zone(AZ): 複数の物理的に分離されたデータセンター
 配置方法: クラスタ化するEC2インスタンスを異なるAZに配置
 冗長化の目的: AZ全体の障害時にサービスが停止しないようにする

最後に

簡単ではありますが、CLUSTERPRO Xを導入するにあたりオンプレミス環境とAWS環境の違いを記載いたしました。
CLUSTERPRO X導入を検討されている企業様がいればご気軽にお問い合わせください。

この記事をシェアする

  • Facebook
  • X
  • Pocket
  • Line
  • Hatena
  • Linkedin

資料請求・お問い合わせはこちら

ページトップへ戻る