文書番号 : LK20140207-041-002 LifeKeeper for Linux Amazon Web Services EC2 環境での HA クラスタ構築ガイド 第 2 版 サイオステクノロジー株式会社
目次 1 本ドキュメントの目的...3 2 本ドキュメントのサポート範囲...3 2.1 将来における互換性について...3 3 Amazon Web Services の概要...4 3.1 VPC 上で LifeKeeper を使う上での留意点...4 4 Amazon Web Services の設定...5 4.1 構成の説明...5 4.2 VPC の設定...5 4.3 各インスタンスの設定...7 5 LifeKeeper による HA クラスタの構築...8 5.1 LifeKeeper のインストール...8 5.2 リソース階層の作成...8 6 参考資料... 10 7 お問い合わせ... 12 8 免責事項... 13 改版履歴日付 バージョン 変更履歴 2014 年 1 月 27 日 第 1 版 新規作成 2016 年 11 月 15 日 第 2 版 バージョン情報および住所の変更 2
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
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
4 Amazon Web Services の設定 4.1 構成の説明 本ドキュメントでは 以下の図のようなネットワーク構成を想定して解説を行います HA クラスタを構成するインスタンス 2 台はそれぞれ異なる AZ のパブリックなサブネットに配置します また 外部からアクセスするための Elastic IP を用意し これを LifeKeeper によって制御可能なリソースとします この構成によって Elastic IP の切り替えが実現できますので 稼働中のアプリケーションに障害が発生し リソースのフェイルオーバが発生した際においても 常に一意の IP アドレスで アプリケーションへのアクセスが可能となります VPC 10.0.0.0/16 Elastic IP Availability Zone A Availability Zone B サーバ 1 LifeKeeper Apache web server (Active) サーバ 2 LifeKeeper Apache Web server (Standby) Subnet 10.0.2.0/24(Private) Subnet 10.0.4.0/24(Private) 4.2 VPC の設定 AWS Management Console で以下の操作を行います (1) Virtual Private Cloud(VPC) の作成 任意のリージョンに VPC を作成します 5
(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 v9.1.0 スタートアップガイド Firewall の確認 項目を参照してください (5) EC2 インスタンスの作成 LifeKeeper をインストールし クラスタを構成するインスタンスはそれぞれ異なる AZ に属するサブネットに配置します また (3) で作成した ENI を割り当てます (6) Elastic IP の Allocate LifeKeeper のリソースとして制御する Elastic IP を Allocate します この時点では 特定のインスタンスに Associate する必要はありません インスタンスの設定時に各ノードに直接アクセスして操作する場合には 必要に応じて更に Elastic IP を Allocate してください 6
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 に してください (5) GUI 接続の準備 LifeKeeper GUI 画面を利用するためには SSH の X フォワーディング機能を利用し ます LifeKeeper GUI 画面を起動するクライアント上に X Window System 環境を 用意してください 7
LifeKeeper for Linux AWS EC2 環境向け HA クラスタ構築ガイド 5 LifeKeeper による HA クラスタの構築 5.1 LifeKeeper のインストール (1) イメージファイルの転送 SCP などのユーティリティを使い LifeKeeper のインストールイメージを EC2 イン スタンス上に転送します (2) LifeKeeper のインストール 各インスタンスに LifeKeeper をインストールします インストールの手順につきま しては LifeKeeper for Linux v9.1.0 スタートアップガイドを参照してください セットアップが完了しましたら LifeKeeper を起動します # lkstart (3) LifeKeeper GUI 管理画面へのアクセス SSH コンソール上で以下のコマンドを実行し クライアントコンピュータ上で LifeKeeper GUI 管理画面を開きます # lkguiapp (4) コミュニケーションパスの作成 コミュニケーションパスを作成します コミュニケーションパスは少なくとも2つ作 成してください コミュニケーションパスの作成方法については LifeKeeper for Linux v9.1.0 スタートアップガイド コミュニケーションパスの作成 項目を参照 してください 5.2 リソース階層の作成 (1) Apache リソースの作成 1. Apache リソースの作成 LifeKeeper GUI 管理画面より Create Resource Hierarchy を選択し Apache リソー 8
スを作成します リソース作成ウィザードで入力するプロパティは以下の通りです Select Recovery Kits Apache Web Server Switchback Type Intelligent( 手動 ) または Automatic( 自動 ) server プライマリノードを選択 httpd Apache Web Server デーモンのフルパス Web server Binary Location 名を選択 ( デフォルト :/user/sbin/httpd) Apache Web Server のルートディレクトリをフ Web server Root Directory ルパスで入力 Root Tag 任意のリソースタグ名 2. Apache リソースの拡張 LifeKeeper GUI 管理画面より Create Resource Hierarchy オプションが完了すると自動的に開始されます リソース拡張ウィザードで入力するプロパティは以下の通りです Target Server セカンダリノードを選択 Switchback Type Intelligent( 手動 ) または Automatic( 自動 ) Server プライマリノードを選択テンプレートの優先順位を選択または入力 Template Priority ( デフォルト :1) ターゲットの優先順位を選択または入力 Target Priority ( デフォルト :10) Root Tag 任意のリソースタグ名 (2) EC2 リソースの作成 1. リソース階層の作成 LifeKeeper GUI 管理画面より Create Resource Hierarchy を選択し EC2 リソー スを作成します リソース作成ウィザードで入力するプロパティは以下の通りです Select Recovery Kits Amazon EC2 Switchback Type Intelligent( 手動 ) または Automatic( 自動 ) Server プライマリノードを選択 EC2_HOME ディレクトリパスを選択 EC2 HOME ( デフォルト :/opt/aws) EC2_URL を選択するか 入力 (EC2_URL は EC2 URL Amazon EC2 Web サービスエンドポイント 9
の URL) AWS Access Key AWS Security Key EC2 Resource type Network Interface Elastic IP EC2 Resource Tag AWS のアクセスキーを入力 (AWS Tools がユーザの識別に使用するアクセスキー ID) AWS のセキュリティキーを入力 (AWS のセキュリティキーは秘密キー ) EC2 タイプを選択 Elastic IP Elastic IP に関連付けるネットワークインターフェースを選択 ec2-describe-addresses Ecs API を使用して取得した Elastic IP のうち 選択した ENI にアサインするものを選ぶ EC2 のタグ名を設定 ( デフォルト :ec2-<resource>) 2. リソースの拡張 作成したリソース階層をスタンバイノードに拡張します リソース拡張ウィザードで 入力するプロパティは以下の通りです Switchback Type Intelligent( 手動 ) または Automatic( 自動 ) テンプレートの優先順位を選択または入力 Template Priority ( 範囲 :1~999) ターゲットの優先順位を選択または入力 Target Priority ( 範囲 :1~999) EC2 のタグ名を設定 EC2 Resource Tag ( デフォルト :ec2-<resource>) (3) リソース間の依存関係の構築 LifeKeeper GUI 管理画面より Create Dependency を選択し (1) で作成した Apache リソースと (2) で作成した EC2 リソースとの間に依存関係を作成します 右図のように Parent Resource( 親リソース ) が Apache リソース Child Resource( 子リソース ) が EC2 リソースとなるように設定してください この設定により Apache リソースが起動する前に Elastic IP の切り替えが行われるようになります 10
6 参考資料 LifeKeeper UserSite http://lk.sios.com/ LifeKeeper for Linux 9.1.0 スタートアップガイド http://lk.sios.com/?p=5403 Apache Recovery Kit 管理ガイド http://jpdocs.us.sios.com/linux/9.1/lk4l/apache/index.htm Recovery Kit for EC2 管理ガイド http://jpdocs.us.sios.com/linux/9.1/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/ 11
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 12
LifeKeeper for Linux AWS EC2 環境向け HA クラスタ構築ガイド 8 免責事項 本書に記載された情報は予告なしに変更 削除される場合があります 最新のものを ご確認ください 本書に記載された情報は 全て慎重に作成され 記載されていますが 本書をもって その妥当性や正確性についていかなる種類の保証もするものではありません 本書に含まれた誤りに起因して 本書の利用者に生じた損害については サイオステ クノロジー株式会社は一切の責任を負うものではありません 第三者による本書の記載事項の変更 削除 ホームページ及び本書等に対する不正な アクセス その他第三者の行為により本書の利用者に生じた一切の損害について サ イオステクノロジー株式会社は一切の責任を負うものではありません システム障害などの原因によりメールフォームからのお問い合せが届かず または延 着する場合がありますので あらかじめご了承ください お問い合せの不着及び延着 に関し サイオステクノロジー株式会社は一切の責任を負うものではありません 著作権 本書に記載されているコンテンツ 情報 資料 画像等種類を問わず に関する知的財産 権は サイオステクノロジー株式会社に帰属します その全部 一部を問わず サイオス テクノロジー株式会社の許可なく本書を複製 転用 転載 公衆への送信 販売 翻案そ の他の二次利用をすることはいずれも禁止されます またコンテンツの改変 削除につい ても一切認められません 本書では 製品名 ロゴなど 他社が保有する商標もしくは登録商標を使用しています サイオステクノロジー株式会社 108-0072 東京都港区 1-17-3 NBF プラチナタワー14 階 電話 03-6859 - 8686 FAX 03-6859 - 8687 http://www.sios.com 13