Slide 1

Slide 1 text

KustomizeとGitHub Actionsを利用した Ubieのデプロイの仕組み 2021 / 09 / 28 Ubie株式会社 Daisuke Taniwaki

Slide 2

Slide 2 text

2 自己紹介 2008-2012 Trend Micro - 未知の脅威を発見する Webクローラ開発 2012-2014 Kakaku.com - Tabelog USの立ち上げ 2014-2017 Kaizen Platform - Kaizen Optimization Platform開発 2017-2021 Preferred Networks - 材料探索SaaS Matlantis開発 Daisuke Taniwaki / @dtaniwaki Ubie株式会社 SRE / Software Engineer

Slide 3

Slide 3 text

3 ユビーの提供するサービス https://ubie.app/ toC toB

Slide 4

Slide 4 text

4 Infrastructure Layer Service Layer GitHub Repo構成 ToB Service ToC Service Release IaaS PoC Service ... staging production qa staging production qa w/ kustomize

Slide 5

Slide 5 text

5 Common overlays ToB Service overlays Kubernetes Manifestの構成 staging production qa base ToC Service overlays staging production qa base PoC Service overlays staging production qa base Release w/ kustomize staging production qa base

Slide 6

Slide 6 text

6 Docker imageリリースの流れ abcdef123456 20210928 feature X main feature Y defabc123789 merge merge tag:20210928 Container Registry Build and push docker image (toBはもっと複雑なリリースフロー )

Slide 7

Slide 7 text

7 Kubernetes Manifestアップデートの流れ https://github.com/sakajunquality/flow Cloud Run Container Registry Pub/Sub Release staging production qa abcdef123456 20210928 Send PR to update Docker image version

Slide 8

Slide 8 text

8 Pull Requestのチェック branch X master kustomize diff kustomize validation pull request push

Slide 9

Slide 9 text

9 デプロイの流れ Release staging production qa staging production qa Deploy w/ kustomize mabl e2e test Auto merge Auto merge Manual merge Slack notification GKE

Slide 10

Slide 10 text

10 Thank you! ”テクノロジーで人々を適切な医療に案内する ” ためのサービスを一緒に開発してくれる仲間を募集しています!