文 書 番 号 : LK20140207-041-001 LifeKeeper for Linux Amazon Web Services EC2 環 境 での HA クラスタ 構 築 ガイド 第 1 版 サイオステクノロジー 株 式 会 社
目 次 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 の 設 定...6 4.3 各 インスタンスの 設 定...7 5 LifeKeeper による HA クラスタの 構 築...8 5.1 LifeKeeper のインストール...8 5.2 リソース 階 層 の 作 成...9 6 参 考 資 料... 11 7 お 問 い 合 わせ... 13 8 免 責 事 項... 14 改 版 履 歴 日 付 バージョン 変 更 履 歴 2014 年 1 月 27 日 第 1 版 新 規 作 成 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) その 他 本 検 証 に 用 いた 各 種 構 成 を 以 下 に 記 載 します ンスタンスタプ OS t1.micro Red Hat Enterprise Linux Server 6.4 (Santiago) LifeKeeper バージョン 8.2.0 5
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
(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
(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
(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 プラマリノードを 選 択 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 任 意 のリソースタグ 名 9
(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 サービスエンドポント の URL) AWS のゕクセスキーを 入 力 (AWS Tools が AWS Access Key ユーザの 識 別 に 使 用 するゕクセスキーID) AWS のセキュリテゖキーを 入 力 (AWS のセ AWS Security Key キュリテゖキーは 秘 密 キー) EC2 タプを 選 択 EC2 Resource type Elastic IP Elastic IP に 関 連 付 けるネットワークンター Network Interface フェースを 選 択 ec2-describe-addresses Ecs API を 使 用 し Elastic IP て 取 得 した Elastic IP のうち 選 択 した ENI にゕサンするものを 選 ぶ EC2 のタグ 名 を 設 定 EC2 Resource Tag (デフォルト:ec2-<resource>) 10
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 の 切 り 替 えが 行 われるようになりま す 11
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
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
8 免 責 事 項 本 書 に 記 載 された 情 報 は 予 告 なしに 変 更 削 除 される 場 合 があります 最 新 のものを ご 確 認 ください 本 書 に 記 載 された 情 報 は 全 て 慎 重 に 作 成 され 記 載 されていますが 本 書 をもって その 妥 当 性 や 正 確 性 についていかなる 種 類 の 保 証 もするものではありません 本 書 に 含 まれた 誤 りに 起 因 して 本 書 の 利 用 者 に 生 じた 損 害 については サオステ クノロジー 株 式 会 社 は 一 切 の 責 任 を 負 うものではありません 第 三 者 による 本 書 の 記 載 事 項 の 変 更 削 除 ホームページ 及 び 本 書 等 に 対 する 不 正 な ゕクセス その 他 第 三 者 の 行 為 により 本 書 の 利 用 者 に 生 じた 一 切 の 損 害 について サ オステクノロジー 株 式 会 社 は 一 切 の 責 任 を 負 うものではありません システム 障 害 などの 原 因 によりメールフォームからのお 問 い 合 せが 届 かず または 延 着 する 場 合 がありますので あらかじめご 了 承 ください お 問 い 合 せの 不 着 及 び 延 着 に 関 し サオステクノロジー 株 式 会 社 は 一 切 の 責 任 を 負 うものではありません 著 作 権 本 書 に 記 載 されているコンテンツ( 情 報 資 料 画 像 等 種 類 を 問 わず)に 関 する 知 的 財 産 権 は サオステクノロジー 株 式 会 社 に 帰 属 します その 全 部 一 部 を 問 わず サオス テクノロジー 株 式 会 社 の 許 可 なく 本 書 を 複 製 転 用 転 載 引 用 公 衆 への 送 信 販 売 翻 案 その 他 の 二 次 利 用 をすることはいずれも 禁 止 されます またコンテンツの 改 変 削 除 についても 一 切 認 められません 本 書 では 製 品 名 ロゴなど 他 社 が 保 有 する 商 標 もしくは 登 録 商 標 を 使 用 しています サオステクノロジー 株 式 会 社 106-0047 東 京 都 港 区 南 麻 布 2-12-3 サオスビル 電 話 :03-6401-5111 FAX: 03-6401-5112 http://www.sios.com 14