このサイトの使い方

提案づくりの「部品箱」です

このサイトの目的:AWSにどんなサービスがあるかを知り、お客様への提案に必要なサービスを、自分たちで調べて選べるようになること。

使い方(3ステップ)

  1. カテゴリ(モジュール)ごとに、どんなサービスがあるかを知る
  2. お客様の課題に効きそうなサービスの見当をつける
  3. 候補になったサービスを、公式サイトなどでさらに詳しく調べる

すべてのサービスを覚える必要はありません。「お客様の困りごとに、どのサービスが効くか?」という目で読んでください。

コンピューティング

アプリを「動かす」ためのサービスと、それを支える装置

Amazon EC2

仮想サーバーを提供するサービス。アプリを常時動かす場所。

  • OS(Linux/Windows等)を選んで、数分でサーバーを起動できる
  • スペック(CPU・メモリ)は起動した後からでも変更できる
  • 使った時間分だけ課金。停止すれば課金も止まる
どんな時に選ぶ? 今あるアプリをそのままの形で動かしたい時。常時稼働するWebサービスの定番。
もっと詳しく

AMI:EC2の元になる「OSのテンプレート」。作り込んだサーバーの状態を保存して、同じサーバーを複製することもできる(冗長化や復旧に使える)。

インスタンスタイプ:CPU・メモリなどの組み合わせのこと。「t3.micro」のように表記され、用途と規模に応じて選ぶ。

ライフサイクル:実行中は課金・停止中は課金なし。「終了(削除)」すると元に戻せないので慎重に。

Elastic Load Balancing(ALB)

複数のサーバーへ通信を振り分ける「負荷分散の装置」。サーバーを支える存在。

  • 届いた通信を、複数のサーバーへ自動で振り分ける
  • サーバーの状態を定期的に確認し、故障したサーバーには振り分けない(ヘルスチェック)
  • 離れた場所(複数のアベイラビリティゾーン)のサーバーにまたがって振り分けられる
どんな時に選ぶ? 1台に負荷が集中して落ちるのを防ぎたい時。サーバーを複数台にして安定させたい時。
もっと詳しく

種類:正式にはElastic Load Balancingというサービスで、用途別に数種類ある。Webアプリで定番なのがALB(Application Load Balancer)

HTTPSの受け口:暗号化された通信(HTTPS)の受け口として、証明書を設定して使うこともできる。

NAT Gateway

外から見えない場所(private)に置いたサーバーが、外部へ安全に通信するための「出口」。

  • 中から外への「外向き」通信だけを通す(外から中には入れない)
  • マネージド(AWSにお任せ)で、管理の手間がかからない
  • 起動している時間+通信量で課金される
どんな時に選ぶ? サーバーを外から隠しつつ、そのサーバーから外部のサービス(API等)を呼びたい時。
もっと詳しく

置き場所:外に見せる区画(publicサブネット)に置き、隠した区画(privateサブネット)からの通信経路をここへ向ける、という使い方をする。

コストの考え方:時間課金のため、置く台数はコストと相談して決める。

AWS Lambda

サーバーを管理せずにコードを実行できる「サーバーレス」のサービス。

  • サーバーの用意・管理が一切不要
  • イベント(ファイル追加・リクエスト等)をきっかけに自動で動く
  • 実行された時間の分だけ課金される
どんな時に選ぶ? 常時サーバーを立てるほどではない処理を、必要な時だけ動かしたい時。
もっと詳しく

きっかけ(イベントソース):「S3にファイルが置かれたら」「APIが呼ばれたら」など、様々な出来事をきっかけに起動できる。

向き不向き:実行時間に上限があり、常時動き続けるアプリをそのまま載せる用途には向かない。アプリを関数単位に作り替える前提のサービス。

Amazon ECS / AWS Fargate

アプリを「コンテナ」という単位で動かす仕組み(ECS)と、そのサーバー管理を不要にするエンジン(Fargate)。

  • コンテナ=アプリと実行環境をひとまとめにした「箱」。持ち運び・複製がしやすい
  • ECSがコンテナの起動・管理をまとめて面倒みてくれる
  • Fargateを組み合わせると、コンテナを動かすサーバーの管理も不要になる
どんな時に選ぶ? アプリをコンテナ化して、デプロイや拡張を柔軟にしたい時。アプリ側の作り替えが伴う。
もっと詳しく

Docker:コンテナを作る・動かすための代表的なツール。コンテナ活用の事実上の標準。

