0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

VPC,EC2,RDSがそれぞれ接続できるかテストしてみた。

Last updated at Posted at 2025-07-12

前回の記事Terraform で VPC,EC2,RDS
を構築してみた
で作成したインフラが意図通りに動作するかテストをします。

はじめに

本記事は、前回の記事でVPC/EC2/RDSが構築済みである前提です。

確認する項目

  1. クライアント → ALB → EC2 の疎通確認
  2. EC2 → RDS の接続テスト

クライアント → ALB → EC2 の疎通確認

期待する結果

Nginx の初期ページが表示される

確認手順

※マネジメントコンソールで確認します。

作成した ALB の DNS をコピーします。

ALBのDNSを取得

コピーした DNS 名をブラウザのアドレスバーに貼り付けてアクセスします。

http://<ALBのDNS名>

ALB→EC2

EC2 インスタンスは、起動時に実行された userdata.sh によって Web サーバー(Nginx)がインストールされ、ポート 80 番でリクエストを待ち受けています。ALB はこのポートに対してヘルスチェックを行い、正常なインスタンスにのみトラフィックを転送します。

Nginxへアクセス成功.png

これで ALB→EC2 へのアクセスが可能であることが確認できました。

EC2 → RDS の接続テスト

期待する結果

RDS にデータベースとテーブルができる

確認手順

作成した RDS インスタンスのエンドポイントをコピーする。

rds のエンドポイントをコピー

作成した EC2 を選択し、接続をクリック。

ec2でsessionmanager

セッションマネージャータブで接続をクリック。

sessionmanager

ターミナル画面が立ち上がるため、以下のコードで MySQLをインストール

sudo yum install -y mysql

ec2にmysqlをインストール

以下のコードで mysql へアクセスします。

mysql -h <作成したRDSのエンドポイント> -u admin -p

このあとパスワードが質問されます

-u の後の admin は、terraform で作成する際に[username = admin]としているからです。
パスワードは、dev.tfvars で設定したものになります。

接続に失敗する場合は以下を確認してください。
• RDS のセキュリティグループが EC2 のプライベート IP からの接続を許可しているか
• パスワードが正しいか

そうすると接続が成功して>MySQL となります。
mysqlへログイン

以下のコードを実行し、データベースとテーブルを作成してみます。

CREATE DATABASE db_test;

USE db_test;

CREATE TABLE User(id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(50) NOT NULL);

User テーブルを確認してみます。

DESCRIBE User;

テーブルの確認

無事データベースとテーブルが作成できていることが確認できました。

最後に

テストする方法に悩まれている方々の参考になれば幸いです。
不要であれば、リソースを削除しましょう。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?