11
マイクロサービスアーキテクチャ
Nodes
Microservice B
Namespace B
Microservice B Microservice B Microservice B
Microservice C
Namespace C
Microservice C Microservice C
Microservice A
Namespace A
Service A Team
Service B Team
Service C Team
RBAC
RBAC
RBAC
Slide 12
Slide 12 text
12
継続的デリバリー
Service A Team
Service B Team
Service C Team Service C Application
Service A Application
Service B Application
Trigger
Trigger
Trigger
Microservice A
Namespace A
Microservice B
Namespace B
Microservice C
Namespace C
Deploy
Deploy
Deploy
Slide 13
Slide 13 text
13
継続的デリバリー
Item
Item
Listing
DB
Team C
User
DB
Team E
Item
DB
Team B
Shipping
DB
Team D
Timeline
DB
Team A
Slide 14
Slide 14 text
14
02 Spinnakerによる継続的デリバリー
Slide 15
Slide 15 text
15
継続的デリバリー
Service A Team
Service B Team
Service C Team Service C Application
Service A Application
Service B Application
Trigger
Trigger
Trigger
Microservice A
Namespace A
Microservice B
Namespace B
Microservice C
Namespace C
Deploy
Deploy
Deploy
53
パイプラインのベストプラクティス
Microservice A
Team A
マイクロサービスアーキテクチャは各マイクロサービスが
自律的に開発サイクルを回していく
という理念に根
ざしている。
+
Slide 54
Slide 54 text
54
パイプラインのベストプラクティス
Item
Item
Listing
DB
Team C
User
DB
Team E
Item
DB
Team B
Shipping
DB
Team D
Timeline
DB
Team A
✅ カナリアデプロイ
✅ Red/Blackデプロイ
✅ Red/Blackデプロイ
❌ リリースフローに
沿わないデプロイ
❌ 雑なデプロイ
Slide 55
Slide 55 text
55
パイプラインのベストプラクティス
Item
Item
Listing
DB
Team C
User
DB
Team E
Item
DB
Team B
Shipping
DB
Team D
Timeline
DB
Team A
✅ カナリアデプロイ
✅ Red/Blackデプロイ
✅ Red/Blackデプロイ
❌ リリースフローに
沿わないデプロイ
❌ 雑なデプロイ
それぞれのマイクロサービスにデプロイ手法が委ねられていると
”デプロイの質” にも差が生じ、サービス全体の質へ影響する
Slide 56
Slide 56 text
56
パイプラインのベストプラクティス
Item
Item
Listing
DB
Team C
User
DB
Team E
Item
DB
Team B
Shipping
DB
Team D
Timeline
DB
Team A
✅ カナリアデプロイ
✅ Red/Blackデプロイ
✅ Red/Blackデプロイ
❌ リリースフローに
沿わないデプロイ
❌ 雑なデプロイ
それぞれのマイクロサービスにデプロイ手法が委ねられていると
”デプロイの質” にも差が生じ、サービス全体の質へ影響する
→ Spinnaker Manage Pipelineを使う
59
Service A Team
Service B Team
Service C Team
Configure
Configure
Configure
Managed Pipeline
Application A
Application B
Sync機能
Managed
Pipeline Template
Pipeline
Configurations
Pipeline
Configurations
Pipeline
Configurations
Spinnaker
Application C
Managed Pipeline
Managed Pipeline
Slide 60
Slide 60 text
60
Service A Team
Service B Team
Service C Team
Configure
Configure
Configure
Managed Pipeline
Application A
Application B
Sync機能
Managed
Pipeline Template
Pipeline
Configurations
Pipeline
Configurations
Pipeline
Configurations
Spinnaker
Application C
Managed Pipeline
Managed Pipeline
V2
Platform Team
デプロイ先を変更
Slide 61
Slide 61 text
61
Service A Team
Service B Team
Service C Team
Configure
Configure
Configure
Managed Pipeline
Application A
Application B
Sync機能
Managed
Pipeline Template
Pipeline
Configurations
Pipeline
Configurations
Pipeline
Configurations
Spinnaker
Application C
Managed Pipeline
Managed Pipeline
V2 V2
V2
V2
Platform Team
デプロイ先を変更
Slide 62
Slide 62 text
62
Service A Team
Service B Team
Service C Team
Configure
Configure
Configure
Managed Pipeline
Application A
Application B
Sync機能
Managed
Pipeline Template
Pipeline
Configurations
Pipeline
Configurations
Pipeline
Configurations
Spinnaker
Application C
Managed Pipeline
Managed Pipeline
Slide 63
Slide 63 text
63
Service A Team
Service B Team
Service C Team
Configure
Configure
Configure
Managed Pipeline
Application A
Application B
Sync機能
Managed
Pipeline Template
Pipeline
Configurations
Pipeline
Configurations
Pipeline
Configurations
Spinnaker
Application C
Managed Pipeline
Managed Pipeline
Platform Team
ベストプラクティスを追加
✅
Slide 64
Slide 64 text
64
Service A Team
Service B Team
Service C Team
Configure
Configure
Configure
Managed Pipeline
Application A
Application B
Sync機能
Managed
Pipeline Template
Pipeline
Configurations
Pipeline
Configurations
Pipeline
Configurations
Spinnaker
Application C
Managed Pipeline
Managed Pipeline
Platform Team
ベストプラクティスを追加
✅
✅
✅
✅