AWSではじめるインフラ構築入門

仮想ネットワーク

VPC

なし

設定項目 設定値 機能 備考
Nameタグ study-vpc VPC識別名
IPv4 CIDRブロック 10.0.0.0/16 IPv4アドレス範囲
IPv6 CIDRブロック IPv6アドレス範囲
テナンシー デフォルト
サブネット
対象 設定項目 設定値 備考
外部
サブネット1
VPC study-vpc
サブネット名 study-subnet-public01
アベイラビリティ
ゾーン
ap-XXX-a
IPv4 CIDR
ブロック
10.0.0.0/20
外部
サブネット2
VPC study-vpc
サブネット名 study-subnet-public02
アベイラビリティ
ゾーン
ap-XXX-c
IPv4 CIDR
ブロック
10.0.16.0/20
内部
サブネット1
VPC study-vpc
サブネット名 study-subnet-private01
アベイラビリティ
ゾーン
ap-XXX-a
IPv4 CIDR
ブロック
10.0.64.0/20
内部
サブネット2
VPC study-vpc
サブネット名 study-subnet-private02
アベイラビリティ
ゾーン
ap-XXX-c
IPv4 CIDR
ブロック
10.0.80.0/20
インターネットゲートウェイ
設定項目 設定値 備考
Nameタグ study-igw
VPC study-vpc
NATゲートウェイ
対象 設定項目 設定値 備考
NAT1 NAT名 study-ngw-01
サブネット study-subnet-public01
ElasticIP 自動割り当て
NAT2 NAT名 study-ngw-02
サブネット study-subnet-public02
ElasticIP 自動割り当て
ルートテーブル

パブリックサブネット用(共通)
Nameタグ:study-rt-public

サブカテゴリ 対象 設定項目 設定値
ルート local 送信先 10.0.0.0/16
ターゲット local
外部 送信先 0.0.0.0/0
ターゲット study-igw
サブネット パブリックサブネット サブネット study-subnet-public01
サブネット study-subnet-public02

 
プライベートサブネット1用
Nameタグ:study-rt-private01

サブカテゴリ 対象 設定項目 設定値
ルート local 送信先 10.0.0.0/16
ターゲット local
外部 送信先 0.0.0.0/0
ターゲット study-ngw-01
サブネット プライベートサブネット1 サブネット study-subnet-private01

 
プライベートサブネット2用
Nameタグ:study-rt-private02

サブカテゴリ 対象 設定項目 設定値
ルート local 送信先 10.0.0.0/16
ターゲット local
外部 送信先 0.0.0.0/0
ターゲット study-ngw-02
サブネット プライベートサブネット2 サブネット study-subnet-private02
セキュリティグループ

踏み台サーバ用

設定項目 設定値 機能 備考
名称 study-sg-bastion
VPC study-vpc
インバウンドルール タイプ SSH
ソース 0.0.0.0/0

 
ロードバランサ用

設定項目 設定値 機能 備考
名称 study-sg-elb
VPC study-vpc
インバウンドルール タイプ HTTP
ソース 0.0.0.0/0
タイプ HTTPS
ソース 0.0.0.0/0

踏み台サーバ

キーペア
設定項目 設定値 機能 備考
名称 study
ファイル形式 pem SSH接続形式
EC2
設定項目 設定値 機能 備考
ネットワーク study-vpc
サブネット study-subnet-public01
自動割り当て
パブリックIP
有効
Nameタグ study-ec2-bastion
セキュリティ
グループ
default
study-sg-bastion
SSH接続確認

ssh -i ./.ssh/study.pem ec2-user@EC2のパブリックIP

Webサーバ

EC2

Webサーバ1

設定項目 設定値 機能 備考
ネットワーク study-vpc
サブネット study-subnet-private01
自動割り当て
パブリックIP
無効
Nameタグ study-ec2-web01
セキュリティ
グループ
default

 
Webサーバ2

設定項目 設定値 機能 備考
ネットワーク study-vpc
サブネット study-subnet-private02
自動割り当て
パブリックIP
無効
Nameタグ study-ec2-web02
セキュリティ
グループ
default
SSH接続確認

※./config
Host bastion
  Hostname 踏み台サーバのパブリックIP  
  User ec2-user
  IdentityFile ~/.ssh/study.pem
