0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【CodeBuild】ビルドステージのサーバレス化によるDevOps基盤構築

Posted at

プロジェクトの基盤チームにてCICDの第一歩である、ビルドのサーバレス化に取り組みました!

現状・課題

複数のチームがmasterブランチから派生して別々のブランチを切り、最後にマージして一つのアプリケーションを作っていく構成となっていた。
image.png

各チーム(ブランチ)ごとに環境を作成しており、各環境にECR、EKS等のアプリケーションに必要な構成をデプロイ。ビルドサーバは単一のEC2(Linux)サーバを利用していました。
ビルドサーバのメモリ上限によって、別チームのビルドが終わらない限り他のチームのビルドを実施することができず、困っていたのが当時の状況です。

打ち手

以下の3点を意識して構成の検討~実装まで行いました。
image.png

①拡張性:単一のCodeBuildを構築。AWS CLIで引数に環境識別子を必須入力とし、環境ごとに動的にECRへプッシュする向き先を変更可能にしました。
②セキュリティ:SecretsManagerを活用し秘密情報をセキュアに保持し、IAMサービスロールを利用して最小限の権限設計を行いました。
③運用保守性:CloudWatchからDynatraceへリアルタイムログ転送を設定。開発者のトラブルシュートを容易にしました。

結果

開発者は他チームを意識せずビルドが実施可能となり、また1時間のビルド時間を半分に短縮することに成功。
開発効率を大幅に向上することができました!

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?