LifeKeeper for Linux Amazon Web Services EC2 環境での HA

文書番号: LK20140207-041-001
LifeKeeper for Linux
Amazon Web Services EC2 環境での
HA クラスタ構築ガイド
第1版
サイオステクノロジー株式会社
LifeKeeper for Linux – AWS EC2 環境向け HA クラスタ構築ガイド
目次
1
本ドキュメントの目的............................................................................3
2
本ドキュメントのサポート範囲.................................................................3
2.1
3
Amazon Web Services の概要 ............................................................4
3.1
4
5
将来における互換性について ..............................................................3
VPC 上で LifeKeeper を使う上での留意点 ...........................................4
Amazon Web Services の設定 ............................................................5
4.1
構成の説明 ....................................................................................5
4.2
VPC の設定 ..................................................................................6
4.3
各インスタンスの設定 ......................................................................7
LifeKeeper による HA クラスタの構築.....................................................8
5.1
LifeKeeper のインストール .............................................................8
5.2
リソース階層の作成 .........................................................................9
6
参考資料 .......................................................................................... 11
7
お問い合わせ .................................................................................... 13
8
免責事項 .......................................................................................... 14
改版履歴
日付
2014 年 1 月 27 日
バージョン
第1版
変更履歴
新規作成
2
SIOS Technology, Inc.
LifeKeeper for Linux – AWS EC2 環境向け HA クラスタ構築ガイド
1
本ドキュメントの目的
v8.2.0 より LifeKeeper for Linux (以下、LifeKeeper)が Amazon Web Services 上の
Virtual Private Cloud 環境においてご利用いただけるようになりました。EC2 インスタンス
に LifeKeeper を導入し、用途に合わせて柔軟な HA クラスタシステムを構築することができ
ます。
本ドキュメントは、弊社で実際に行った検証結果をベースとして記述したものです。
Apache Web Server を Amazon Web Services 環境で稼動させ、クラウド環境におけるパ
ブリックな HA クラスタシステムを構築する手法について、各機能の簡易な解説を交えながら
ご説明します。
2
本ドキュメントのサポート範囲
本ドキュメントは、Virtual Private Cloud 内の EC2 インスタンスに LifeKeeper をインス
トールし、パブリックな HA クラスタを構成するために必要な各種設定方法をご案内します。
2.1 将来における互換性について
Amazon Web Services の仕様変更により、本ドキュメントで案内している各種操作方法
に変更が生じる可能性があります。本ドキュメントは、将来における Amazon Web
Services の仕様変更についてサポートするものではありません。必要に応じて最新のド
キュメンテーションを参照し、適切な設定を行なってください。
3
SIOS Technology, Inc.
LifeKeeper for Linux – AWS EC2 環境向け HA クラスタ構築ガイド
3
Amazon Web Services の概要
Amazon Web Services(以下、AWS)は、Amazon.com 社が提供するクラウド・コンピュー
ティング・サービス群の総称です。Virtual Private Cloud(以下、VPC)は AWS が提供す
る機能の一つであり、クラウド上にカスタマイズ可能なプライベートネットワーク環境を構
築することが可能なサービスです。AWS はリージョンごとに複数の Availability Zone(以
下、AZ)で構築されており、障害は AZ を跨いで伝播することはありません。ユーザは任意
の AZ に、サーバインスタンスやデータストアをはじめとした各種リソースを配置すること
ができます。
VPC 内で LifeKeeper を利用することで、リージョン内の複数の AZ からなる HA クラスタ
構成が可能となり、クラウド環境におけるアプリケーション、サービスの高可用性が実現で
きます。
3.1 VPC 上で LifeKeeper を使う上での留意点
AWS 上では、一つの Elastic Block Store(以下、EBS)を複数ノードに接続することはで
きません。そのため、EBS を用いて共有ディスク構成をとることはできません。
4
SIOS Technology, Inc.
LifeKeeper for Linux – AWS EC2 環境向け HA クラスタ構築ガイド
4
Amazon Web Services の設定
4.1 構成の説明
本ドキュメントでは、以下の図のようなネットワーク構成を想定して解説を行います。HA ク
ラスタを構成するインスタンス 2 台はそれぞれ異なる AZ のパブリックなサブネットに配置
します。また、外部からアクセスするための Elastic IP を用意し、これを LifeKeeper によっ
て制御可能なリソースとします。この構成によって Elastic IP の切り替えが実現できますの
で、稼働中のアプリケーションに障害が発生し、リソースのフェイルオーバが発生した際に
おいても、常に一意の IP アドレスで、アプリケーションへのアクセスが可能となります。
Elastic IP
VPC 10.0.0.0/16
Availability Zone A
Availability Zone B
サーバ 1
サーバ 2
LifeKeeper
Apache
web server
(Active)
LifeKeeper
Apache
Web server
(Standby)
Subnet 10.0.4.0/24(Private)
Subnet 10.0.2.0/24(Private)
その他、本検証に用いた各種構成を以下に記載します。
インスタンスタイプ
t1.micro
OS
Red Hat Enterprise Linux Server 6.4 (Santiago)
LifeKeeper バージョン
8.2.0
5
SIOS Technology, Inc.
LifeKeeper for Linux – AWS EC2 環境向け HA クラスタ構築ガイド
4.2 VPC の設定
AWS Management Console で以下の操作を行います。
(1) Virtual Private Cloud(VPC)の作成
任意のリージョンに VPC を作成します。
(2) サブネットの作成
VPC 内に複数のサブネットを作ります。このとき、クラスタを構成するインスタンス
を配置するサブネットがそれぞれ異なる AZ に属していることが重要です。
(3) Elastic Network Interface(ENI)の作成
コミュニケーションパスを冗長化するため、各ノードに複数の ENI を紐付けます。ま
た、それぞれの ENI は固定 Private IP を持つようにします。この操作は、インスタン
ス作成ウィザードからも行うことが出来ます。
(4) Network ACL および Security Group の作成
本ドキュメントで解説する構成においては、Elastic IP の制御にあたり、次章で解説す
る Recovery Kit for EC2 の内部で Amazon EC2 API Tools を利用します。Amazon
EC2 API Tools を利用するためには、HTTPS でインターネットへ接続できる必要があ
ります。
また、LifeKeeper のコミュニケーションパスおよび GUI 機能を利用するために、
LifeKeeper の設定に応じて特定のポートで通信が行えるよう構成する必要があります。
使用するポートの詳細については、LifeKeeper for Linux v8.2.0 スタートアップガイ
ド 「2.3. Firewall の確認」を参照してください。
(5) EC2 インスタンスの作成
LifeKeeper をインストールし、クラスタを構成するインスタンスはそれぞれ異なる AZ
に属するサブネットに配置します。また、(3)で作成した ENI を割り当てます。
6
SIOS Technology, Inc.
LifeKeeper for Linux – AWS EC2 環境向け HA クラスタ構築ガイド
(6) Elastic IP の Allocate
LifeKeeper のリソースとして制御する Elastic IP を Allocate します。この時点では、
特定のインスタンスに Associate する必要はありません。インスタンスの設定時に各
ノードに直接アクセスして操作する場合には、必要に応じて更に Elastic IP を Allocate
してください。
4.3 各インスタンスの設定
(1) Amazon EC2 API Tools のインストール
VPC および EC2 の各種操作をインスタンス上から行えるようにするため、各インスタ
ンスに Amazon EC2 API Tools をインストールします。インストール先は任意ですが、
本ドキュメントは/opt/aws 以下にインストールしています。
(2) 追加した ENI を認識させる
インスタンスに複数の ENI を Attach した場合、
OS 上ではプライマリ・インターフェー
スのみが認識されており、セカンダリ以降のインターフェースは手動で認識させる必
要があります。セカンダリインターフェース用の ifcfg ファイルを作成し、インター
フェースを起動します。
(3) 疎通確認
各インスタンスから、互いの両インターフェースに対し疎通確認を行います。疎通が
取れない場合には、OS のルーティング設定または VPC の Route Table、Network ACL、
および Security Group が適切に構成されているかどうか確認してください。
(4) SELinux を無効化する
LifeKeeper は、SELinux の permissive および enforcing モードをサポートしてい
ません。/etc/sysconfig/selinux ファイルを編集し、SELinux の設定を disabled に
してください。
7
SIOS Technology, Inc.
LifeKeeper for Linux – AWS EC2 環境向け HA クラスタ構築ガイド
(5) GUI 接続の準備
Web 接続画面を利用するためには、クライアントコンピュータと AWS 上のリモート
サーバとの間で名前解決が行えるよう構成する必要があります。そのため、本検証で
は代替として SSH の X フォワーディング機能を利用して、クライアントコンピュータ
上で LifeKeeper GUI 画面を操作しています。LifeKeeper GUI 画面を起動するクライ
アント上に X Window System 環境を用意してください。
5 LifeKeeper による HA クラスタの構築
5.1 LifeKeeper のインストール
(1) イメージファイルの転送
SCP などのユーティリティを使い、LifeKeeper のインストールイメージを EC2 イン
スタンス上に転送します。
(2) LifeKeeper のインストール
各インスタンスに、LifeKeeper をインストールします。インストールの手順につきま
しては、LifeKeeper for Linux v8.2.0 スタートアップガイドを参照してください。
セットアップが完了しましたら、LifeKeeper を起動します。
# lkstart
(3) LifeKeeper GUI 管理画面へのアクセス
SSH コンソール上で以下のコマンドを実行し、クライアントコンピュータ上で
LifeKeeper GUI 管理画面を開きます。
# lkGUIapp
8
SIOS Technology, Inc.
LifeKeeper for Linux – AWS EC2 環境向け HA クラスタ構築ガイド
(4) コミュニケーションパスの作成
コミュニケーションパスを作成します。コミュニケーションパスは少なくとも2つ作
成してください。コミュニケーションパスの作成方法については、LifeKeeper for
Linux v8.2.0 スタートアップガイド 「5.1 コミュニケーションパスの作成」を参照
してください。
5.2 リソース階層の作成
(1) Apache リソースの作成
1.
Apache リソースの作成
LifeKeeper GUI 管理画面より Create Resource Hierarchy を選択し、
Apache リソー
スを作成します。リソース作成ウィザードで入力するプロパティは以下の通りです。
Select Recovery Kits
Apache Web Server
Switchback Type
Intelligent(手動) または Automatic(自動)
server
プライマリノードを選択
Web server Binary Location
Web server Root Directory
Root Tag
2.
httpd Apache Web Server デーモンのフルパス
名を選択(デフォルト:/user/sbin/httpd)
Apache Web Server のルートディレクトリをフ
ルパスで入力
任意のリソースタグ名
Apache リソースの拡張
LifeKeeper GUI 管理画面より Create Resource Hierarchy オプションが完了すると
自動的に開始されます。リソース拡張ウィザードで入力するプロパティは以下の通り
です。
Target Server
セカンダリノードを選択
Switchback Type
Intelligent(手動) または Automatic(自動)
Server
プライマリノードを選択
Template Priority
Target Priority
Root Tag
テンプレートの優先順位を選択または入力
(デフォルト:1)
ターゲットの優先順位を選択または入力
(デフォルト:10)
任意のリソースタグ名
9
SIOS Technology, Inc.
LifeKeeper for Linux – AWS EC2 環境向け HA クラスタ構築ガイド
(2) EC2 リソースの作成
1.
リソース階層の作成
LifeKeeper GUI 管理画面より Create Resource Hierarchy を選択し、EC2 リソー
スを作成します。リソース作成ウィザードで入力するプロパティは以下の通りです。
Select Recovery Kits
Amazon FEC2
Switchback Type
Intelligent(手動) または Automatic(自動)
Server
プライマリノードを選択
EC2 HOME
EC2_HOME ディレクトリパスを選択
(デフォルト:/opt/aws)
EC2_URL を選択するか、入力(EC2_URL は
EC2 URL
Amazon EC2 Web サービスエンドポイント
の URL)
AWS Access Key
AWS Security Key
EC2 Resource type
Network Interface
AWS のアクセスキーを入力(AWS Tools が
ユーザの識別に使用するアクセスキーID)
AWS のセキュリティキーを入力(AWS のセ
キュリティキーは秘密キー)
EC2 タイプを選択
Elastic IP
Elastic IP に関連付けるネットワークインター
フェースを選択
ec2-describe-addresses Ecs API を使用し
Elastic IP
て取得した Elastic IP のうち、選択した ENI
にアサインするものを選ぶ
EC2 Resource Tag
EC2 のタグ名を設定
(デフォルト:ec2-<resource>)
10
SIOS Technology, Inc.
LifeKeeper for Linux – AWS EC2 環境向け HA クラスタ構築ガイド
2. リソースの拡張
作成したリソース階層をスタンバイノードに拡張します。リソース拡張ウィザードで
入力するプロパティは以下の通りです。
Switchback Type
Template Priority
Target Priority
EC2 Resource Tag
Intelligent(手動) または Automatic(自動)
テンプレートの優先順位を選択または入力
(範囲:1~999)
ターゲットの優先順位を選択または入力
(範囲:1~999)
EC2 のタグ名を設定
(デフォルト:ec2-<resource>)
(3) リソース間の依存関係の構築
LifeKeeper GUI 管理画面より、Create Dependency を
選択し、(1)で作成した Apache リソースと、(2)で作成し
た EC2 リソースとの間に依存関係を作成します。
右 図 の よ う に 、 Parent Resource( 親 リ ソ ー ス ) が Apache リ ソ ー ス 、 Child
Resource(子リソース)が EC2 リソースとなるように設定してください。この設定に
より Apache リソースが起動する前に Elastic IP の切り替えが行われるようになりま
す。
11
SIOS Technology, Inc.
LifeKeeper for Linux – AWS EC2 環境向け HA クラスタ構築ガイド
6 参考資料
LifeKeeper UserSite
http://lk.sios.com/
LifeKeeper for Linux 8.2.0 スタートアップガイド
http://lk.sios.com/?p=2137
Apache Recovery Kit 管理ガイド
http://jpdocs.us.sios.com/Linux/8.2/LK4L/RKPDFs/Content/Resources/p
dfs/lkapache.pdf
Recovery Kit for EC2 Administration Guide
http://jpdocs.us.sios.com/Linux/8.2/LK4L/EC2/index.htm
SIOS Technical Documentation
http://jpdocs.us.sios.com/
Amazon Elastic Compute Cloud API Reference
http://docs.aws.amazon.com/AWSEC2/latest/APIReference
AWS Simple Icons
http://aws.amazon.com/jp/architecture/icons/
12
SIOS Technology, Inc.
LifeKeeper for Linux – AWS EC2 環境向け HA クラスタ構築ガイド
7 お問い合わせ
本ドキュメントの記載内容についてのお問い合わせ先
 LifeKeeper 製品の導入を検討中のお客様
