Step7: インフラ1
このStepでは、AWSの基本サービス(VPC・EC2・ELB・オートスケーリング・IAM)を学び、Step 3 で実装した自作バックエンドをAWS上に手動でデプロイして、ヘルスチェックエンドポイントで疎通確認できる状態まで構築します。
1. 講座の履修
AWS講座 の以下の章を実施してください。すでに同等の知識がある場合は、講座の履修はスキップしても構いません。
2. 課題の実施
2.1 目的・背景
Step 3 で実装した自作バックエンドを、まずはインターネット経由でアクセスできる状態にしてクラウド上で動作させます。実運用を意識して、一部のサーバに障害が起きても継続的に応答でき、負荷の変動にも自動で追従できる構成を組み立てることが目標です。
2.2 実施要件
使用するサンプルアプリケーション
Step 3 で実装した自作バックエンドを利用してください。
使用するサーバ
クラウド上の仮想サーバにて動作するように実装してください。
可用性
一部のサーバに障害が起きても、継続的に API が応答できるようにしてください。複数の場所(同じ国内で可)で冗長化する構成が目安です。
スケーリング
需要の変動に合わせて、サーバの台数を自動で増減できるようにしてください。目安として、以下の数値要件を満たすようにしてください。
- 最小台数: 2 台
- 最大台数: 6 台
- スケールアウトの契機: CPU 使用率が 70% を超えたとき
- スケールインの契機: CPU 使用率が 30% を下回ったとき
2.3 判定基準
動作確認
自作バックエンドに疎通確認用のエンドポイント(例: GET /health)を用意し、以下の curl コマンドで動作を確認してください。
curl -i https://<公開URL>/health
以下のようなレスポンスが返ります。
HTTP/1.1 200 OK
Content-Type: application/json
{"status": "ok"}
机上確認
以下の内容について、実際の設定画面などを確認し、それがわかるスクリーンショットを取得してください。
- 可用性: 1つのサーバに障害が起きた場合に、どのように処理が継続されるか
- スケーリング: 需要が増減した場合にどのようにサーバの台数が増減するか(想定するスケール条件とあわせて)
2.4 課題提出
下記内容を提出フォームより提出してください(提出はプレミアムプランでご利用いただけます)。
| 項目 | 内容 |
|---|---|
| 概要 | 構築したインフラ構成の特徴・採用したサービスを簡潔に記載する |
| インフラ構成図 | 作成したインフラ構成図を画像ファイルとして添付する |
| 動作確認 | curl コマンドの実行結果を記載する |
| 机上確認 | 可用性・スケーリングそれぞれの設定がわかる画面のスクリーンショットを添付し、なぜ合格基準を満たしているかを記載する |
| まとめ | 構築中に苦労したこと、工夫したこと、学んだこと |