文章目录
helm 部署spinnaker
helm 下载spinnaker包
helm fetch stable/spinnaker
修改helm包,使能在国内使用
vim templates/configmap/halyard-init-script.yaml
init.sh |
...
export http_proxy=http://10.129.60.214:8118
export HTTP_PROXY=http://10.129.60.214:8118
export HTTPS_PROXY=https://10.129.60.214:8118
export https_proxy=https://10.129.60.214:8118
export no_proxy="localhost,127.0.0.1,10.129.60.211:6443,10.129.60.212:6443,10.129.60.213:6443"
export NO_PROXY="localhost,127.0.0.1,10.129.60.211:6443,10.129.60.212:6443,10.129.60.213:6443"
spinnaker: |
export JAVA_OPTS='"-Dhttp.proxyHost=10.129.60.214" "-Dhttp.proxyPort=8118" "-Dhttps.proxyHost=10.129.60.214" "-Dhttps.proxyPort=8118"'
vim templates/statefulsets/halyard.yaml
volumes:
- name: default-spinnaker
configMap:
name: {{ template "spinnaker.fullname" . }}-halyard-init-script
volumeMounts:
- name: default-spinnaker
mountPath: /etc/default
volumeClaimTemplates:
- metadata:
...
{{- if .Values.halyard.persistence.storageClass }}
storageClassName: {{ .Values.halyard.persistence.storageClass }}
{{- end }}
...
启动helm包
helm install --name spinnaker --namespace spinnaker -f spinnaker ./
helm启动后执行的一个jobs,主要执行的内容如下,(了解)
export DAEMON_ENDPOINT=http://spinnaker-spinnaker-halyard:8064
export HAL_COMMAND="hal --daemon-endpoint $DAEMON_ENDPOINT"
until $HAL_COMMAND --ready; do sleep 10 ; done
# Spinnaker version
$HAL_COMMAND config version edit --version 1.12.5
# Storage
echo spinnakeradmin | $HAL_COMMAND config storage s3 edit --endpoint http://spinnaker-minio:9000 --access-key-id spinnakeradmin --secret-access-key --bucket spinnaker
$HAL_COMMAND config storage edit --type s3
# Docker Registry
$HAL_COMMAND config provider docker-registry enable
if $HAL_COMMAND config provider docker-registry account get dockerhub; then
PROVIDER_COMMAND='edit'
else
PROVIDER_COMMAND='add'
fi
CREDS=""
$HAL_COMMAND config provider docker-registry account add dockerhub --address index.docker.io \
--repositories library/alpine,library/ubuntu,library/centos,library/nginx
$HAL_COMMAND config provider kubernetes enable
if $HAL_COMMAND config provider kubernetes account get default; then
PROVIDER_COMMAND='edit'
else
PROVIDER_COMMAND='add'
fi
$HAL_COMMAND config provider kubernetes account add default --docker-registries dockerhub \
--context default --service-account true \
--omit-namespaces=kube-system,kube-public --provider-version v2
$HAL_COMMAND config deploy edit --account-name default --type distributed \
--location default
# Use Deck to route to Gate
$HAL_COMMAND config security api edit --no-validate --override-base-url /gate
$HAL_COMMAND config features edit --artifacts true
$HAL_COMMAND config features edit --jobs true
$HAL_COMMAND deploy apply
添加jenkins插件
hal config ci jenkins enable
echo xxxx | hal config ci jenkins master add my-jenkins-master --address http://xxxx:xxxx --username admin --password
hal config artifact github enable
echo xxxx | hal config artifact github account add my-github --username xxxx --password
修改镜像地址,为本地的镜像地址
查看需要使用的镜像以及版本
hal version bom 1.12.5
cat << EOF > docker-push.py
import os
with open("spinnaker-list.txt", 'r') as images:
abc=[]
for line in images.readlines():
name = line.strip().split('/')[-1]
tag='registry.cn-beijing.aliyuncs.com/glodon-common/'+name
line=line.split('\n')[0]
abc.append(tag)
print(tag)
os.system('docker pull %s' %line)
os.system('docker tag %s %s' %(line,tag))
os.system('docker push %s' %tag)
for i in abc:
print(i)
EOF
cat << EOF > spinnaker-list.txt
gcr.io/spinnaker-marketplace/echo:2.3.1-20190214121429
gcr.io/spinnaker-marketplace/clouddriver:4.3.5-20190307172446
gcr.io/spinnaker-marketplace/deck:2.7.5-20190308182538
gcr.io/spinnaker-marketplace/fiat:1.3.2-20190128153726
gcr.io/spinnaker-marketplace/front50:0.15.2-20190222161456
gcr.io/spinnaker-marketplace/gate:1.5.2-20190301030607
gcr.io/spinnaker-marketplace/igor:1.1.1-20190213190226
gcr.io/spinnaker-marketplace/kayenta:0.6.1-20190221030610
gcr.io/spinnaker-marketplace/orca:2.4.0-20190308182538
gcr.io/spinnaker-marketplace/rosco:0.9.0-20190123170846
gcr.io/kubernetes-spinnaker/redis-cluster:v2
EOF
删除之前去gcr.io拉去的镜像,重新部署spinnaker
hal deploy clean
修改对应的镜像地址
注意,这里的gate的地址,spin-gate.default,名称空间和地址要统一
cd /home/spinnaker/.hal/default/service-settings/
cat<< EOF >deck.yml
env:
API_HOST: http://spin-gate.spinnaker:8084
kubernetes:
useExecHealthCheck: false
serviceType: NodePort
artifactId: registry.cn-beijing.aliyuncs.com/glodon-common/deck:2.7.5-20190308182538
EOF
cat<< EOF >gate.yml
env:
API_HOST: http://spin-gate.spinnaker:8084
kubernetes:
useExecHealthCheck: false
serviceType: NodePort
artifactId: registry.cn-beijing.aliyuncs.com/glodon-common/gate:1.5.2-20190301030607
EOF
cat<< EOF >orca.yml
artifactId: registry.cn-beijing.aliyuncs.com/glodon-common/orca:2.4.0-20190308182538
EOF
cat<< EOF >igor.yml
artifactId: registry.cn-beijing.aliyuncs.com/glodon-common/igor:1.1.1-20190213190226
EOF
cat<< EOF >clouddriver.yml
artifactId: registry.cn-beijing.aliyuncs.com/glodon-common/clouddriver:4.3.5-20190307172446
EOF
cat<< EOF >front50.yml
artifactId: registry.cn-beijing.aliyuncs.com/glodon-common/front50:0.15.2-20190222161456
EOF
cat<< EOF >echo.yml
artifactId: registry.cn-beijing.aliyuncs.com/glodon-common/echo:2.3.1-20190214121429
EOF
cat<< EOF >rosco.yml
artifactId: registry.cn-beijing.aliyuncs.com/glodon-common/rosco:0.9.0-20190123170846
EOF
cat<< EOF >fiat.yml
artifactId: registry.cn-beijing.aliyuncs.com/glodon-common/fiat:1.3.2-20190128153726
EOF
cat<< EOF >kayenta.yml
artifactId: registry.cn-beijing.aliyuncs.com/glodon-common/kayenta:0.6.1-20190221030610
EOF
重新部署spinnaker
rm -rf /home/spinnaker/.hal/default/history
hal deploy apply
问题整理
1、Problems in Global:
! ERROR Failed check for Namespace/default in null
Unable to connect to the server: net/http: TLS handshake timeout
#添加http代理
export http_proxy=http://10.129.60.214:8118
export HTTP_PROXY=http://10.129.60.214:8118
export HTTPS_PROXY=https://10.129.60.214:8118
export https_proxy=https://10.129.60.214:8118
#指定那些不走代理,重点是这个
export no_proxy="localhost,127.0.0.1,10.129.60.211:6443,10.129.60.212:6443,10.129.60.213:6443,cn-beijing.aliyuncs.com"
export NO_PROXY="localhost,127.0.0.1,10.129.60.211:6443,10.129.60.212:6443,10.129.60.213:6443,registry.cn-beijing.aliyuncs.com"
#删除代理
unset no_proxy
unset NO_PROXY
unset https_proxy
unset http_proxy
unset HTTPS_PROXY
unset HTTP_PROXY