翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
ロードバランサーの追加
重要
AWS OpsWorks Stacks は新規顧客を受け付けなくなりました。既存のお客様は、2024 年 5 月 26 日までは OpsWorks コンソール、 API、 CLI、および CloudFormation リソースを通常どおり使用できますが、その時点でこれらのリソースは廃止されます。この移行に備えて、できるだけ早くスタックを AWS Systems Manager に移行することをおすすめします。詳細については、AWS OpsWorks Stacks サポート終了に関する FAQ および AWS Systems Manager アプリケーションマネージャへの AWS OpsWorks Stacks アプリケーションの移行 を参照してください。
Elastic Load Balancing は、受信したアプリケーショントラフィックを複数の Amazon EC2 インスタンスに自動的に分散する AWS のサービスです。ロードバランサーで 2 つの目的を達成できます。明らかな目的は、アプリケーションサーバーで負荷を均等化することです。多くのサイトでは、ユーザーがアプリケーションサーバーおよびデータベースに直接アクセスできないようにすることが求められます。Elastic Load Balancing は、トラフィックの分散の他に、以下も行実行します。
-
健全でない Amazon EC2 インスタンスを検出します。
問題のあるインスタンスが復旧するまで、トラフィックのルートを残りの正常なインスタンスに変更します。
-
受信トラフィックに応じて、自動的にそのリクエスト処理能力を拡張します。
注記
AWS OpsWorks スタックでは、Application Load Balancer はサポートされていません。Classic Load Balancer は、AWS OpsWorks スタックでのみ使用できます
Elastic Load Balancing はよくレイヤーと呼ばれますが、他のビルトインレイヤーとは動作が多少異なります。レイヤーを作成してインスタンスを追加する代わりに、Amazon EC2 コンソールを使用して Elastic Load Balancing ロードバランサーを作成し、既存のレイヤーの 1 つ (通常はアプリケーションサーバーレイヤー) にアタッチします。AWS OpsWorksスタックは次に、レイヤーの既存のインスタンスをサービスに登録し、すべての新しいインスタンスを自動的に追加します。次の手順では、ロードバランサーを追加する方法について説明します。
ロードバランサーをカスタム IISレイヤーにアタッチするには
-
Amazon EC2 コンソールを使用して、IISExample の新しいロードバランサーを作成します。詳細については、「Elastic Load Balancing の開始方法」を参照してください。[Create Load Balancer] ウィザードを実行するときに、ロードバランサーを次のように設定します。
- 1: ロードバランサーの定義
-
AWS OpsWorks スタックコンソールでロードバランサーを簡単に見つけることができるように、IIS-LB など容易に認識できる名前をロードバランサーに割り当てます。残りの設定のデフォルト値を受け入れ、[Next: Assign Security Groups] を選択します。
- 2: セキュリティグループの割り当て
-
アカウントでデフォルト VPC がサポートされている場合は、このページがウィザードに表示され、ロードバランサーのセキュリティグループを決定できます。EC2 Classic の場合、このページは表示されません。
このウォークスルーでは、[default VPC security group] を指定し、[Next: Configure Security Settings] を選択します。
- 3: セキュリティ設定の構成
-
このウォークスルーでは、ロードバランサーでセキュアリスナー (フロントエンド接続の HTTPS または SSL) を使用する必要があるため、続行するには [Next: Configure Health Check] を選択します。
- 4: ヘルスチェックの設定
-
ping のパスを
/
に設定します。残りの設定のデフォルト値を受け入れ、[Next: Add EC2 Instances] を選択します。 - 5: EC2 インスタンスの追加
-
AWS OpsWorks スタックにより自動的にインスタンスがロードバランサーに登録されます。[Next Add Tags] を選択して続行します。
- 6: タグの追加
-
この例ではタグを使用しません。[Review and Create] を選択します。
- 7: 確認
-
選択を確認して [Create] を選択し、[Close] を選択すると、ロードバランサーが起動します。
-
アカウントでデフォルト VPC がサポートされている場合は、ロードバランサーを起動した後で、セキュリティグループに適切なインバウンドルールがあることを確認する必要があります。デフォルトルールでは、着信トラフィックは受け入れられません。
-
Amazon EC2 のナビゲーションペインで、[Security Groups] (セキュリティグループ)を選択します。
-
[default VPC security group] を選択します。
-
[インバウンド] タブで、[編集] を選択します。
-
このウォークスルーでは、[Source] を [Anywhere] に設定します。これにより、ロードバランサーでは任意の IP アドレスからの着信トラフィックを受け入れます。
-
[Save](保存)をクリックします。
-
-
AWS OpsWorks スタックコンソールに戻ります。[Layers] (レイヤー) ページで、[Network] (ネットワーク) を選択します。
-
[Elastic Load Balancing] で、ステップ 1 で作成した IIS-LB ロードバランサーを選択し、[Save] をクリックします。
ロードバランサーをレイヤーにアタッチすると、AWS OpsWorks スタックによってそのレイヤーの現在のインスタンスが自動的に登録されます。新しいインスタンスはオンラインになった時点で追加されます。
-
[Layers] (レイヤー) ページで、ロードバランサーの名前をクリックして詳細ページを開きます。ロードバランサーページのインスタンスの横のチェックマークは、インスタンスがヘルスチェックに合格したことを示します。
これで、ロードバランサーにリクエストを送信することによって IIS-Example-App を実行できます。
ロードバランサーを通じて IIS-Example-App を実行するには
-
[Layers] (レイヤー) を選択します。IIS-ELB ロードバランサーがレイヤーとして一覧表示され、[Health] 列には正常なインスタンスを示す緑色のインスタンスが 1 つ表示されます。
-
ロードバランサーの DNS 名を選択して IIS-Example-App を実行します。これは、ロードバランサーの名前の下に一覧表示され、
IIS-LB-1802910859.us-west-2.elb.amazonaws.com
のように表示されます。ロードバランサーがインスタンスにリクエストを転送すると、レスポンスが返されます。これは、インスタンスのパブリック IP アドレスをクリックした場合と同じレスポンスになります。
この時点ではインスタンスが 1 個しかないため、ロードバランサーがあっても実際にはそれほど変わりません。ただし、レイヤーにインスタンスを追加できます。
インスタンスをレイヤーに追加するには
-
[Instances] を選択し、[+ instance] を選択して別のインスタンスをレイヤーに追加します。
-
インスタンスを起動します。
新しいインスタンスの場合、AWS OpsWorks スタックにより自動的に現在のカスタムクックブックがインストールされ、セットアップ時に現在のアプリケーションバージョンがデプロイされます。インスタンスがオンラインになると、AWS OpsWorks スタックにより自動的にロードバランサーに追加されるため、インスタンスはすぐにリクエストを処理し始めます。アプリケーションがまだ動作していることを確認するには、ロードバランサーの DNS 名を再度選択できます。