Argo Workflows 官网中有提供
快速部署
的案例,但并不能满足我们在实际生产中的需求,接下来将使用社区维护的
helm chart argo-workflows
进行相关部署。
1. minio 部署
1.1 下载 helm chart
helm repo add bitnami https://charts.bitnami.com/bitnami
helm pull bitnami/minio
tar xf minio-11.10.13.tgz && cd minio
1.2 修改 values.yaml
## 目前集群中只用一个 node 节点,MinIO server 模式选择 standlone
mode: standlone
## 设置控制台登录时的用户名和密码
auth:
rootUser: admin
rootPassword: "1qaz2wsx"
## 创建默认的存储桶
defaultBuckets: "argo-workflows"
## 进行持久化设置
provisioning:
enabled: true
storageClass: "nfs-client"
size: 100Gi
ingress:
enabled: true
apiVersion: "networking.k8s.io/v1"
ingressClassName: "nginx"
hostname: minio.local
## 监控指标获取与监控告警设置
metrics:
serviceMonitor:
enabled: true
namespace: "monitoring"
prometheusRule:
enabled: true
namespace: "monitoring"
1.3 安装
helm ungrade --install argo-artifacts . -n argo-workflows
2 postgresql 部署
2.1 下载 helm chart
helm repo add bitnami https://charts.bitnami.com/bitnami
helm search repo postgresql
helm pull bitnami/postgresql
tar xf postgresql-12.1.0.tgz && cd postgresql/
2.2 修改 values.yaml
global:
storageClass: "nfs-client"
postgresql:
auth:
postgresPassword: "1qaz2wsx"
username: "workflows"
password: "1qaz2wsx"
database: "workflows"
metrics:
enabled: true
serviceMonitor:
enabled: true
namespace: "monitoring"
2.3 安装
helm upgrade --install postgresql . -n argo-workflows
3 argo-workflows 部署
3.1 预准备
- 创建 secret 存放 postgresql 的 dmin password, username, password (for username),提供给 argo-workflow
kubectl create secret -n argo-workflows generic argo-workflows-postgresql \
--from-literal=username=workflows \
--from-literal=password=1qaz2wsx \
--from-literal=postgres-password=1qaz2wsx
- 创建 secret 存放 minio 的 accessKey 和 secretKey
kubectl create secret -n argo-workflows generic argo-workflows-minio \
--from-literal=accessKey=admin \
--from-literal=secretKey=1qaz2wsx
3.2 下载 helm chart
git clone https://github.com/argoproj/argo-helm.git
cd argo-helm/charts/argo-workflows/
git checkout argo-workflows-0.20.7
3.3 修改 values.yaml
controller:
persistence:
postgresql:
host: postgresql
port: 5432
database: workflows
tableName: workflows
userNameSecret:
name: argo-workflows-postgresql
key: username
passwordSecret:
name: argo-workflows-postgresql
key: password
serviceMonitor:
enabled: true
namespace: "monitoring"
artifactRepository:
s3:
accessKeySecret:
name: argo-workflows-minio
key: accesskey
secretKeySecret:
name: argo-workflows-minio
key: secretkey
bucket: argo-workflows
endpoint: argo-artifacts-minio:9000
1.3.4 安装
helm install argo-workflows . -n argo-workflows
版权声明:本文为cl18707602767原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。