我是使用Spinnaker和Halyard的新手。我正在遵循Google的指南。
安装大三角器时,他们使用helm
并连接在看起来像这样的spinnaker-config.yaml
文件上:
./helm install -n cd stable/spinnaker -f spinnaker-config.yaml --timeout 600
--version 1.1.6 --wait
spinnaker-config.yaml
:
export SA_JSON=$(cat spinnaker-sa.json)
export PROJECT=$(gcloud info --format='value(config.project)')
export BUCKET=$PROJECT-spinnaker-config
cat > spinnaker-config.yaml <<EOF
gcs:
enabled: true
bucket: $BUCKET
project: $PROJECT
jsonKey: '$SA_JSON'
dockerRegistries:
- name: gcr
address: https://gcr.io
username: _json_key
password: '$SA_JSON'
email: 1234@5678.com
# Disable minio as the default storage backend
minio:
enabled: false
# Configure Spinnaker to enable GCP services
halyard:
spinnakerVersion: 1.10.2
image:
tag: 1.12.0
additionalScripts:
create: true
data:
enable_gcs_artifacts.sh: |-
$HAL_COMMAND config artifact gcs account add gcs-$PROJECT --json-path /opt/gcs/key.json
$HAL_COMMAND config artifact gcs enable
enable_pubsub_triggers.sh: |-
$HAL_COMMAND config pubsub google enable
$HAL_COMMAND config pubsub google subscription add gcr-triggers
--subscription-name gcr-triggers
--json-path /opt/gcs/key.json
--project [project_guid]
--message-format GCR
EOF
我需要添加另一个与gcr-triggers
不同名称不同的pubsub
,并注意到我尝试添加管道中的任何内容都不会持续。我怀疑这是因为需要使用hal
添加它:
注意:我已经创建并验证了gcloud
subscriptions
和add-iam-policy-binding
。
hal config pubsub google subscription add [new_trigger]
--subscription-name [new_trigger]
--json-path /opt/gcs/key.json
--project $PROJECT
--message-format GCR
我怀疑像安装spinnaker
一样是非常规的(如果我错了,请纠正我)。我从未从运行kubectl
的主机运行hal
二进制文件,这在指南中没有必要。我可以看到Spinnaker的建筑有很多豆荚。我在其中戳了一下,没有看到hal
。
我的问题是:有了本指南,我应该如何对hal config
新事物?这样做的正常方式是什么?
头盔是与某些Linux发行版中APT类似的软件包管理器。因为这是在Kubernetes运行的微服务体系结构,您必须访问Halyard Pod(实际上应该是状态集)
- 获取Halyard Pod
export HALYARD=$(kubectl -n spinnaker get pod -l app=halyard -oname | cut -d'/' -f 2)
- 访问大三角帆名称空间
kubectl -n spinnaker exec -it ${HALYARD} /bin/bash
中的Halyard Pod - 通过运行命令
hal config
测试访问您应该获得Spinnaker的完整配置 - 应用更改后,您需要忘记使用
hal deploy apply