ECR:コンテナの元(イメージ)を保管しておく置き場。ECSとセットでよく使われる。

ストレージ

データやファイルを「置いておく」ためのサービス

Amazon S3

容量ほぼ無制限・高耐久のオブジェクトストレージ。ファイルやログの保管場所の定番。

  • 容量はほぼ無制限。データは自動で複数拠点に複製され、失われにくい
  • 保存した分だけの課金で、安く長期保管できる
  • ファイル置き場だけでなく、静的なWebサイトの公開もできる
どんな時に選ぶ? ファイル・画像・ログなどを安く・安全に保管したい時。記録を長期間残したい時。
もっと詳しく

ライフサイクルルール:アクセスが減ったデータを、より安い保管場所へ自動で移したり、期限が来たら削除したりできる(コスト削減)。

バージョニング:誤って消したり上書きしても戻せるよう、世代を管理できる。

暗号化:保管するデータを暗号化して守る機能が用意されている。

Amazon EBS

EC2にくっつけて使うディスク。サーバー本体のデータを保存する。

  • EC2にアタッチ(取り付け)して使う。付け外しもできる
  • 容量は後から増やせる(減らすことはできない)
  • スナップショット(その時点のバックアップ)を取れる
どんな時に選ぶ? EC2を作ると自動的についてくる。サーバーのディスク容量を増やしたい時。
もっと詳しく

ボリュームタイプ:SSD/HDDなど種類があり、性能とコストのバランスで選ぶ。

場所の制約:同じアベイラビリティゾーンにあるEC2にしか取り付けられない。

Amazon EFS

複数のサーバーから同時にアクセスできる共有ファイルストレージ。

  • 複数のEC2から同じファイルを同時に読み書きできる
  • 容量は使った分だけ自動で伸び縮みする
  • 複数拠点(AZ)に複製され、可用性が高い
どんな時に選ぶ? 複数のサーバーで同じファイルを共有したい時。
もっと詳しく

仲間のサービス:Windowsのファイルサーバーが必要な場合は「FSx for Windows File Server」という別サービスもある。

データベース

データを「整理して保存・検索する」ためのサービス

Amazon RDS

リレーショナルデータベースのマネージドサービス。バックアップや冗長化をAWSに任せられる。

  • MySQL・PostgreSQL等の定番DBエンジンを選んで使える
  • バックアップやアップデート等の運用作業をAWSに任せられる
  • 冗長化(待機用のDBを別拠点に用意)やレプリカ(読み取り用の複製)を簡単に組める
どんな時に選ぶ? MySQL等の一般的なDBを、運用の手間を抑えて使いたい時。DBをサーバーと分けて安全にしたい時。
もっと詳しく

マルチAZ構成:待機用のDBを別のアベイラビリティゾーンに置き、障害時に自動で切り替わる構成が組める。

リードレプリカ:読み取り専用の複製を作って、読み込みの負荷を分散できる。

Amazon Aurora

RDS互換の高性能・高可用データベース。

  • MySQL/PostgreSQLと互換性のあるAWS独自設計のDB
  • 標準のRDSより高い性能を出せる
  • データは自動で複数拠点に複製される
どんな時に選ぶ? より大規模・高負荷なシステムで、性能と可用性を高めたい時。
もっと詳しく

位置づけ:RDSファミリーの一つとして管理画面もRDSと共通。規模とコストのバランスで選ぶ。

Amazon DynamoDB

NoSQL(キーバリュー型)のデータベース。大量アクセスに強い。

  • サーバー管理不要のフルマネージドNoSQL
  • アクセスが増えても1桁ミリ秒の安定した応答速度
  • 容量の上限なし。データは自動で複数拠点に保存される
どんな時に選ぶ? シンプルなデータを大量・高速に読み書きしたい時。サーバーレス構成と相性が良い。
もっと詳しく

NoSQLとは:リレーショナル型(表形式)以外のデータベースの総称。表の形に縛られない分、柔軟で速いが、複雑な集計は苦手。

DAX:DynamoDB専用のキャッシュを足して、さらに高速化することもできる。

Amazon ElastiCache

DBの手前に置く「キャッシュ」。よく使うデータをメモリに置いて応答を速くする。

  • メモリ上で処理するため、非常に高速
  • よく読まれるデータを覚えさせて、DB本体の負荷を減らせる
  • ログイン状態(セッション情報)の共有にも使われる
どんな時に選ぶ? DBへのアクセスが多く、応答速度を上げたい・DBの負荷を減らしたい時。
もっと詳しく

