IK.AM

@making's tech note


HelmでSpinnakerをインストールするメモ

🗃 {Dev/CD/Spinnaker}
🏷 Spinnaker 🏷 Kubernetes 🏷 Helm 
🗓 Updated at 2019-02-11T14:08:11Z  🗓 Created at 2019-02-11T14:07:04Z   🌎 English Page

memo

Helmのセットアップ

cat <<EOF | kubectl apply -f -
apiVersion: v1
kind: ServiceAccount
metadata:
  name: tiller
  namespace: kube-system
---
apiVersion: rbac.authorization.k8s.io/v1beta1
kind: ClusterRoleBinding
metadata:
  name: tiller
roleRef:
  apiGroup: rbac.authorization.k8s.io
  kind: ClusterRole
  name: cluster-admin
subjects:
  - kind: ServiceAccount
    name: tiller
    namespace: kube-system
EOF
helm init --service-account tiller
helm upate

Spinnakerのインストール

kubectl create ns spinnaker

Docker RegistryのWebhook Triggerを使うときはRegistoryがホワイトリストので、 変更したい場合は次のような設定が必要。

cat <<EOF >> values.yml
accounts:
- address: https://index.docker.io
  name: dockerhub
  repositories:
  - making/hello-pks
dockerRegistries:
- name: dockerhub
  address: index.docker.io
  repositories:
    - making/hello-pks
EOF
helm install --name spinnaker stable/spinnaker --timeout 6000 --debug --namespace spinnaker -f values.yml

次のChartバージョンで試している。バージョンが違うと全然構成が違うので注意。

$ helm list
NAME     	REVISION	UPDATED                 	STATUS  	CHART          	APP VERSION	NAMESPACE
spinnaker	1       	Sun Feb 10 00:38:42 2019	DEPLOYED	spinnaker-1.6.1	1.11.6     	spinnaker

deckとgateのService TypeをLoadBalancerにしてアクセス可能にする。

kubectl patch -n spinnaker service spin-deck --type='json' -p='[{"op": "replace", "path": "/spec/type", "value": "LoadBalancer" }]'
kubectl patch -n spinnaker service spin-gate --type='json' -p='[{"op": "replace", "path": "/spec/type", "value": "LoadBalancer" }]'

http://<deckのLoadBalancerのIP>:9000でGUIにアクセスできる。 http://<gateのLoadBalancerのIP>:8084でAPIサーバーにアクセスできる。

GitHub Artifactを有効にする

halコマンドで設定変更する。halyard Pod内で操作すると楽。

kubectl exec -n spinnaker -it spinnaker-spinnaker-halyard-0 bash
hal config features edit --artifacts true
hal config artifact github enable
echo "GitHubのrepoスコープを持つアクセストークン" > /tmp/token_file
hal config artifact github account add $ARTIFACT_ACCOUNT_NAME --token-file /tmp/token_file
hal deploy apply

✒️️ Edit  ⏰ History  🗑 Delete