Host web01
  Hostname WebサーバのプライベートIP
  User ec2-user
  IdentityFile ~/.ssh/study.pem
  ProxyCommand ssh.exe bastion -W %h%p
Host web02
  Hostname WebサーバのプライベートIP
  User ec2-user
  IdentityFile ~/.ssh/study.pem
  ProxyCommand ssh.exe bastion -W %h%p

ssh web01
ssh web02

ロードバランサ

ロードバランサ
設定項目 設定値 機能 備考
名称 study-elb
VPC study-vpc
アベイラビリティ
ゾーン
study-subnet-public01
study-subnet-public02
セキュリティ
グループ
default
study-sg-elb
ターゲットグループ
設定項目 設定値 機能 備考
名称 study-tg
プロトコル HTTP
ポート 3000
ターゲット study-ec2-web01 ロードバランサがリクエストを分散させる対象
study-ec2-web02
動作確認

ロードバランサのDNS名をブラウザURLに入力

RDS

パラメータグループ
設定項目 設定値 機能 備考
パラメータグループファミリー mysql8.0 使用するDB製品
グループ名 study-db-pg
オプショングループ
設定項目 設定値 機能 備考
グループ名 study-db-og
エンジン mysql データベース種類
メジャーエンジンバージョン 8.0
サブネットグループ
設定項目 設定値 機能 備考
グループ名 study-db-subnet
VPC study-vpc
アベイラビリティ
ゾーン
ap-XXX-a
ap-XXX-c
サブネット study-subnet-private01
study-subnet-private02
データベース
設定項目 設定値 機能 備考
エンジンタイプ MySQL
DBインスタンス識別子 study-db
マスターユーザ名 XXXXX
マスターパスワード XXXXX
VPC study-vpc
サブネットグループ study-db-subnet
パブリックアクセス許可 なし
セキュリティグループ default
認証オプション パスワード認証
最初のデータベース名 XXXXX
DBパラメータグループ study-db-pg
オプショングループ study-db-og

S3

バケット
設定項目 設定値 機能 備考
バケット名 重複しない名前
リージョン ap-XXXXX-X
パブリックアクセス 全てブロック
ロール
設定項目 設定値 機能 備考
エンティティ EC2
Attachアクセス権限ポリシー AmazonS3FullAccess
ロール名 study-role-web
ロールの適用

EC2 > インスタンス > アクション > セキュリティ > IAMロールを変更

IAMロール=study-role-web

動作確認

aws 3s cp ./test.txt to s3://バケット名

Route53

ドメイン登録

Route53 > ホストゾーン > ホストゾーンの作成

パブリックDNS

通常のインターネット上のDNSサーバ
パブリックIPとドメインを変換する

Route53 > ホストゾーン > ドメイン選択 > レコードを作成 > シンプルルーティング > シンプルなレコードを定義
 
踏み台サーバのDNS情報を定義

設定項目 設定値 機能 備考
レコード名 bastion
値/トラフィックのルーティング先 レコードタイプに応じたIPアドレスまたは別の値
踏み台サーバのパブリックIP
レコードタイプ A IPアドレスそのものを指定

 
これでbastion.ドメイン ←→ 踏み台サーバのパブリックIPが変換される
 
 
ロードバランサのDNS情報を定義

設定項目 設定値 機能 備考
レコード名 www
値/トラフィックのルーティング先 ApplicationLoadBalancerとClassicLoadBalancerへのエイリアス
ロードバランサのリージョン
ロードバランサ
レコードタイプ A IPアドレスそのものを指定

 
これでwww.ドメイン ←→ ロードバランサのパブリックIPが変換される

プライベートDNS

プライベートIPとドメインを変換するAWS内DNSサーバ

設定項目 設定値 機能 備考
ドメイン名 home プライベートドメイン名 XXXXX.home
VPC study-vpc
リソース名 bastion 踏み台サーバ bastion.home
web01 Webサーバ web01.home
web02 Webサーバ web02.home
db DBサーバ db.home

 
プライベートドメインに使用できるドメインはcorp/home/mail/internal(2022/01現在)

SSLサーバ証明書
Name 設定値 機能 備考

メールサーバ

SES
Name 設定値 機能 備考

キャッシュサーバ

ElastiCache
Name 設定値 機能 備考