構築事例:AWSでの冗長化システム
システム更改のタイミングで、AWSにWebサーバ、APサーバ、DBサーバを構築しました。それぞれのサーバをクラスタ構成とし、AWS上でアプリケーションレベルでの冗長化を実現することができました。また、クラスタの管理も、GUIから簡単に行えるようになりました。
- お客様が悩まれていた課題
- システムをAWS上におきたい
- アプリケーションレベルでの冗長化を行いたい
- クラウドサービスの冗長化ではコストが見合わない
- +導入企業プロフィール
- ★
導入企業業種
製造業(東京都)
ユーザー規模
10万人以上
利用OS
Red Hat Enterprise Linux 7
導入月
2018年7月
デージーネットが提案した「AWSでの冗長化システム」
AWS上でクラスタソフトウェアを利用した冗長化を提案
AWSのようなパブリッククラウドのIaaS、PaaSでは、クラウド事業者側でシステムの冗長化の仕組みが提供されています。しかし、この仕組みだけではアプリケーションが正常に動作していることを監視することができません。
デージーネットからは、クラウドでの冗長化システムの実績をもとに、クラスタソフトウェアを活用した冗長化システムを提案しました。
グローバルIPをWebサーバのHAクラスタのみに割り当てる
VIPは、仮想IPアドレス(Virtual IP address)のことです。通常、一つのIPアドレスは単一の機器に紐づけられ、他の機器が同じIPアドレスを使用することはできません。VIPを利用することで、複数の機器をグループ化して一つの機器のように見せることができます。冗長化システムでは、稼働系のサーバと待機系のサーバをグループ化して一つのIPアドレスに紐づけます。
AWSでは、自由にIPアドレスを割り振ることができません。クラスタソフトウェアのVIPを割り振る仕組みをそのまま利用するだけでは不十分でした。そのため、グローバルIPアドレスをWebサーバのクラスタのみに割り当てる構成を取りました。APサーバとDBサーバのクラスタは、ローカルIPアドレスでVIPを持つ構成になりました。
AWS固有のSTONITHコマンドを作成しスプリットブレインに対応
スプリットブレインとは、クラスタを組んでいるサーバ同士が相手の状態を検知できなくなった状態のことです。スプリットブレインに陥ると、サービスの二重起動などが発生し、最悪の場合、IPアドレスの競合やデータの破壊が発生します。
これを回避するのがSTONITHです。STONITHは、一方のサーバを強制的に停止・再起動させることができます。AWSでは、STONITHの機能をそのまま実装することができません。そのため、AWS固有のSTONITHコマンドを作成し、一方のサーバを再起動する方法をとりました。
クラスタ管理GUIの「Hawk」を採用
Hawkとは、Pacemakerによる冗長化システムの管理GUIです。冗長化システムの設定や管理をウェブインタフェースから行うことができるようになりました。以下の画面からリソースのマイグレートやノードのスタンバイ状態への移行を行うことができます。コマンドラインの操作よりも冗長化システムの運用や管理を簡単に行うことが可能です。
導入後の結果
OSSのクラスタソフトを活用し、アプリケーションレベルでの冗長化を実現することができました。冗長化システムの運用や管理は、GUIから行うことができ、コマンドラインの操作に不慣れな担当者でも、簡単に操作を行えるようになったということです。
また、オープンソースを活用することで柔軟な構成とすることができました。そのため、必要な機能だけを選択することができ不要な費用を削減することができました。
【Webセミナー】自社でOSSを採用しよう!今更聞けないOSSの基本セミナー
日程: | 11月22日(金)Webセミナー「BigBlueButton」を使用します。 |
内容: | OSSを導入したいけど、どこから手をつければいいかわからない方必見! |
ご興味のあるかたはぜひご参加ください。 |