2
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?

【AWS】「AWSではじめるインフラ構築入門 第2版」で学んだAWS各サービスの理解まとめ

Last updated at Posted at 2025-10-07

はじめに

本メモは、『AWSではじめるインフラ構築入門 第2版』で学習した内容を整理し、AWS各サービスの理解を深めるためにまとめたものです。
内容に誤りがあった場合は、ご指摘いただけますと幸いです。

通信の流れ

SSH接続(サーバ管理・運用)

1. 名前解決(Route53)

  • Route53でドメイン名を管理し、各サービスのIPアドレスへ名前解決
    • 名前解決はVPC外のユーザーだけでなく、VPC内の各工程(踏み台サーバー、ロードバランサー、NAT、キャッシュサーバー、Webサーバー)でも呼ばれる

2. SSH接続

  • VPC(仮想プライベートクラウド)
  • Internet Gateway(インターネット接続用)
  • パブリックサブネット
    • 踏み台(Bastion)サーバー
  • プライベートサブネット
    • Webサーバー
  • SSHは踏み台サーバー経由でWebサーバーへ接続

HTTPS(Webアクセス)

1. 名前解決(Route53)

  • Route53でドメイン名を管理し、各サービスのIPアドレスへ名前解決
    • 名前解決はVPC外のユーザーだけでなく、VPC内の各工程(踏み台サーバー、ロードバランサー、NAT、キャッシュサーバー、Webサーバー)でも呼ばれる

2. HTTPS(Webアクセス)

  • VPC
  • Internet Gateway
  • パブリックサブネット
    • ロードバランサー
    • NAT(必要に応じて)
      • 外部APIへのリクエスト
      • 外部のWebサーバーからデータ取得
      • S3や外部リポジトリへのアクセス
    • キャッシュサーバー(ElastiCacheなど)
      • Webサーバーが アプリケーション内でCacheを参照
      • CacheにヒットすればDB/APIを呼ばずにデータを返す
      • Cacheに無ければDB/APIに問い合わせ、結果をCacheに書き込む
  • プライベートサブネット
    • Webサーバー
    • RDS(データベース)

3. その他サービス

  • VPC内でSES(メール送信)、S3(ストレージ)などを利用

全体の流れ

  • Route53で名前解決
  • SSHは踏み台サーバー経由でWebサーバーへ
  • 外部からのWebアクセスはロードバランサー経由でWebサーバーへ
  • WebサーバーはRDSやElastiCache、S3、SESなどAWSサービスと連携

接続フロー

SSH接続

HTTPS接続

各サービスのまとめ

VPC(Amazon Virtual Private Cloud)

仮想ネットワークを構築するサービス。

CIDR(Classless Inter-Domain Routing)

IPアドレスとネットワークの範囲を表すための記法。

例:192.168.0.0/24

  • 最初の3つのブロック(24ビット)がネットワーク部
  • 残りの8ビットがホスト部(ネットワーク内の個々の端末やデバイスを識別)
サブネット名 ネットワークアドレス 使用可能範囲 (最初〜最後) ホスト数
public01 10.0.0.0/20 10.0.0.0 〜 10.0.15.255 4096
public02 10.0.16.0/20 10.0.16.0 〜 10.0.31.255 4096
private01 10.0.64.0/20 10.0.64.0 〜 10.0.79.255 4096
private02 10.0.80.0/20 10.0.80.0 〜 10.0.95.255 4096

アベイラビリティゾーン(Availability Zone)

  • ap-northeast-1a
  • ap-northeast-1c
    ※複数のAZを利用することで、高可用性(HA)を確保できる

サブネット

  • VPC内のIPアドレス範囲を分割した単位
  • 例として以下の構成:
    -パブリックサブネット:2つ
    -プライベートサブネット:2つ

インターネットゲートウェイ(Internet Gateway)

  • VPCで作成されたネットワークとインターネット間の通信を可能にする
  • VPCにアタッチして使用する

IGW は「インターネットとの窓口」

NATゲートウェイ(NAT Gateway)

  • プライベートサブネットからインターネットへの通信を可能にする
  • インターネットからプライベートサブネットへのアクセスは許可しない
  • パブリックサブネットに作成する
  • 冗長性を保つため、パブリックサブネット1・2の両方に作成するのが推奨
  • NATの仕組み:プライベートIPとパブリックIPを変換
  • Elastic IPを割り当てる
  • インターネットゲートウェイ(IGW)がないと動作しない

NAT Gateway は「プライベートサブネットがインターネットに出るための出口」であり、外部からはアクセス不可
※ 冗長構成にすることで、片方のAZが落ちても通信可能

Elastic IP

  • リソースにパブリックIPを持たせるためのサービス

ルートテーブル(Route Table)

  • サブネット間の通信経路を設定する

パブリックサブネット用

  • パブリックサブネット1,2 ←→ インターネットゲートウェイ
  • パブリックサブネット1,2 ←→ プライベートサブネット1,2

プライベートサブネット用1

  • プライベートサブネット1 ←→ NATゲートウェイ1
  • プライベートサブネット1 ←→ パブリックサブネット1

プライベートサブネット用2

  • プライベートサブネット2 ←→ NATゲートウェイ2
  • プライベートサブネット2 ←→ パブリックサブネット2

セキュリティグループ(Security Group)

  • 外部からのアクセス制限を設定するための仮想ファイアウォール

※ セキュリティグループは サブネット単位ではなく、インスタンス単位で適用

