開発タスク
先程、ドローンベンチャー企業の生産部品の在庫管理システムのAWS構成図を示しました。このアーキテクチャに従い、AWSにインフラを構築、AWS Fargate を使用して Amazon ECS に Java マイクロサービスをデプロイしてください。
構築するAWSサービス
- AWS Fargate を使用した Amazon ECS
- VPC(ネットワーク設定)
※ データベースとして、RDS / Aurora の PostgreSQL を用いますが、今回は運営側ですでに構築したAuroraに利用するため、このタスクで構築する必要はありません。https://github.com/dotlife-dev/lxp-practical-project/blob/main/drone/dev/src/main/resources/application.properties にアクセス情報を記載しています。
構築手順
を参照して、AWSにインフラを構築、AWS Fargate を使用して Amazon ECS に Java マイクロサービスをデプロイしてください。
ツール
- 「Amazon Elastic Container Registry (Amazon ECR)」は、フルマネージド型のレジストリで、開発者は Docker コンテナイメージを簡単に保存、管理、デプロイできます。Amazon ECR は Amazon ECS と統合され、 development-to-production ワークフローを簡素化します。Amazon ECR は、可用性が高くスケーラブルなアーキテクチャでイメージがホストされるため、アプリケーション用のコンテナを確実にデプロイできます。AWS Identity and Access Management (IAM) との統合により、各リポジトリのリソースレベルでの制御が実現します。
- Amazon Elastic Container Service (Amazon ECS) は、Docker コンテナをサポートする非常にスケーラブルで高性能なコンテナオーケストレーションサービスであり、コンテナ化されたアプリケーションを AWS で簡単に実行およびスケーリングできます。Amazon ECS では、独自のコンテナオーケストレーションソフトウェアをインストールして運用したり、仮想マシンのクラスターを管理およびスケーリングしたり、それらの仮想マシン上でコンテナをスケジュールしたりする必要がなくなります。
- 「AWS Fargate」 は Amazon ECS のコンピューティングエンジンで、これを使用するとサーバーまたはクラスターを管理する必要なくコンテナを実行できるようになります。AWS Fargate を使用すると、コンテナを実行するために仮想マシンのクラスターをプロビジョニング、設定、スケールする必要がありません。これにより、サーバータイプの選択、クラスターをスケールするタイミングの決定、クラスターのパッキングの最適化を行う必要がなくなります。
- Docker は、コンテナと呼ばれるパッケージでアプリケーションを構築、テスト、配信できるプラットフォームです。
期待する成果
Java マイクロサービスをデプロイするために、AWS Fargate を使用した Amazon ECS が構築できていること。
VPCなど必要なネットワーク設定ができていること。