Docker コンテナ運用に AWS ECS を採用
「AWS ECS」のデプロイ機構は、ホストリソース計算、新コンテナ配置、LB登録、旧コンテナ廃棄が全自動です。デプロイ作業に人手が介在しないため、作業ミスのリスクそのものがなくなります。
株式会社プラウディット / Proud Cloud
本サービス「プラウドクラウド」のサイトそのものが導入事例です。PHPで制御された動的サイトを AWS ECS のコンテナ基盤に載せ、 省コストかつ無停止でデプロイできる DevOps 構成に切り替えました。
Background
本サービス(プラウドクラウド)サイトです。端末振り分けやアニメーションコントロールなどを PHP で制御しており、動的サイトの DevOps 化が課題となっていました。
静的サイトであればサーバレス構成で運用を手放せますが、サーバサイドの処理を持つサイトではそうはいきません。そこで、コンテナを前提とした構成に移行することで、動的サイトでも省コストかつ安全にデプロイできる体制を整えました。
Solution
「AWS ECS」のデプロイ機構は、ホストリソース計算、新コンテナ配置、LB登録、旧コンテナ廃棄が全自動です。デプロイ作業に人手が介在しないため、作業ミスのリスクそのものがなくなります。
AWSのLB機能「ALB」のダイナミックポート機能により、最小1台のホストに複数のコンテナを配置できるようになったことで、省コストかつ無停止デプロイが実現しました。また最新プロトコル HTTP/2 にも対応したことで、通信速度の向上も図れました。
同社ブログサイト同様、「GitHub + CircleCI で自動デプロイ」化することで、運用フローを統一し、全体運用コストを下げることに成功しました。
いわゆる「DevOps」構成により、サイト更新・機能追加・事例追加など、ビジネスタスクに集中することができるようになりました。
ブログはサーバレス、サービスサイトはコンテナ。
サイトの性質に合わせてプランを使い分けながら、GitHub + CircleCI という運用フローだけは統一する。これが全体の運用コストを下げる要になりました。
Architecture
Overview
| サイト名 | Proud Cloud |
|---|---|
| クライアント | 株式会社プラウディット |
| 使用プラン | コンテナプラン |
| AWSプロダクト | ECS / ALB / ACM / Route 53 / IAM |
| デプロイ | Docker / GitHub / CircleCI |
Other Cases