弊社パートナー営業部までお問い合わせください。
お問い合わせメールフォーム
https://www.sios.com/products/bcp/lkdk/contact/
 LifeKeeper 製品をご購入済みのお客様
弊社 LifeKeeper 製品サポート窓口までお問い合わせください。
購入後のお問い合わせ
https://www.sios.com/products/bcp/lkdk/contact/support_lk.html
 LifeKeeper の評価版ダウンロード
LifeKeeper/DataKeeper 製品の評価版申請は、以下の窓口に問い合わせください。
60 日間機能制限なしで、利用することが可能です。
LifeKeeper/DataKeeper 評価版ダウンロード
http://www.sios.com/products/bcp/lkdk/product/evaluation_lk.html
13
SIOS Technology, Inc.
LifeKeeper for Linux – AWS EC2 環境向け HA クラスタ構築ガイド
8

免責事項
本書に記載された情報は予告なしに変更、削除される場合があります。最新のものを
ご確認ください。

本書に記載された情報は、全て慎重に作成され、記載されていますが、本書をもって、
その妥当性や正確性についていかなる種類の保証もするものではありません。

本書に含まれた誤りに起因して、本書の利用者に生じた損害については、サイオステ
クノロジー株式会社は一切の責任を負うものではありません。

第三者による本書の記載事項の変更、削除、ホームページ及び本書等に対する不正な
アクセス、その他第三者の行為により本書の利用者に生じた一切の損害について、サ
イオステクノロジー株式会社は一切の責任を負うものではありません。

システム障害などの原因によりメールフォームからのお問い合せが届かず、または延
着する場合がありますので、あらかじめご了承ください。お問い合せの不着及び延着
に関し、サイオステクノロジー株式会社は一切の責任を負うものではありません。
【著作権】
本書に記載されているコンテンツ(情報・資料・画像等種類を問わず)に関する知的財産
権は、サイオステクノロジー株式会社に帰属します。その全部、一部を問わず、サイオス
テクノロジー株式会社の許可なく本書を複製、転用、転載、引用、公衆への送信、販売、
翻案その他の二次利用をすることはいずれも禁止されます。またコンテンツの改変、削除
についても一切認められません。
本書では、製品名、ロゴなど、他社が保有する商標もしくは登録商標を使用しています。
サイオステクノロジー株式会社
〒106-0047 東京都港区南麻布 2-12-3 サイオスビル
電話:03-6401-5111
FAX: 03-6401-5112
http://www.sios.com
14
SIOS Technology, Inc.