EC2 Classic で外部 Amazon RDS インスタンスを起動して接続する - AWS Elastic Beanstalk

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

EC2 Classic で外部 Amazon RDS インスタンスを起動して接続する

重要

Amazon EC2-Classic は 2022 年 8 月 15 日に標準サポートを終了する予定です。ワークロードの中断を避けるため、それ以前に Amazon EC2-Classic から VPC に移行することをお勧めします。また、今後は、Amazon EC2-Classic で AWS リソースを何も起動しないで、代わりにAmazon VPC を使用するようにお願いします。詳細については、「EC2-Classic から VPC への移行」とブログ記事「EC2-Classic Networking は販売終了になります — 準備方法はこちら」を参照してください。

AWS Elastic Beanstalk で EC2 Classic (VPC がない) を使用すると、セキュリティグループの動作の違いにより、手順が多少変更されます。EC2 Classic では、DB インスタンスは EC2 セキュリティグループを使用できません。そのため、Amazon RDS でのみ動作する DB セキュリティグループを取得します。

EC2 セキュリティグループからのインバウンドアクセスを許可するルールを DB セキュリティグループに追加できます。ただし、環境に関連付けられている Auto Scaling グループに DB セキュリティグループをアタッチすることはできません。DB セキュリティグループと環境間に依存性が生じないように、Amazon EC2 に 3 番目のセキュリティグループを作成する必要があります。次に、DB セキュリティグループにルールを追加して、新しいセキュリティグループへのインバウンドアクセスを許可する必要があります。最後に、Elastic Beanstalk 環境の Auto Scaling グループにそのルールを割り当てます。

注記
  • Elastic Beanstalk で作成し、その後 Beanstalk 環境からデカップリングされたデータベースから開始する場合は、最初のグループの手順をスキップして、「ブリッジセキュリティグループを作成するには」以下のグループの手順から続行できます。

  • デカップリングしたデータベースを実稼働環境で使用する場合は、データベースが使用するストレージタイプがワークロードに適していることを確認します。詳細については、Amazon RDS ユーザーガイドの「Amazon RDS DB インスタンスストレージ」および「Amazon RDS DB インスタンスを変更する」を参照してください。

EC2 classic (VPC なし) で RDS インスタンスを起動するには
  1. RDS マネジメントコンソールを開きます。

  2. [データベースの作成] を選択します。

  3. ウィザードを続行します。次のオプションに入力した値を書き留めてください。

    • Master Username

    • マスターパスワード

  4. [詳細設定の設定] に達したら、[ネットワーク & セキュリティ] 設定で以下を選択します。

    • VPCNot in VPC。このオプションを使用できない場合、お使いのアカウントが EC2-Classic をサポートしていないか、VPC でのみ使用可能なインスタンスタイプを選択した可能性があります。

    • アベイラビリティーゾーンNo Preference

    • DB セキュリティグループCreate new Security Group

  5. 残りのオプションを設定して、[データベースの作成] を選択します。次のオプションに入力した値を書き留めてください。

    • Database Name

    • Database Port

EC2-Classic では、DB インスタンスには VPC セキュリティグループではなく DB セキュリティグループがあります。Elastic Beanstalk 環境に DB セキュリティグループをアタッチすることはできません。代わりに、DB インスタンスへのアクセスと環境へのアタッチを許可する新しいセキュリティグループを作成する必要があります。ここでは、これをブリッジセキュリティグループとして、webapp-bridge という名前を指定します。

ブリッジセキュリティグループを作成するには
  1. Amazon EC2 コンソールを開きます。

  2. ナビゲーションサイドバーで、[Network & Security (ネットワークとセキュリティ)] の下にある [セキュリティグループ] を選択します。

  3. [Create Security Group] (セキュリティグループの作成) を選択します。

  4. [セキュリティグループ名] に「webapp-bridge」と入力します。

  5. [説明] に「Provide access to DB instance from Elastic Beanstalk environment instances.」と入力します。

  6. [VPC] はデフォルトの選択のままにします。

  7. [Create] (作成) をクリックします。

次に、DB インスタンスにアタッチするセキュリティグループを変更して、ブリッジセキュリティグループからのインバウンドトラフィックを許可します。

