Webサービス
コンテナ基盤・CI/CDの設計と構築
非機能要件の整理から、AWS環境の構築・リリース手順の整備まで支援。開発チームと連携し、Webサービスを支えるコンテナ基盤とCI/CDを整えました。
対象: Webサービスのクラウド基盤
担当範囲: 非機能要件整理、AWS設計・構築、Terraform、CI/CD、開発チームとの接続・リリース調整

主な構成を抜粋した概略図
開発チームと連携し、要件をインフラ設計へ
既存システムをもとにした新たなサービス基盤の整備にあたり、アプリケーションの変更点と非機能要件を確認し、AWS構成へ落とし込みました。インフラ単体の設計に加え、アプリケーションからの接続方法、設定情報の管理、デプロイ時の処理順序など、開発とインフラの境界にある事項を整理しました。
AWS基盤の構成
Webサービスをコンテナで稼働させ、フロントエンドとバックエンドを分けて管理する構成にしました。外部からのアクセスは共通の入口に集約し、バックエンドとの通信は内部で完結させています。
データベースは複数のアベイラビリティーゾーンに分散し、障害時の切り替えに備えました。ファイル保存や定期処理も含め、Webサービスの稼働に必要な基盤を整えています。
構築時に重視したこと
非機能要件を運用設計に反映
要件整理で確認した可用性や復旧、運用上の条件をもとに、冗長構成やバックアップ方針、監視・ログ収集の設計へ落とし込みました。
ビルドからデプロイまでを自動化
CodePipelineとCodeBuildを用い、ソースコードの更新を起点に、コンテナイメージのビルドからデプロイまでを自動化しました。本番環境では手動承認を挟み、承認後にデータベースのマイグレーションとアプリケーションの更新を順に実行します。サービス更新に失敗した場合の切り戻しも組み込んでいます。

本番アプリケーションのCI/CD構成(主な処理を抜粋)
インフラの変更をコードで管理
AWSリソースはTerraformでコード管理。構成変更をレビューし、変更内容や履歴を追跡できる形にしました。
運用を見据えたセキュリティ対策
秘密情報はSecrets Managerで管理。GuardDutyによる脅威検知、Inspectorによる脆弱性検出、CloudTrailによる操作記録を整備し、運用中のリスク把握や問題発生時の調査に備えました。
Markshipの担当範囲
- 非機能要件の整理とAWS構成の検討・説明
- ネットワーク、コンテナ、データベースなどの設計・構築
- Terraformによるインフラのコード化
- CI/CDとデプロイ手順の整備
- 開発チームとの接続・設定・運用分担の調整