踏み台サーバ用セキュリティグループ(Bastion用)

  • タイプ: SSH
  • インバウンドルール: 0.0.0.0/0(任意の場所からの接続を許可)

※ Bastionサーバーは外部アクセス用のため、SSHポート(22番)を全てのIPから許可することが多い
※ 実運用では、アクセス元IPを限定してセキュリティを強化するのが推奨

踏み台サーバー(Bastion)作成(EC2)

  • 全てのリソースに接続するための入り口として踏み台サーバーを用意
  • EC2(Amazon Elastic Compute Cloud) を使って構築
  • クライアントがWebサーバーにアクセスするときは直接通らず、Bastion経由で接続
  • SSH接続に必要な キーペア を事前に作成
  • 上記の踏み台サーバ用セキュリティグループ(Bastion用)を適用

ロードバランサー(ELB / Elastic Load Balancing)

  • 種類: Application Load Balancer(ALB)
  • 主な役割:
    • Webサーバーを複数用意してスケールアウトし、性能を向上
    • クライアントからのリクエストをWebサーバーに分散
    • SSL処理(HTTPS対応)
    • 不正リクエストの対策
  • 補足:
    • ロードバランサーにはSSL処理などを高速化する専用仕組みがある
    • クライアントがアクセスする場合は、インターネットゲートウェイ → ロードバランサー → Webサーバー の流れで通信が行われる

ロードバランサー用セキュリティグループ

  • タイプ:
    • HTTP
    • HTTPS
  • インバウンドルール: 0.0.0.0/0(任意の場所からのアクセスを許可)

Webサーバー1,2(EC2で作成)

  • キーペア: ログイン用に必要(踏み台サーバー作成時に作成したものを使用)
  • SSH接続:
    • 踏み台サーバー経由で多段接続する
    • ローカルの .ssh/config に設定して利用する
  • 補足:
    • Webサーバーへの接続は、SSHで踏み台サーバー経由の場合と、HTTPSでアクセスされる場合がある

データベースサーバー(RDS / Amazon Relational Database Service)

  • 配置: プライベートサブネット1、2にサブネットグループを作成して配置
  • 用途: Webサーバーからのアプリケーションデータの永続保存

ストレージ(S3 / Amazon Simple Storage Service)

  • 特徴:
    • EC2のEBS(Elastic Block Store)よりも耐久性・拡張性に優れる
    • オブジェクトストレージとして利用
  • 設定例:
    • バケット名はグローバルで一意にする必要がある
    • IAMロールを作成して、EC2に適用することでアクセス権を付与

独自ドメイン名とRoute 53

  • 独自ドメイン名

    • AWS上で管理するカスタムドメイン
  • Route 53

    • AWSのDNSサービス
    • ホストゾーンを作成してドメイン名とIPアドレスを紐付け
    • パブリックDNS: 外部アクセス用(例: ロードバランサー、踏み台サーバー)
    • プライベートDNS: VPC内部アクセス用(例: Webサーバー、RDS)

ホストゾーン

  • ホストゾーンの例:
    • パブリック: aws-intro-sample-xxxxxx.com
    • プライベート: home

パブリックDNS

  • 外部からの問い合わせに対して名前解決を行う
  • 利用対象:
    • 踏み台サーバー(Bastion)
    • ロードバランサー(ALB / ELB)

プライベートDNS

  • VPC内部からの問い合わせに対して名前解決を行う
  • 利用対象:
    • 踏み台サーバー(Bastion)
    • Webサーバー1,2
    • DBサーバー(RDS)

Amazon SES(Amazon Simple Email Service)

メールの送信

  • IAMユーザーを使用して認証し、SESに接続する
  • WebアプリケーションやEC2からメールを送信可能

メールの受信

  • メールを受信した際に「アクション」と呼ばれる処理が実行される
  • 東京リージョンでは送信のみ利用可能(受信は非対応)
    • 受信に対応しているのは、バージニア北部リージョンなど

ドメイン設定

  • SESでメールを送受信するために、ドメイン名を作成して認証する

ElastiCache

  • サービス: Redis、Memcached

  • 主な構成要素:

    • クラスター: キャッシュの論理的な単位
    • シャード: データを分割して配置する単位(スケールアウト用)
    • ノード: 実際のキャッシュサーバー(インスタンス)
  • 配置: プライベートサブネットに置くことが推奨

    • Webサーバーやアプリケーションからのみアクセス可能にすることでセキュリティを確保

※ ElastiCacheは Webサーバーが参照する内部キャッシュ として利用
※ LBの前ではなく、Webサーバー側でキャッシュとして動作する
※ シャードやノードを使ってスケールアウトや可用性を確保

CloudWatch

  • ダッシュボード: 各種メトリクスを可視化して監視できる画面
  • ウィジェット: ダッシュボード上に表示するグラフやテキストなどの単位
  • メトリクス: CPU使用率やネットワーク通信量などの監視データ

Billing and Cost Management

  • AWSの利用料金やコストを管理するサービス
  • 請求情報の確認、予算設定、コスト分析が可能
  • CloudWatchと組み合わせることで、利用状況に応じたアラート設定も可能

終わりに

AWSを理解するには、ネットワークの基礎知識が土台として重要だと感じました。
「ネットワークはなぜつながるのか」と合わせて読むことで、理解がさらに深まります。

検証時期:2025年10月

参考

AWS学習記録まとめ

2
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
2
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?