RDS インスタンスのセキュリティグループの取り込みルールを変更するには
  1. Amazon RDS コンソールを開きます。

  2. [データベース] を選択します。

  3. 詳細を表示する DB インスタンスの名前を選択します。

  4. [Connectivity] (接続) セクションの [Security] (セキュリティ) に、DB インスタンスに関連付けられたセキュリティグループが表示されます。リンクを開いて、Amazon EC2 コンソールにセキュリティグループを表示します。

  5. セキュリティグループの詳細で、[接続タイプ] を [EC2 セキュリティグループ] に設定します。

  6. [EC2 セキュリティグループ名] に、作成したブリッジセキュリティグループの名前を設定します。

  7. [Authorize] を選択します。

次に、実行中の環境にブリッジセキュリティグループを追加します。この手順では、アタッチされる追加のセキュリティグループで環境内のすべてのインスタンスを再プロビジョニングする必要があります。

環境にセキュリティグループを追加するには
  • 以下のいずれかを実行します。

    • Elastic Beanstalk コンソールを使用してセキュリティグループを追加するには

      1. Elastic Beanstalk コンソールを開き、[Regions] (リージョン) リストで AWS リージョンを選択します。

      2. ナビゲーションペインで、[環境] を選択し、リストから環境の名前を選択します。

        注記

        環境が多数ある場合は、検索バーを使用して環境リストをフィルタリングします。

      3. ナビゲーションペインで、[設定] を選択します。

      4. [インスタンス] 設定カテゴリで、[編集] を選択します。

      5. EC2 セキュリティグループで、Elastic Beanstalk が作成するインスタンスセキュリティグループに加えて、インスタンスにアタッチするセキュリティグループを選択します。

      6. ページの最下部で [適用] を選択し変更を保存します。

      7. 警告を読み取り、確認 を選択します。

    • 設定ファイルを使用してセキュリティグループを追加するには、securitygroup-addexisting.config サンプルファイルを使用します。

次に、環境プロパティを使用して環境に接続情報を渡します。Elastic Beanstalk コンソールを使用して DB インスタンスを環境に追加すると、Elastic Beanstalk は [RDS_HOSTNAME] などの環境プロパティを使用して、アプリケーションに接続情報を渡します。統合 DB インスタンスおよび外部 DB インスタンスの両方で同じアプリケーションコードを使用するために、同じプロパティを使用できます。または、独自のプロパティ名を選択することもできます。

環境プロパティを設定するには
  1. Elastic Beanstalk コンソールを開き、[Regions] (リージョン) リストで AWS リージョンを選択します。

  2. ナビゲーションペインで、[環境] を選択し、リストから環境の名前を選択します。

    注記

    環境が多数ある場合は、検索バーを使用して環境リストをフィルタリングします。

  3. ナビゲーションペインで、[設定] を選択します。

  4. [更新、モニタリング、ログ] の設定カテゴリで、[編集] を選択します。

  5. [環境プロパティ] セクションで、アプリケーションが読み取る変数を定義して、接続文字列を構成します。統合された RDS インスタンスがある環境との互換性を考慮して、次を使用します。

    • RDS_DB_NAME – Amazon RDS コンソールに表示される [DB Name] (DB 名)。

    • RDS_USERNAME – 環境にデータベースを追加するときに入力する [Master Username]。

    • RDS_PASSWORD – 環境にデータベースを追加するときに入力する [マスターパスワード]。

    • RDS_HOSTNAME – Amazon RDS コンソールに表示される DB インスタンスの [Endpoint] (エンドポイント)。

    • RDS_PORT – Amazon RDS コンソール内の [Port] (ポート)。

    
            RDS プロパティが追加された環境プロパティ設定セクション
  6. [Apply] (適用) をクリックします。

アプリケーションが環境プロパティを読み取り、接続文字列を作成するようにまだプログラムしていない場合は、次の言語固有のトピックで手順を参照してください。

最後に、環境変数を読み込むアプリケーションによっては、環境のインスタンス上でアプリケーションサーバーを再起動する必要があります。

環境のアプリケーションサーバーを再起動するには
  1. Elastic Beanstalk コンソールを開き、[Regions] (リージョン) リストで AWS リージョンを選択します。

  2. ナビゲーションペインで、[環境] を選択し、リストから環境の名前を選択します。

    注記

    環境が多数ある場合は、検索バーを使用して環境リストをフィルタリングします。

  3. [Actions] (アクション) を選択してから、[Restart app server(s)] (アプリサーバーの再起動) を選択します。