エンジン:シンプルな「Memcached」と、多機能で永続化もできる「Redis」の2種類から選ぶ。

Amazon Redshift

大量データの集計・分析に特化したデータウェアハウス。

  • ペタバイト級の大量データを集計・分析できる
  • 「列指向」という仕組みで、大量データの集計が速い
  • SQLで操作できる
どんな時に選ぶ? 蓄積した大量データを分析してビジネスに活かしたい時。
もっと詳しく

位置づけ:日々のシステム処理用のDBではなく、貯めたデータを「分析する」ための倉庫(データウェアハウス)という役割。

ネットワーク

サービスどうし・利用者とを「つなぐ/区切る」ためのサービス

Amazon VPC(サブネット・Internet Gateway・ルートテーブル含む)

AWS上に作る自分専用の仮想ネットワーク。中をpublic(外に見せる)とprivate(外から隠す)に区切れる。

  • AWS上に自分専用のネットワーク空間を作れる(無料)
  • 中を「サブネット」で区切り、外に見せる区画と隠す区画を分けられる
  • Internet Gateway(外との出入口)とルートテーブル(通信経路のルール)で通信を設計する
どんな時に選ぶ? AWSでシステムを作る時の土台。守りたいデータを外から隠したい時に、区切り方が重要になる。
もっと詳しく

アベイラビリティゾーン(AZ):地域内で物理的に離れたデータセンター群のこと。サブネットはAZを指定して作り、複数のAZに分けて作ると災害・障害に強くなる

public/privateの正体:サブネットに「インターネットへの経路(Internet Gateway向けのルート)」があるかどうかで決まる。

Amazon Route 53

ドメイン名(〇〇.comなど)を管理するDNSサービス。

  • ドメイン名とサーバーの対応づけ(DNS)を管理する
  • ドメインの購入・管理そのものもできる
  • 非常に高い可用性で動き続ける
どんな時に選ぶ? 独自ドメインでサービスを公開したい時。ドメインの管理をAWSにまとめたい時。
もっと詳しく

名前の由来:DNSが使う通信番号「ポート53」から。アクセス元の場所や状態に応じた振り分けなど、高度なルーティングもできる。

Amazon CloudFront

世界中の拠点からコンテンツを配信するCDN。表示を速く・大元のサーバーの負荷を軽くする。

  • 世界中の拠点(エッジロケーション)にコンテンツをキャッシュして、近くから配る
  • 利用者から見ると表示が速くなる
  • 大元のサーバーへのアクセスが減り、負荷が軽くなる
どんな時に選ぶ? 世界中・大人数への配信を速くしたい時。静的なコンテンツが多いサイト。
もっと詳しく

定番の組み合わせ:S3に置いた静的サイトをCloudFrontから配信する構成がよく使われる。

AWS Direct Connect / Site-to-Site VPN

会社のネットワークとAWSを専用線(Direct Connect)やVPNでつなぐ方法。

  • Direct Connect=物理的な専用線。安定・高速だが、開通に時間と費用がかかる
  • Site-to-Site VPN=インターネット上に暗号化されたトンネルを作る。早く・安く始められる
  • どちらも「インターネットに晒さず」社内とAWSをつなげる
どんな時に選ぶ? 社内システムとAWSを、インターネットを経由せず安全につなぎたい時。
もっと詳しく

組み合わせ:専用線をメイン・VPNを予備にして、障害に備える構成もある。

セキュリティ・ガバナンス

「守る・記録する・見張る」ためのサービス

Security Group

通信の許可ルール(仮想ファイアウォール)。「どこから・どのポートへの通信を許すか」を決める。EC2やRDSを作る時に設定する。

  • 「許可する通信」だけを書く(書いていない通信は通らない)
  • 送信元・プロトコル・ポート番号で細かく絞れる
  • 独立したサービスではなく、EC2・RDS等につける設定
どんな時に選ぶ? サーバーやDBへの通信を必要最小限に絞りたい時(AWSでは基本の守り)。
もっと詳しく

ステートフル:許可した通信の「戻り」は自動で通る仕組みになっている。

仲間:サブネット単位で許可/拒否を制御する「ネットワークACL」という仕組みもある。

AWS Certificate Manager(ACM)

通信を暗号化する証明書(HTTPS)を発行・管理するサービス。

  • HTTPS化に必要なSSL/TLS証明書を発行できる
  • 証明書の更新は自動でやってくれる
  • ALBやCloudFrontに設定して使う
