Spinnaker
Documentation
公式サイト: https://www.spinnaker.io/
Quickstart
参考:
Concepts
- Overview
- Application management
- :
- Application deployment
- Pipeline
- Stage
- Deployment strategies
- Application management
Guides
https://www.spinnaker.io/guides/
Kubernetes
https://www.spinnaker.io/guides/user/kubernetes-v2/
- Deploy Kubernetes Manifests
- Patch Kubernetes Manifests
- K8sのmanifestをpatch更新できる。
- 参考: Update API Objects in Place Using kubectl patch - Kubernetes
- Rollout Strategies
- ※ReplicaSetのみ有効 https://www.spinnaker.io/guides/user/kubernetes-v2/traffic-management/#you-must-use-replica-sets
- Red/Black Rollouts
参考:
Reference
https://www.spinnaker.io/reference/
Artifacts
https://www.spinnaker.io/reference/artifacts/
外部リソースを参照するオブジェクト。
例:
- Dockerイメージ
- GCSやS3内のバイナリ
Artifacts In Kubernetes (Manifest Based)
いくつかのリソースは vNNN
形式でSpinnaker内でバージョンが振られる。
Components
component | description |
---|---|
Clouddriver | クラウドインフラとのやりとりを司る |
Deck | Web UI |
Gate | API Gateway |
Orca | オーケストレーションエンジン |
参考:
Spec
Authentication / 認証
https://www.spinnaker.io/setup/security/authentication/
Google Cloud IAPによる認証
参考:
- https://www.spinnaker.io/reference/halyard/commands/#hal-config-security-authn-iap
- Spinnaker Authentication with Cloud IAP - Damian Myerscough - Medium
Authorization / 認可
- Setup: https://www.spinnaker.io/setup/security/authorization/
- Architecture: https://www.spinnaker.io/reference/architecture/authz_authn/authorization/
Automated Triggersによって起動するPipelineの場合、以下の2つの方法のいずれかで権限設定する:
- Service Accounts - Spinnaker
- Pipeline Permissions - Spinnaker … こっちは2020-01-08時点でまだαらしい
Service Account
削除
curl -X DELETE $FRONT50/serviceAccounts/{サービスアカウントID}
CIツール連携
- https://www.spinnaker.io/setup/ci/
- https://www.spinnaker.io/reference/halyard/commands/#hal-config-ci
2020-01-17現在、Concourse, Jenkins, Google Cloud Build, Travis CI, Werckerに対応しているようだ。
How-to
Kubernetesアカウントを追加する
参考:
ログレベルの変更
~/.hal/default/service/settings/${component}.yml
に以下の内容を記述:
env:
JAVA_OPTS: "-Dlogging.level.com.netflix.${コンポーネント名}=DEBUG"
参考:
- Fiat Service Account causes NPE if the Service Account is not a user in LDAP · Issue #3388 · spinnaker/spinnaker
- [SOLVED] How to change spinnaker’s services logging level? - Operations - Spinnaker
Topics
Spinnaker Rollout Strategies vs K8s Rolling Update
参考:
GCP (GKE)
Getting Started:
- https://github.com/GoogleCloudPlatform/spinnaker-for-gcp
- https://cloud.google.com/docs/ci-cd/spinnaker/spinnaker-for-gcp
Advanced:
参考:
Child Pages
Pipelines
パイプライン設定