Step7: インフラ1
このStepでは、AWS の主要サービスを一通り学んだうえで、Step 3 で実装したバックエンドと Step 6 で実装したフロントエンドをクラウド上で動作させるためのインフラ構成を設計し、構成図として作成することを目標にします。構築は次のStepで行います。
1. 講座の履修
AWS講座 の以下の章を実施してください。「任意」の章は、構成の選択肢を広げたい場合に履修してください。これらを使わなくても構成を組み立てることは可能なので、設計したい構成に合わせて判断してください。すでに同等の知識がある場合は、講座の履修はスキップしても構いません。
| 講座名 | 必須/任意 | 到達目標 |
|---|---|---|
| AWSとは | 必須 | AWS の全体像と、代表的なサービスの役割を理解できる |
| VPC概要 | 必須 | AWS 上の仮想ネットワーク(VPC・サブネット・ルーティング等)を設計できる |
| EC2概要 | 必須 | 仮想サーバである EC2 の仕組みと、代表的なオプションを理解できる |
| 仮想サーバを立てよう | 必須 | EC2 インスタンスを起動し、SSH で接続する一連の手順を実行できる |
| ELB概要 | 必須 | ロードバランサ(ALB)の役割と、リスナー/ターゲットグループの構造を理解できる |
| オートスケーリング概要 | 必須 | 需要に応じてサーバの台数を自動で増減させる仕組みを理解できる |
| 冗長化構成を組み立てよう | 必須 | ALB + EC2 + Auto Scaling による冗長化構成を実際に組み立てられる |
| IAM概要 | 必須 | AWS リソースへのアクセス制御の考え方と、IAM の基本要素を理解できる |
| RDS概要 | 必須 | マネージド型リレーショナルデータベースサービスの仕組みと代表的なオプションを理解できる |
| データベースを構築しよう | 必須 | RDS でデータベースインスタンスを構築し、EC2 から接続する一連の手順を実行できる |
| S3概要 | 任意 | オブジェクトストレージの仕組みと、代表的なユースケースを理解できる |
| CloudFront概要 | 任意 | CDN の役割と、キャッシュ制御・オリジン設定の基本を理解できる |
| Route53概要 | 任意 | DNS の仕組みと、Route53 でのドメイン管理・レコード設定を理解できる |
| ACM概要 | 任意 | サーバ証明書の役割と、ACM での証明書発行・管理の基本を理解できる |
| コンテンツ配信をしよう | 任意 | S3 + CloudFront で静的コンテンツを配信する一連の手順を実行できる |
| Amplify概要 | 任意 | Amplify Hosting の仕組みと、Next.js アプリケーションを配信できるフローを理解できる |
| AmplifyでNext.jsのアプリケーションをデプロイしよう | 任意 | Next.js アプリケーションを Amplify でデプロイする一連の手順を実行できる |
2. 課題の実施
2.1 目的・背景
Step 3 で実装したバックエンドと Step 6 で実装したフロントエンドを、Web アプリケーションとしてクラウド上で動作させるためのインフラ構成を考えます。実運用を意識して、機能要件に加えて可用性・スケーリングといった非機能要件も満たせる構成に仕上げることが目標です。本Stepでは構成図の作成までが対象で、実際の構築は行いません。構築は次のStepで取り組みます。
| 💡 ポイント |
|---|
| 本課題は、要件定義や設計を自分で考えるスキルを高めるため、要件をあえて抽象的に記載しています。進める中で不明点がある場合は、講師への質問 から事前に相談してください。メンタリング当日に「わからなくて進んでいない」状態になると活用できる時間が限られてしまうため、迷ったら途中段階でもこまめに質問を出すことを推奨します。 |
2.2 実施要件
使用するサンプルアプリケーション
Step 3 で実装したバックエンドと、Step 6 で実装したフロントエンドを対象にしてください。
想定する機能要件
以下の内容を満たす Web アプリケーションとして稼働させることを前提に、構成を考えてください。
- フロントエンドをインターネット経由でアクセスできる形で配信できる
- フロントエンドからバックエンドの API を呼び出せる
- バックエンドのデータを永続化できる
想定する非機能要件
以下の内容を満たせる構成にしてください。採用するサービス・パラメータの決め方は委ねます。
- 可用性: 一部のサーバに障害が起きても、継続的にアプリケーションが応答できる
- スケーリング: 需要の変動に合わせて、サーバの台数を自動で増減できる
構成の自由度
採用するサービス・配置・パラメータは自由に決めてください。必須講座で扱ったサービスだけで構成しても、任意講座で扱ったサービスを組み合わせても構いません。「なぜそのサービスを選んだのか」を自分の言葉で説明できる状態にすることを重視してください。
2.3 課題提出
下記内容を提出フォームより提出してください(提出はプレミアムプランでご利用いただけます)。
| 項目 | 内容 |
|---|---|
| 概要 | 設計したインフラ構成の特徴・採用したサービスを簡潔に記載する |
| インフラ構成図 | 作成したインフラ構成図を画像ファイルとして添付する |
| 選定理由 | 採用したサービスごとに、なぜそのサービスを選んだのかを記載する |
| まとめ | 構成を考える過程で検討したこと、工夫したこと、学んだこと |