どんな時に選ぶ? 大事な情報が流れる通信を暗号化したい時。Webサービスの公開ではほぼ必須。
もっと詳しく

証明書の役割:「通信の暗号化」に加えて「このサイトが本物である証明」の役割も持つ。

AWS CloudTrail

「誰が・いつ・何をしたか」というAWSの操作ログを記録する監査サービス。

  • AWS上のあらゆる操作を記録として残せる
  • 記録はS3などに保管して長期間残せる
  • 事故・不正の調査や監査対応の基本
どんな時に選ぶ? 何かあった時に操作の記録を追えるようにしたい時。大事な情報を扱うシステムでは重要。
もっと詳しく

使いどころ:「いつ・誰が・どの設定を触ったか」を後から追跡できるため、説明責任が求められるシステムで特に重要になる。

AWS Config

AWSリソースの設定変更を記録・追跡するサービス。

  • リソースの設定内容と、その変更履歴を自動で記録する
  • 「いつ・何が・どう変わったか」を後から追える
  • ルールに反した設定を検知することもできる
どんな時に選ぶ? 「いつ・どの設定が変わったか」を追えるようにしたい時。
もっと詳しく

CloudTrailとの違い:CloudTrailは「人の操作」の記録、Configは「リソースの状態変化」の記録。セットで使われることが多い。

Amazon CloudWatch

AWS上のリソースの状態・ログを収集して監視するサービス。

  • CPU使用率などの状態(メトリクス)を集めてグラフで見られる
  • 各種ログの集約先になる
  • 「しきい値を超えたら通知」などのアラームを設定できる
どんな時に選ぶ? サーバーの負荷や通信の記録を集めて、システムの状態を見張りたい時。
もっと詳しく

ログの例:ネットワークの通信記録(VPC Flow Logs)やアプリのログの保存先としても使われる。

AWS IAM

「誰が・何をできるか」の権限を管理するサービス。AWS利用の土台。

  • ユーザーやプログラムごとに「できること」を設定する
  • 権限は必要最小限にするのが大原則(最小権限の原則)
  • 無料で使える
どんな時に選ぶ? AWSを使うなら必ず登場。権限を必要最小限にするのが基本。
もっと詳しく

セットで使う:パスワードに加えてもう一段の認証を足す「MFA(多要素認証)」との併用が推奨される。

AWS WAF / Amazon GuardDuty / AWS KMS

Web攻撃のブロック(WAF)、不審な挙動の検知(GuardDuty)、暗号化キーの管理(KMS)。守りをさらに固める応用サービス。

  • WAF=Webアプリへの不正なリクエストをルールでブロックする
  • GuardDuty=通信やログを機械学習で監視し、不審な挙動を検知・通知する
  • KMS=データ暗号化に使う「鍵」を安全に管理する
どんな時に選ぶ? 基本の守りに加えて、攻撃対策や検知を強化したい時。
もっと詳しく

ほかにも:DDoS攻撃を自動で緩和する「Shield」、脆弱性を自動診断する「Inspector」など、守りのサービスは多数ある。

アプリケーション統合

サービスどうしを「つないで連携させる」ためのサービス

Amazon API Gateway

APIの窓口を作成・公開・管理できるサービス。

  • サーバーを立てずにAPIの「窓口」を作れる
  • アクセス制限や流量の制御(使いすぎ防止)もできる
  • Lambdaと組み合わせるサーバーレス構成が定番
どんな時に選ぶ? アプリの機能をAPIとして外部やフロントエンドに公開したい時。
もっと詳しく

APIとは:プログラム同士が会話するための「注文窓口」。窓口の作成・保守・保護をまとめて面倒みてくれる。

Amazon SQS

システム間で処理の受け渡しをする「キュー(待ち行列)」。

  • 送り手はメッセージを行列に入れるだけ。受け手は自分のペースで取り出して処理
  • 処理が集中しても取りこぼさない
  • システム同士を直接つながない(疎結合)ので、片方が止まっても影響しにくい
どんな時に選ぶ? 処理が集中しても取りこぼさないよう、いったん行列に並ばせたい時。
もっと詳しく

種類:スループット重視の「スタンダード」と、順番が保証される「FIFO」の2種類がある。

Amazon SNS

1つの通知を複数の宛先へ一斉配信するサービス。

  • 1つのメッセージを複数の宛先へ同時に配れる(ファンアウト)
  • メール・Lambda・SQSなど、いろいろな宛先に送れる
  • 障害通知・アラート配信の定番
