| Linuxコマンド |
| 用語集 |
| debian メモ |
| apache2 メモ |
| MySQL メモ |
| Oracle メモ |
| PostgreSQL |
| HOME |
AWSの2つのアカウント間の通信をしてみます。

送信側のアカウントをAccount A、受け側のアカウントをAccount Bとします。
Account B(受け側のアカウント)の設定Account A(送信側のアカウント)の設定
それぞれの設定
EC2の作成
EC2を開きインスタンスの起動をクリックします。

以下の情報を入力しインスタンスを起動をクリックします。
| 名前 | myapp-web-dev-account |
|---|---|
| Amazonマシンイメージ(AMI) | Amazon Linux 2023 kernel-6.1 AMI |
| インスタンスタイプ | t3.micro |
| キーペア名 | 《新しいキーペアの作成》 myapp-web-dev-account-key |
| ネットワーク | vpc-*************8f08 |
| セキュリティグループ | 《作成》 launch-wizard-1 |
| ストレージ | 1x 8 GiB gp3 |

インスタンスが起動しました。

apacheのインストールをします。
sudo yum install -y httpd
sudo systemctl start httpd
sudo systemctl enable httpd
cd /var/www/html/
echo "Hello from EC2!" | sudo tee /var/www/html/index.html
参考: AWS EC2+apache
NLBの作成
左のメニューでロードバランサーをクリックします。

ロードバランサーの作成をクリックします。

Network Load Balancerの作成をクリックします。

以下の情報を入力し下にスクロールさせます。
| ロードバランサー名 | nlb-myapp-web-dev-account |
|---|---|
| スキーム | インターネット向け |
| ロードバランサーのIPアドレスタイプ | IPv4 |
| VPC | vpc-*************8f08 |
| アベイラビリティゾーンとサブネット | |
| ap-northeast-1a (apne1-az4) | subnet-0d25310d8a5572bd0 |
| ap-northeast-1c (apne1-az1) | subnet-0ce473a651e26e8d6 |
| セキュリティグループ | 《新しいセキュリティグループを作成》 |

インバウンドルールのルールを追加をクリックします。

セキュリティグループを作成をクリックします。
| セキュリティグループ名 | SG-nlb-myapp-web-dev-account |
|---|---|
| 説明 | Connect from Account A |

下にスクロールさせていきターゲットグループを作成をクリックします。

以下の情報を入力し次へをクリックします。
| ターゲットの種類 | インスタンス |
|---|---|
| ターゲットグループ名 | tg-ec2-account-b |
| VPC | vpc-*************8f08 |

次へをクリックします。

ターゲットグループの作成をクリックします。

ターゲットグループが作成されました。

ロードバランサーの作成をクリックするとロードバランサーが作成されました。

VPC Endpoint Serviceの作成
VPCを開きます。

左のメニューでエンドポイントサービスをクリックします。

エンドポイントサービスを作成をクリックします。

以下の情報を入力し作成をクリックします。
| 名前 | account-b-endpoint-service |
|---|---|
| ロードバランサータイプ | ネットワーク |
| 使用可能なロードバランサー | nlb-myapp-web-dev-account |
| エンドポイントの承諾が必要 | チェックを外す |
エンドポイントサービスが作成されました。

プリンシパルを許可タブをクリックしプリンシパルを許可をクリックします。

ARNにAccount Aの情報を入力しプリンシパルを許可をクリックします。

正常に許可されました。

エンドポイントサービスのサービス名をメモしておきます。
EC2の作成
EC2を開きインスタンスの起動をクリックします。

以下の情報を入力しインスタンスを起動をクリックします。
| 名前 | myapp-web-dev-shop |
|---|---|
| Amazonマシンイメージ(AMI) | Amazon Linux 2023 kernel-6.1 AMI |
| インスタンスタイプ | t3.micro |
| キーペア名 | 《新しいキーペアの作成》 myapp-web-dev-shop-key |
| ネットワーク | vpc-*************83c5 |
| セキュリティグループ | 《作成》 launch-wizard-1 |
| ストレージ | 1x 8 GiB gp3 |

インスタンスが起動しました。

VPC Endpointの作成
VPCを開きます。

左のメニューでエンドポイントをクリックします。

エンドポイントを作成をクリックします。

以下の情報を入力し作成をクリックします。
| 名前 | account-a-vpce |
|---|---|
| タイプ | NLBとGWLBを使用するエンドポイントサービス |
| VPC | vpc-*************83c5 |

Account Bで作成したエンドポイントサービスのサービス名を入力しサービスの検証をクリックします。

接続するサブネットをチェックします。

セキュリティグループをチェックしエンドポイントを作成をクリックします。

ステータスが保留中になっています。

Account Bのエンドポイントサービスを開きます。

エンドポイントサービスを開きます。 Account Bでエンドポイントサービスを作成する際にエンドポイントの承諾が必要のチェックを外したので特に承認待ちはなさそうです。

Account Aをリロードしたらステータスが使用可能になっていました。

Account BのEC2の80ポート許可設定
Account BのEC2インスタンスを開きセキュリティグループをクリックします。

HTTPの設定を追加しルールを保存をクリックします。

ルールが変更されました。

Account AのEC2の80ポート許可設定
Account Aのインスタンスにも80ポートの許可を設定します。
Account AのEC2インスタンスを開きセキュリティグループをクリックします。

ルールが変更されました。

アウトバウンドルールにも80ポートを追加します。

ルールが変更されました。

接続テスト
Account AのVPCエンドポイントのDNS名をメモします。

Account AのEC2へssh接続し、Account Bへ接続するためにAccount BにつながっているAccount Aのエンドポイントへ80ポートにcurlコマンドを実行してみます。
northeast-1.vpce.amazonaws.com:80curl: (28) Failed to connect to vpce-*************108b-********.vpce-
svc-*************bc93.ap-northeast-1.vpce.amazonaws.com port 80 aft
er 264098 ms: Could not connect to serverタイムアウトしました。
Account BのNLBのセキュリティをAccount AのVPCのCIDR範囲に変更してみます。

再度接続を試みましたが同じ結果でした。
Account BのEC2のNLBのターゲットグループを開きターゲットを登録をクリックします。

インスタンスをチェックし保留中として以下を含めるをクリックします。

保留中のターゲットの登録をクリックします。

正常に登録されました。

再度実行してみます。
northeast-1.vpce.amazonaws.com:80Hello from EC2!
正常に動作しました!
Copyright (C) 2025 ymlib.com