どんな時に選ぶ? 障害通知やお知らせを、複数の宛先へ同時に届けたい時。
もっと詳しく

pub/sub:発行者(Publisher)が「トピック」に投げ、購読者(Subscriber)が受け取る仕組み。CloudWatchのアラームと組み合わせて「異常があったら通知」がよくある使い方。

Amazon EventBridge

「何かが起きたら、これを動かす」というイベントの振り分け役。

  • AWS内外の出来事(イベント)を受け取り、ルールに従って次のサービスへ渡す
  • 「毎日9時に実行」のようなスケジュール実行もできる
  • サービス間の自動連携の要になる
どんな時に選ぶ? サービス間の連携を、イベントをきっかけに自動で動かしたい時。
もっと詳しく

仲間:複数の処理を順番に・条件分岐つきで実行する「Step Functions」というワークフローサービスもある。

オートメーション・フレームワーク

構築や運用を「自動化する」ためのサービスと考え方

AWS CloudFormation

テンプレート(設計図)からAWSリソースを自動作成する仕組み。同じ環境を何度でも正確に作れる。

  • テンプレートを読み込ませると、複数のリソースをまとめて自動作成
  • 手作業のミスがなく、同じ環境を何度でも再現できる
  • 作った一式をまとめて変更・削除できる
どんな時に選ぶ? 環境を繰り返し・間違いなく作りたい時。構築を自動化したい時。
もっと詳しく

IaC:このように構成をコードで管理する考え方を「Infrastructure as Code」と呼ぶ。プログラミング言語で書ける「CDK」というツールもある。

AWS Auto Scaling

負荷に応じてサーバーの台数を自動で増減する仕組み。

  • アクセスが増えたら自動でサーバーを追加、減ったら自動で減らす
  • 故障したサーバーを検知して、自動で新しいものに置き換える
  • 性能とコストを両立できる
どんな時に選ぶ? アクセスの波が大きく、ピークに合わせて自動で増強したい時。
もっと詳しく

前提:サーバーが自動で増減するため、「どのサーバーでも同じ動きをする」構成(負荷分散やDBの分離)とセットで設計する。

AWS Well-Architected Framework

AWSでの良い設計の指針(6つの柱)。サービスではなく「考え方」。

  • 運用・セキュリティ・信頼性・パフォーマンス・コスト・持続可能性の6つの柱
  • 「良い構成とは何か」を確認するチェックリストとして使える
  • AWSの設計レビューの共通言語になっている
どんな時に使う? 自分たちの構成が良い設計になっているか、見直したい時のチェックリスト。
もっと詳しく

使い方のコツ:全部を満たすのではなく、お客様の状況に合わせて「どの柱を優先するか」を考えるのがプロの設計。

データ分析・機械学習・生成AI

データを「活かす」ためのサービス

Amazon Bedrock

複数の生成AIモデルをAPIで利用できるサービス。

  • いろいろな会社の生成AIモデル(基盤モデル)を、APIひとつで使い分けられる
  • 自社のドキュメントと組み合わせた回答(RAG)も構築できる
  • AIモデルを自前で育てる必要がない
どんな時に選ぶ? 生成AIの機能を自社のシステムに組み込みたい時。
もっと詳しく

発展機能:複数のツールを組み合わせて自律的にタスクをこなす「Agents」、有害な出力を抑える「Guardrails」などの機能もある。

Amazon SageMaker AI

機械学習モデルを構築・学習・デプロイするためのサービス。

  • データ準備からモデルの学習・公開までを一気通貫で支援
  • コードを書かずにモデルを作れる機能(Canvas)もある
  • 事前学習済みのモデルを使ってすぐ始めることもできる
どんな時に選ぶ? 自社データで独自の機械学習モデルを作りたい時。
もっと詳しく

Bedrockとの違い:Bedrockは「できあがったAIを使う」、SageMakerは「自分でAIを作る・鍛える」寄りのサービス。

Amazon Athena / AWS Glue

S3のデータをSQLで直接分析(Athena)、データの加工・整形(Glue)。

  • Athena=S3に置いたデータを、そのままSQLで検索・分析できる(サーバーレス)
  • Glue=散らばったデータの抽出・変換・整形(ETL)を自動化する
  • 組み合わせると「貯めたデータを分析できる形にして調べる」流れが作れる
どんな時に選ぶ? 蓄積したデータを、分析できる形に整えて調べたい時。
もっと詳しく

見える化:分析結果をグラフやダッシュボードにする「QuickSight」というBIサービスと組み合わせることが多い。