2227 lines
69 KiB
YAML
2227 lines
69 KiB
YAML
apiVersion: postgresql.cnpg.io/v1
|
|
kind: Cluster
|
|
metadata:
|
|
name: argo-workflows-postgresql-18-cluster
|
|
namespace: argo-workflows
|
|
labels:
|
|
helm.sh/chart: postgres-18-cluster-7.9.1
|
|
app.kubernetes.io/name: argo-workflows-postgresql-18
|
|
app.kubernetes.io/instance: argo-workflows
|
|
app.kubernetes.io/part-of: argo-workflows
|
|
app.kubernetes.io/version: "7.9.1"
|
|
app.kubernetes.io/managed-by: Helm
|
|
spec:
|
|
instances: 3
|
|
imageName: "ghcr.io/cloudnative-pg/postgresql:18.3-standard-trixie"
|
|
imagePullPolicy: IfNotPresent
|
|
postgresUID: 26
|
|
postgresGID: 26
|
|
storage:
|
|
size: 10Gi
|
|
storageClass: local-path
|
|
walStorage:
|
|
size: 2Gi
|
|
storageClass: local-path
|
|
resources:
|
|
limits:
|
|
hugepages-2Mi: 256Mi
|
|
requests:
|
|
cpu: 100m
|
|
memory: 256Mi
|
|
affinity:
|
|
enablePodAntiAffinity: true
|
|
topologyKey: kubernetes.io/hostname
|
|
primaryUpdateMethod: switchover
|
|
primaryUpdateStrategy: unsupervised
|
|
logLevel: info
|
|
enableSuperuserAccess: false
|
|
enablePDB: true
|
|
postgresql:
|
|
parameters:
|
|
hot_standby_feedback: "on"
|
|
max_slot_wal_keep_size: 2000MB
|
|
shared_buffers: 128MB
|
|
monitoring:
|
|
enablePodMonitor: true
|
|
disableDefaultQueries: false
|
|
plugins:
|
|
- name: barman-cloud.cloudnative-pg.io
|
|
enabled: true
|
|
isWALArchiver: true
|
|
parameters:
|
|
barmanObjectName: "argo-workflows-postgresql-18-backup-garage-local"
|
|
serverName: "argo-workflows-postgresql-18-backup-1"
|
|
bootstrap:
|
|
recovery:
|
|
database: app
|
|
source: argo-workflows-postgresql-18-backup-1
|
|
externalClusters:
|
|
- name: argo-workflows-postgresql-18-backup-1
|
|
plugin:
|
|
name: barman-cloud.cloudnative-pg.io
|
|
enabled: true
|
|
isWALArchiver: false
|
|
parameters:
|
|
barmanObjectName: "argo-workflows-postgresql-18-recovery"
|
|
serverName: argo-workflows-postgresql-18-backup-1
|
|
---
|
|
apiVersion: rbac.authorization.k8s.io/v1
|
|
kind: ClusterRole
|
|
metadata:
|
|
name: argo-events-webhook
|
|
labels:
|
|
helm.sh/chart: argo-events-2.4.20
|
|
app.kubernetes.io/name: argo-events-events-webhook
|
|
app.kubernetes.io/instance: argo-workflows
|
|
app.kubernetes.io/managed-by: Helm
|
|
app.kubernetes.io/part-of: argo-events
|
|
rules:
|
|
- apiGroups:
|
|
- ""
|
|
resources:
|
|
- secrets
|
|
verbs:
|
|
- get
|
|
- list
|
|
- create
|
|
- update
|
|
- delete
|
|
- patch
|
|
- watch
|
|
- apiGroups:
|
|
- ""
|
|
resources:
|
|
- configmaps
|
|
verbs:
|
|
- get
|
|
- list
|
|
- watch
|
|
- apiGroups:
|
|
- apps
|
|
resources:
|
|
- deployments
|
|
verbs:
|
|
- get
|
|
- list
|
|
- apiGroups:
|
|
- admissionregistration.k8s.io
|
|
resources:
|
|
- validatingwebhookconfigurations
|
|
verbs:
|
|
- get
|
|
- list
|
|
- create
|
|
- update
|
|
- delete
|
|
- patch
|
|
- watch
|
|
- apiGroups:
|
|
- argoproj.io
|
|
resources:
|
|
- eventbus
|
|
- eventsources
|
|
- sensors
|
|
verbs:
|
|
- get
|
|
- list
|
|
- watch
|
|
- apiGroups:
|
|
- rbac.authorization.k8s.io
|
|
resources:
|
|
- clusterroles
|
|
verbs:
|
|
- get
|
|
- list
|
|
---
|
|
apiVersion: rbac.authorization.k8s.io/v1
|
|
kind: ClusterRole
|
|
metadata:
|
|
name: argo-workflows-admin
|
|
labels:
|
|
helm.sh/chart: argo-workflows-1.0.2
|
|
app.kubernetes.io/name: argo-workflows-server
|
|
app.kubernetes.io/instance: argo-workflows
|
|
app.kubernetes.io/component: server
|
|
app: server
|
|
app.kubernetes.io/managed-by: Helm
|
|
app.kubernetes.io/part-of: argo-workflows
|
|
rbac.authorization.k8s.io/aggregate-to-admin: "true"
|
|
rules:
|
|
- apiGroups:
|
|
- argoproj.io
|
|
resources:
|
|
- workflows
|
|
- workflows/finalizers
|
|
- workfloweventbindings
|
|
- workfloweventbindings/finalizers
|
|
- workflowtemplates
|
|
- workflowtemplates/finalizers
|
|
- cronworkflows
|
|
- cronworkflows/finalizers
|
|
- clusterworkflowtemplates
|
|
- clusterworkflowtemplates/finalizers
|
|
- workflowtasksets
|
|
- workflowtasksets/finalizers
|
|
- workflowtaskresults
|
|
- workflowtaskresults/finalizers
|
|
- workflowartifactgctasks
|
|
- workflowartifactgctasks/finalizers
|
|
verbs:
|
|
- create
|
|
- delete
|
|
- deletecollection
|
|
- get
|
|
- list
|
|
- patch
|
|
- update
|
|
- watch
|
|
---
|
|
apiVersion: rbac.authorization.k8s.io/v1
|
|
kind: ClusterRole
|
|
metadata:
|
|
name: argo-workflows-argo-events-controller-manager
|
|
labels:
|
|
helm.sh/chart: argo-events-2.4.20
|
|
app.kubernetes.io/name: argo-events-controller-manager
|
|
app.kubernetes.io/instance: argo-workflows
|
|
app.kubernetes.io/component: controller-manager
|
|
app.kubernetes.io/managed-by: Helm
|
|
app.kubernetes.io/part-of: argo-events
|
|
rules:
|
|
- apiGroups:
|
|
- ""
|
|
resources:
|
|
- events
|
|
verbs:
|
|
- create
|
|
- patch
|
|
- apiGroups:
|
|
- coordination.k8s.io
|
|
resources:
|
|
- leases
|
|
verbs:
|
|
- get
|
|
- list
|
|
- watch
|
|
- create
|
|
- update
|
|
- patch
|
|
- delete
|
|
- apiGroups:
|
|
- argoproj.io
|
|
resources:
|
|
- sensors
|
|
- sensors/finalizers
|
|
- sensors/status
|
|
- eventsources
|
|
- eventsources/finalizers
|
|
- eventsources/status
|
|
- eventbus
|
|
- eventbus/finalizers
|
|
- eventbus/status
|
|
verbs:
|
|
- create
|
|
- delete
|
|
- deletecollection
|
|
- get
|
|
- list
|
|
- patch
|
|
- update
|
|
- watch
|
|
- apiGroups:
|
|
- ""
|
|
resources:
|
|
- pods
|
|
- pods/exec
|
|
- configmaps
|
|
- services
|
|
- persistentvolumeclaims
|
|
verbs:
|
|
- create
|
|
- get
|
|
- list
|
|
- watch
|
|
- update
|
|
- patch
|
|
- delete
|
|
- apiGroups:
|
|
- ""
|
|
resources:
|
|
- secrets
|
|
verbs:
|
|
- create
|
|
- get
|
|
- list
|
|
- update
|
|
- patch
|
|
- delete
|
|
- apiGroups:
|
|
- apps
|
|
resources:
|
|
- deployments
|
|
- statefulsets
|
|
verbs:
|
|
- create
|
|
- get
|
|
- list
|
|
- watch
|
|
- update
|
|
- patch
|
|
- delete
|
|
---
|
|
apiVersion: rbac.authorization.k8s.io/v1
|
|
kind: ClusterRole
|
|
metadata:
|
|
name: argo-workflows-crd-install
|
|
labels:
|
|
helm.sh/chart: argo-workflows-1.0.2
|
|
app.kubernetes.io/name: argo-workflows-crd-install
|
|
app.kubernetes.io/instance: argo-workflows
|
|
app.kubernetes.io/component: crds
|
|
app: crds
|
|
app.kubernetes.io/managed-by: Helm
|
|
app.kubernetes.io/part-of: argo-workflows
|
|
annotations:
|
|
"helm.sh/hook": pre-install,pre-upgrade
|
|
"helm.sh/hook-weight": "-10"
|
|
"helm.sh/hook-delete-policy": before-hook-creation,hook-succeeded
|
|
rules:
|
|
- apiGroups: ["apiextensions.k8s.io"]
|
|
resources: ["customresourcedefinitions"]
|
|
verbs: ["create", "get", "list", "patch", "update"]
|
|
---
|
|
apiVersion: rbac.authorization.k8s.io/v1
|
|
kind: ClusterRole
|
|
metadata:
|
|
name: argo-workflows-edit
|
|
labels:
|
|
helm.sh/chart: argo-workflows-1.0.2
|
|
app.kubernetes.io/name: argo-workflows-server
|
|
app.kubernetes.io/instance: argo-workflows
|
|
app.kubernetes.io/component: server
|
|
app: server
|
|
app.kubernetes.io/managed-by: Helm
|
|
app.kubernetes.io/part-of: argo-workflows
|
|
rbac.authorization.k8s.io/aggregate-to-edit: "true"
|
|
rules:
|
|
- apiGroups:
|
|
- argoproj.io
|
|
resources:
|
|
- workflows
|
|
- workflows/finalizers
|
|
- workfloweventbindings
|
|
- workfloweventbindings/finalizers
|
|
- workflowtemplates
|
|
- workflowtemplates/finalizers
|
|
- cronworkflows
|
|
- cronworkflows/finalizers
|
|
- clusterworkflowtemplates
|
|
- clusterworkflowtemplates/finalizers
|
|
- workflowtasksets
|
|
- workflowtasksets/finalizers
|
|
- workflowtaskresults
|
|
- workflowtaskresults/finalizers
|
|
- workflowartifactgctasks
|
|
- workflowartifactgctasks/finalizers
|
|
verbs:
|
|
- create
|
|
- delete
|
|
- deletecollection
|
|
- get
|
|
- list
|
|
- patch
|
|
- update
|
|
- watch
|
|
---
|
|
apiVersion: rbac.authorization.k8s.io/v1
|
|
kind: ClusterRole
|
|
metadata:
|
|
name: argo-workflows-server-cluster-template
|
|
labels:
|
|
helm.sh/chart: argo-workflows-1.0.2
|
|
app.kubernetes.io/name: argo-workflows-server
|
|
app.kubernetes.io/instance: argo-workflows
|
|
app.kubernetes.io/component: server
|
|
app: server
|
|
app.kubernetes.io/managed-by: Helm
|
|
app.kubernetes.io/part-of: argo-workflows
|
|
rules:
|
|
- apiGroups:
|
|
- argoproj.io
|
|
resources:
|
|
- clusterworkflowtemplates
|
|
verbs:
|
|
- get
|
|
- list
|
|
- watch
|
|
- create
|
|
- update
|
|
- patch
|
|
- delete
|
|
---
|
|
apiVersion: rbac.authorization.k8s.io/v1
|
|
kind: ClusterRole
|
|
metadata:
|
|
name: argo-workflows-server
|
|
labels:
|
|
helm.sh/chart: argo-workflows-1.0.2
|
|
app.kubernetes.io/name: argo-workflows-server
|
|
app.kubernetes.io/instance: argo-workflows
|
|
app.kubernetes.io/component: server
|
|
app: server
|
|
app.kubernetes.io/managed-by: Helm
|
|
app.kubernetes.io/part-of: argo-workflows
|
|
rules:
|
|
- apiGroups:
|
|
- ""
|
|
resources:
|
|
- configmaps
|
|
- events
|
|
verbs:
|
|
- get
|
|
- watch
|
|
- list
|
|
- apiGroups:
|
|
- ""
|
|
resources:
|
|
- pods
|
|
verbs:
|
|
- get
|
|
- list
|
|
- watch
|
|
- delete
|
|
- apiGroups:
|
|
- ""
|
|
resources:
|
|
- pods/log
|
|
verbs:
|
|
- get
|
|
- list
|
|
- apiGroups:
|
|
- ""
|
|
resources:
|
|
- secrets
|
|
resourceNames:
|
|
- sso
|
|
verbs:
|
|
- get
|
|
- apiGroups:
|
|
- ""
|
|
resources:
|
|
- secrets
|
|
verbs:
|
|
- create
|
|
- apiGroups:
|
|
- ""
|
|
resources:
|
|
- secrets
|
|
verbs:
|
|
- get
|
|
- apiGroups:
|
|
- ""
|
|
resources:
|
|
- events
|
|
verbs:
|
|
- watch
|
|
- create
|
|
- patch
|
|
- apiGroups:
|
|
- ""
|
|
resources:
|
|
- secrets
|
|
resourceNames:
|
|
- argo-workflows-postgresql-18-cluster-app
|
|
- argo-workflows-postgresql-18-cluster-app
|
|
verbs:
|
|
- get
|
|
- apiGroups:
|
|
- argoproj.io
|
|
resources:
|
|
- eventsources
|
|
- sensors
|
|
- workflows
|
|
- workfloweventbindings
|
|
- workflowtemplates
|
|
- cronworkflows
|
|
verbs:
|
|
- create
|
|
- get
|
|
- list
|
|
- watch
|
|
- update
|
|
- patch
|
|
- delete
|
|
---
|
|
apiVersion: rbac.authorization.k8s.io/v1
|
|
kind: ClusterRole
|
|
metadata:
|
|
name: argo-workflows-view
|
|
labels:
|
|
helm.sh/chart: argo-workflows-1.0.2
|
|
app.kubernetes.io/name: argo-workflows-workflow-controller
|
|
app.kubernetes.io/instance: argo-workflows
|
|
app.kubernetes.io/component: workflow-controller
|
|
app: workflow-controller
|
|
app.kubernetes.io/managed-by: Helm
|
|
app.kubernetes.io/part-of: argo-workflows
|
|
rbac.authorization.k8s.io/aggregate-to-view: "true"
|
|
rules:
|
|
- apiGroups:
|
|
- argoproj.io
|
|
resources:
|
|
- workflows
|
|
- workflows/finalizers
|
|
- workfloweventbindings
|
|
- workfloweventbindings/finalizers
|
|
- workflowtemplates
|
|
- workflowtemplates/finalizers
|
|
- cronworkflows
|
|
- cronworkflows/finalizers
|
|
- clusterworkflowtemplates
|
|
- clusterworkflowtemplates/finalizers
|
|
- workflowtasksets
|
|
- workflowtasksets/finalizers
|
|
- workflowtaskresults
|
|
- workflowtaskresults/finalizers
|
|
- workflowartifactgctasks
|
|
- workflowartifactgctasks/finalizers
|
|
verbs:
|
|
- get
|
|
- list
|
|
- watch
|
|
---
|
|
apiVersion: rbac.authorization.k8s.io/v1
|
|
kind: ClusterRole
|
|
metadata:
|
|
name: argo-workflows-workflow-controller-cluster-template
|
|
labels:
|
|
helm.sh/chart: argo-workflows-1.0.2
|
|
app.kubernetes.io/name: argo-workflows-workflow-controller
|
|
app.kubernetes.io/instance: argo-workflows
|
|
app.kubernetes.io/component: workflow-controller
|
|
app: workflow-controller
|
|
app.kubernetes.io/managed-by: Helm
|
|
app.kubernetes.io/part-of: argo-workflows
|
|
rules:
|
|
- apiGroups:
|
|
- argoproj.io
|
|
resources:
|
|
- clusterworkflowtemplates
|
|
- clusterworkflowtemplates/finalizers
|
|
verbs:
|
|
- get
|
|
- list
|
|
- watch
|
|
---
|
|
apiVersion: rbac.authorization.k8s.io/v1
|
|
kind: ClusterRole
|
|
metadata:
|
|
name: argo-workflows-workflow-controller
|
|
labels:
|
|
helm.sh/chart: argo-workflows-1.0.2
|
|
app.kubernetes.io/name: argo-workflows-workflow-controller
|
|
app.kubernetes.io/instance: argo-workflows
|
|
app.kubernetes.io/component: workflow-controller
|
|
app: workflow-controller
|
|
app.kubernetes.io/managed-by: Helm
|
|
app.kubernetes.io/part-of: argo-workflows
|
|
rules:
|
|
- apiGroups:
|
|
- ""
|
|
resources:
|
|
- pods
|
|
verbs:
|
|
- create
|
|
- get
|
|
- list
|
|
- watch
|
|
- update
|
|
- patch
|
|
- delete
|
|
- apiGroups:
|
|
- ""
|
|
resources:
|
|
- pods/exec
|
|
verbs:
|
|
- create
|
|
- apiGroups:
|
|
- ""
|
|
resources:
|
|
- configmaps
|
|
- namespaces
|
|
verbs:
|
|
- get
|
|
- watch
|
|
- list
|
|
- apiGroups:
|
|
- ""
|
|
resources:
|
|
- persistentvolumeclaims
|
|
- persistentvolumeclaims/finalizers
|
|
verbs:
|
|
- create
|
|
- update
|
|
- delete
|
|
- get
|
|
- apiGroups:
|
|
- argoproj.io
|
|
resources:
|
|
- workflows
|
|
- workflows/finalizers
|
|
- workflowtasksets
|
|
- workflowtasksets/finalizers
|
|
- workflowtasksets/status
|
|
- workflowartifactgctasks
|
|
verbs:
|
|
- get
|
|
- list
|
|
- watch
|
|
- update
|
|
- patch
|
|
- delete
|
|
- create
|
|
- apiGroups:
|
|
- argoproj.io
|
|
resources:
|
|
- workflowtemplates
|
|
- workflowtemplates/finalizers
|
|
verbs:
|
|
- get
|
|
- list
|
|
- watch
|
|
- apiGroups:
|
|
- argoproj.io
|
|
resources:
|
|
- workflowtaskresults
|
|
- workflowtaskresults/finalizers
|
|
verbs:
|
|
- list
|
|
- watch
|
|
- deletecollection
|
|
- apiGroups:
|
|
- argoproj.io
|
|
resources:
|
|
- cronworkflows
|
|
- cronworkflows/finalizers
|
|
verbs:
|
|
- get
|
|
- list
|
|
- watch
|
|
- update
|
|
- patch
|
|
- delete
|
|
- apiGroups:
|
|
- ""
|
|
resources:
|
|
- events
|
|
verbs:
|
|
- create
|
|
- patch
|
|
- apiGroups:
|
|
- ""
|
|
resources:
|
|
- serviceaccounts
|
|
verbs:
|
|
- get
|
|
- list
|
|
- apiGroups:
|
|
- "policy"
|
|
resources:
|
|
- poddisruptionbudgets
|
|
verbs:
|
|
- create
|
|
- get
|
|
- delete
|
|
- apiGroups:
|
|
- ""
|
|
resources:
|
|
- secrets
|
|
resourceNames:
|
|
- argo-workflows-postgresql-18-cluster-app
|
|
- argo-workflows-postgresql-18-cluster-app
|
|
verbs:
|
|
- get
|
|
- apiGroups:
|
|
- coordination.k8s.io
|
|
resources:
|
|
- leases
|
|
verbs:
|
|
- create
|
|
- apiGroups:
|
|
- coordination.k8s.io
|
|
resources:
|
|
- leases
|
|
resourceNames:
|
|
- workflow-controller
|
|
- workflow-controller-lease
|
|
verbs:
|
|
- get
|
|
- watch
|
|
- update
|
|
- patch
|
|
- delete
|
|
- apiGroups:
|
|
- ""
|
|
resources:
|
|
- secrets
|
|
verbs:
|
|
- get
|
|
resourceNames:
|
|
- argo-workflows-agent-ca-certificates
|
|
---
|
|
apiVersion: rbac.authorization.k8s.io/v1
|
|
kind: ClusterRoleBinding
|
|
metadata:
|
|
name: argo-workflows-argo-events-controller-manager
|
|
labels:
|
|
helm.sh/chart: argo-events-2.4.20
|
|
app.kubernetes.io/name: argo-events-controller-manager
|
|
app.kubernetes.io/instance: argo-workflows
|
|
app.kubernetes.io/component: controller-manager
|
|
app.kubernetes.io/managed-by: Helm
|
|
app.kubernetes.io/part-of: argo-events
|
|
roleRef:
|
|
apiGroup: rbac.authorization.k8s.io
|
|
kind: ClusterRole
|
|
name: argo-workflows-argo-events-controller-manager
|
|
subjects:
|
|
- kind: ServiceAccount
|
|
name: argo-workflows-argo-events-controller-manager
|
|
namespace: "argo-workflows"
|
|
---
|
|
apiVersion: rbac.authorization.k8s.io/v1
|
|
kind: ClusterRoleBinding
|
|
metadata:
|
|
name: argo-workflows-argo-events-events-webhook
|
|
labels:
|
|
helm.sh/chart: argo-events-2.4.20
|
|
app.kubernetes.io/name: argo-events-events-webhook
|
|
app.kubernetes.io/instance: argo-workflows
|
|
app.kubernetes.io/managed-by: Helm
|
|
app.kubernetes.io/part-of: argo-events
|
|
roleRef:
|
|
apiGroup: rbac.authorization.k8s.io
|
|
kind: ClusterRole
|
|
name: argo-events-webhook
|
|
subjects:
|
|
- kind: ServiceAccount
|
|
name: argo-workflows-argo-events-events-webhook
|
|
namespace: "argo-workflows"
|
|
---
|
|
apiVersion: rbac.authorization.k8s.io/v1
|
|
kind: ClusterRoleBinding
|
|
metadata:
|
|
name: argo-workflows-crd-install
|
|
labels:
|
|
helm.sh/chart: argo-workflows-1.0.2
|
|
app.kubernetes.io/name: argo-workflows-crd-install
|
|
app.kubernetes.io/instance: argo-workflows
|
|
app.kubernetes.io/component: crds
|
|
app: crds
|
|
app.kubernetes.io/managed-by: Helm
|
|
app.kubernetes.io/part-of: argo-workflows
|
|
annotations:
|
|
"helm.sh/hook": pre-install,pre-upgrade
|
|
"helm.sh/hook-weight": "-10"
|
|
"helm.sh/hook-delete-policy": before-hook-creation,hook-succeeded
|
|
subjects:
|
|
- kind: ServiceAccount
|
|
name: argo-workflows-crd-install
|
|
namespace: argo-workflows
|
|
roleRef:
|
|
apiGroup: rbac.authorization.k8s.io
|
|
kind: ClusterRole
|
|
name: argo-workflows-crd-install
|
|
---
|
|
apiVersion: rbac.authorization.k8s.io/v1
|
|
kind: ClusterRoleBinding
|
|
metadata:
|
|
name: argo-workflows-server-cluster-template
|
|
labels:
|
|
helm.sh/chart: argo-workflows-1.0.2
|
|
app.kubernetes.io/name: argo-workflows-server
|
|
app.kubernetes.io/instance: argo-workflows
|
|
app.kubernetes.io/component: server
|
|
app: server
|
|
app.kubernetes.io/managed-by: Helm
|
|
app.kubernetes.io/part-of: argo-workflows
|
|
roleRef:
|
|
apiGroup: rbac.authorization.k8s.io
|
|
kind: ClusterRole
|
|
name: argo-workflows-server-cluster-template
|
|
subjects:
|
|
- kind: ServiceAccount
|
|
name: argo-workflows-server
|
|
namespace: "argo-workflows"
|
|
---
|
|
apiVersion: rbac.authorization.k8s.io/v1
|
|
kind: ClusterRoleBinding
|
|
metadata:
|
|
name: argo-workflows-server
|
|
labels:
|
|
helm.sh/chart: argo-workflows-1.0.2
|
|
app.kubernetes.io/name: argo-workflows-server
|
|
app.kubernetes.io/instance: argo-workflows
|
|
app.kubernetes.io/component: server
|
|
app: server
|
|
app.kubernetes.io/managed-by: Helm
|
|
app.kubernetes.io/part-of: argo-workflows
|
|
roleRef:
|
|
apiGroup: rbac.authorization.k8s.io
|
|
kind: ClusterRole
|
|
name: argo-workflows-server
|
|
subjects:
|
|
- kind: ServiceAccount
|
|
name: argo-workflows-server
|
|
namespace: "argo-workflows"
|
|
---
|
|
apiVersion: rbac.authorization.k8s.io/v1
|
|
kind: ClusterRoleBinding
|
|
metadata:
|
|
name: argo-workflows-workflow-controller-cluster-template
|
|
labels:
|
|
helm.sh/chart: argo-workflows-1.0.2
|
|
app.kubernetes.io/name: argo-workflows-workflow-controller
|
|
app.kubernetes.io/instance: argo-workflows
|
|
app.kubernetes.io/component: workflow-controller
|
|
app: workflow-controller
|
|
app.kubernetes.io/managed-by: Helm
|
|
app.kubernetes.io/part-of: argo-workflows
|
|
roleRef:
|
|
apiGroup: rbac.authorization.k8s.io
|
|
kind: ClusterRole
|
|
name: argo-workflows-workflow-controller-cluster-template
|
|
subjects:
|
|
- kind: ServiceAccount
|
|
name: argo-workflows-workflow-controller
|
|
namespace: "argo-workflows"
|
|
---
|
|
apiVersion: rbac.authorization.k8s.io/v1
|
|
kind: ClusterRoleBinding
|
|
metadata:
|
|
name: argo-workflows-workflow-controller
|
|
labels:
|
|
helm.sh/chart: argo-workflows-1.0.2
|
|
app.kubernetes.io/name: argo-workflows-workflow-controller
|
|
app.kubernetes.io/instance: argo-workflows
|
|
app.kubernetes.io/component: workflow-controller
|
|
app: workflow-controller
|
|
app.kubernetes.io/managed-by: Helm
|
|
app.kubernetes.io/part-of: argo-workflows
|
|
roleRef:
|
|
apiGroup: rbac.authorization.k8s.io
|
|
kind: ClusterRole
|
|
name: argo-workflows-workflow-controller
|
|
subjects:
|
|
- kind: ServiceAccount
|
|
name: argo-workflows-workflow-controller
|
|
namespace: "argo-workflows"
|
|
---
|
|
apiVersion: v1
|
|
kind: ConfigMap
|
|
metadata:
|
|
name: argo-workflows-argo-events-controller-manager
|
|
namespace: "argo-workflows"
|
|
labels:
|
|
helm.sh/chart: argo-events-2.4.20
|
|
app.kubernetes.io/name: argo-events-controller-manager
|
|
app.kubernetes.io/instance: argo-workflows
|
|
app.kubernetes.io/managed-by: Helm
|
|
app.kubernetes.io/part-of: argo-events
|
|
data:
|
|
controller-config.yaml: |
|
|
eventBus:
|
|
nats:
|
|
versions:
|
|
- version: latest
|
|
natsStreamingImage: nats-streaming:latest
|
|
metricsExporterImage: natsio/prometheus-nats-exporter:latest
|
|
- version: 0.22.1
|
|
natsStreamingImage: nats-streaming:0.22.1
|
|
metricsExporterImage: natsio/prometheus-nats-exporter:0.8.0
|
|
jetstream:
|
|
# Default JetStream settings, could be overridden by EventBus JetStream specs
|
|
settings: |
|
|
# https://docs.nats.io/running-a-nats-service/configuration#jetstream
|
|
# Only configure "max_memory_store" or "max_file_store", do not set "store_dir" as it has been hardcoded.
|
|
max_memory_store: -1
|
|
max_file_store: -1
|
|
# The default properties of the streams to be created in this JetStream service
|
|
streamConfig: |
|
|
maxMsgs: 1e+06
|
|
maxAge: 72h
|
|
maxBytes: 1GB
|
|
replicas: 3
|
|
duplicates: 300s
|
|
retention: 0
|
|
discard: 0
|
|
versions:
|
|
- version: latest
|
|
natsImage: nats:2.10.10
|
|
metricsExporterImage: natsio/prometheus-nats-exporter:0.14.0
|
|
configReloaderImage: natsio/nats-server-config-reloader:0.14.0
|
|
startCommand: /nats-server
|
|
- version: 2.8.1
|
|
natsImage: nats:2.8.1
|
|
metricsExporterImage: natsio/prometheus-nats-exporter:0.9.1
|
|
configReloaderImage: natsio/nats-server-config-reloader:0.7.0
|
|
startCommand: /nats-server
|
|
- version: 2.8.1-alpine
|
|
natsImage: nats:2.8.1-alpine
|
|
metricsExporterImage: natsio/prometheus-nats-exporter:0.9.1
|
|
configReloaderImage: natsio/nats-server-config-reloader:0.7.0
|
|
startCommand: nats-server
|
|
- version: 2.8.2
|
|
natsImage: nats:2.8.2
|
|
metricsExporterImage: natsio/prometheus-nats-exporter:0.9.1
|
|
configReloaderImage: natsio/nats-server-config-reloader:0.7.0
|
|
startCommand: /nats-server
|
|
- version: 2.8.2-alpine
|
|
natsImage: nats:2.8.2-alpine
|
|
metricsExporterImage: natsio/prometheus-nats-exporter:0.9.1
|
|
configReloaderImage: natsio/nats-server-config-reloader:0.7.0
|
|
startCommand: nats-server
|
|
- version: 2.9.1
|
|
natsImage: nats:2.9.1
|
|
metricsExporterImage: natsio/prometheus-nats-exporter:0.9.1
|
|
configReloaderImage: natsio/nats-server-config-reloader:0.7.0
|
|
startCommand: /nats-server
|
|
- version: 2.9.12
|
|
natsImage: nats:2.9.12
|
|
metricsExporterImage: natsio/prometheus-nats-exporter:0.9.1
|
|
configReloaderImage: natsio/nats-server-config-reloader:0.7.0
|
|
startCommand: /nats-server
|
|
- version: 2.9.16
|
|
natsImage: nats:2.9.16
|
|
metricsExporterImage: natsio/prometheus-nats-exporter:0.9.1
|
|
configReloaderImage: natsio/nats-server-config-reloader:0.7.0
|
|
startCommand: /nats-server
|
|
- version: 2.10.10
|
|
natsImage: nats:2.10.10
|
|
metricsExporterImage: natsio/prometheus-nats-exporter:0.14.0
|
|
configReloaderImage: natsio/nats-server-config-reloader:0.14.0
|
|
startCommand: /nats-server
|
|
---
|
|
apiVersion: v1
|
|
kind: ConfigMap
|
|
metadata:
|
|
name: argo-workflows-workflow-controller-configmap
|
|
namespace: "argo-workflows"
|
|
labels:
|
|
helm.sh/chart: argo-workflows-1.0.2
|
|
app.kubernetes.io/name: argo-workflows-cm
|
|
app.kubernetes.io/instance: argo-workflows
|
|
app.kubernetes.io/component: workflow-controller
|
|
app: workflow-controller
|
|
app.kubernetes.io/managed-by: Helm
|
|
app.kubernetes.io/part-of: argo-workflows
|
|
data:
|
|
config: |
|
|
metricsConfig:
|
|
enabled: true
|
|
path: /metrics
|
|
port: 9090
|
|
ignoreErrors: false
|
|
secure: false
|
|
persistence:
|
|
archive: true
|
|
connectionPool:
|
|
maxIdleConns: 100
|
|
maxOpenConns: 0
|
|
nodeStatusOffLoad: true
|
|
postgresql:
|
|
database: app
|
|
host: argo-workflows-postgresql-18-cluster-rw
|
|
passwordSecret:
|
|
key: password
|
|
name: argo-workflows-postgresql-18-cluster-app
|
|
port: 5432
|
|
ssl: false
|
|
sslMode: disable
|
|
tableName: app
|
|
userNameSecret:
|
|
key: username
|
|
name: argo-workflows-postgresql-18-cluster-app
|
|
sso:
|
|
issuer: https://authentik.alexlebens.net/application/o/argo-workflows/
|
|
clientId:
|
|
name: argo-workflows-oidc-secret
|
|
key: client
|
|
clientSecret:
|
|
name: argo-workflows-oidc-secret
|
|
key: secret
|
|
redirectUrl: "https://argo-workflows.alexlebens.net/oauth2/callback"
|
|
rbac:
|
|
enabled: false
|
|
scopes:
|
|
- openid
|
|
- email
|
|
- profile
|
|
nodeEvents:
|
|
enabled: true
|
|
workflowEvents:
|
|
enabled: true
|
|
---
|
|
apiVersion: apiextensions.k8s.io/v1
|
|
kind: CustomResourceDefinition
|
|
metadata:
|
|
name: eventbus.argoproj.io
|
|
annotations:
|
|
"helm.sh/resource-policy": keep
|
|
spec:
|
|
group: argoproj.io
|
|
names:
|
|
kind: EventBus
|
|
listKind: EventBusList
|
|
plural: eventbus
|
|
shortNames:
|
|
- eb
|
|
singular: eventbus
|
|
scope: Namespaced
|
|
versions:
|
|
- name: v1alpha1
|
|
schema:
|
|
openAPIV3Schema:
|
|
properties:
|
|
apiVersion:
|
|
type: string
|
|
kind:
|
|
type: string
|
|
metadata:
|
|
type: object
|
|
spec:
|
|
type: object
|
|
x-kubernetes-preserve-unknown-fields: true
|
|
status:
|
|
type: object
|
|
x-kubernetes-preserve-unknown-fields: true
|
|
required:
|
|
- metadata
|
|
- spec
|
|
type: object
|
|
served: true
|
|
storage: true
|
|
subresources:
|
|
status: {}
|
|
---
|
|
apiVersion: apiextensions.k8s.io/v1
|
|
kind: CustomResourceDefinition
|
|
metadata:
|
|
name: eventsources.argoproj.io
|
|
annotations:
|
|
"helm.sh/resource-policy": keep
|
|
spec:
|
|
group: argoproj.io
|
|
names:
|
|
kind: EventSource
|
|
listKind: EventSourceList
|
|
plural: eventsources
|
|
shortNames:
|
|
- es
|
|
singular: eventsource
|
|
scope: Namespaced
|
|
versions:
|
|
- name: v1alpha1
|
|
schema:
|
|
openAPIV3Schema:
|
|
properties:
|
|
apiVersion:
|
|
type: string
|
|
kind:
|
|
type: string
|
|
metadata:
|
|
type: object
|
|
spec:
|
|
type: object
|
|
x-kubernetes-preserve-unknown-fields: true
|
|
status:
|
|
type: object
|
|
x-kubernetes-preserve-unknown-fields: true
|
|
required:
|
|
- metadata
|
|
- spec
|
|
type: object
|
|
served: true
|
|
storage: true
|
|
subresources:
|
|
status: {}
|
|
---
|
|
apiVersion: apiextensions.k8s.io/v1
|
|
kind: CustomResourceDefinition
|
|
metadata:
|
|
name: sensors.argoproj.io
|
|
annotations:
|
|
"helm.sh/resource-policy": keep
|
|
spec:
|
|
group: argoproj.io
|
|
names:
|
|
kind: Sensor
|
|
listKind: SensorList
|
|
plural: sensors
|
|
shortNames:
|
|
- sn
|
|
singular: sensor
|
|
scope: Namespaced
|
|
versions:
|
|
- name: v1alpha1
|
|
schema:
|
|
openAPIV3Schema:
|
|
properties:
|
|
apiVersion:
|
|
type: string
|
|
kind:
|
|
type: string
|
|
metadata:
|
|
type: object
|
|
spec:
|
|
type: object
|
|
x-kubernetes-preserve-unknown-fields: true
|
|
status:
|
|
type: object
|
|
x-kubernetes-preserve-unknown-fields: true
|
|
required:
|
|
- metadata
|
|
- spec
|
|
type: object
|
|
served: true
|
|
storage: true
|
|
subresources:
|
|
status: {}
|
|
---
|
|
apiVersion: apps/v1
|
|
kind: Deployment
|
|
metadata:
|
|
name: argo-workflows-argo-events-controller-manager
|
|
namespace: "argo-workflows"
|
|
labels:
|
|
helm.sh/chart: argo-events-2.4.20
|
|
app.kubernetes.io/name: argo-events-controller-manager
|
|
app.kubernetes.io/instance: argo-workflows
|
|
app.kubernetes.io/component: controller-manager
|
|
app.kubernetes.io/managed-by: Helm
|
|
app.kubernetes.io/part-of: argo-events
|
|
app.kubernetes.io/version: "v1.9.10"
|
|
spec:
|
|
selector:
|
|
matchLabels:
|
|
app.kubernetes.io/name: argo-events-controller-manager
|
|
app.kubernetes.io/instance: argo-workflows
|
|
revisionHistoryLimit: 5
|
|
replicas: 1
|
|
template:
|
|
metadata:
|
|
annotations:
|
|
checksum/config: 24732be38752faf20ed2282b13be0303398dc62ae15f3a9522d809bbd81e729a
|
|
labels:
|
|
helm.sh/chart: argo-events-2.4.20
|
|
app.kubernetes.io/name: argo-events-controller-manager
|
|
app.kubernetes.io/instance: argo-workflows
|
|
app.kubernetes.io/component: controller-manager
|
|
app.kubernetes.io/managed-by: Helm
|
|
app.kubernetes.io/part-of: argo-events
|
|
app.kubernetes.io/version: "v1.9.10"
|
|
spec:
|
|
containers:
|
|
- name: controller-manager
|
|
image: quay.io/argoproj/argo-events:v1.9.10
|
|
imagePullPolicy: IfNotPresent
|
|
args:
|
|
- controller
|
|
env:
|
|
- name: ARGO_EVENTS_IMAGE
|
|
value: quay.io/argoproj/argo-events:v1.9.10
|
|
- name: NAMESPACE
|
|
valueFrom:
|
|
fieldRef:
|
|
fieldPath: metadata.namespace
|
|
volumeMounts:
|
|
- name: config
|
|
mountPath: /etc/argo-events
|
|
ports:
|
|
- name: metrics
|
|
containerPort: 7777
|
|
protocol: TCP
|
|
- name: probe
|
|
containerPort: 8081
|
|
protocol: TCP
|
|
livenessProbe:
|
|
httpGet:
|
|
port: probe
|
|
path: /healthz
|
|
initialDelaySeconds: 10
|
|
periodSeconds: 10
|
|
timeoutSeconds: 1
|
|
successThreshold: 1
|
|
failureThreshold: 3
|
|
readinessProbe:
|
|
httpGet:
|
|
port: probe
|
|
path: /readyz
|
|
initialDelaySeconds: 10
|
|
periodSeconds: 10
|
|
timeoutSeconds: 1
|
|
successThreshold: 1
|
|
failureThreshold: 3
|
|
resources:
|
|
requests:
|
|
cpu: 10m
|
|
memory: 128Mi
|
|
serviceAccountName: argo-workflows-argo-events-controller-manager
|
|
volumes:
|
|
- name: config
|
|
configMap:
|
|
name: argo-workflows-argo-events-controller-manager
|
|
---
|
|
apiVersion: apps/v1
|
|
kind: Deployment
|
|
metadata:
|
|
name: argo-workflows-server
|
|
namespace: "argo-workflows"
|
|
labels:
|
|
helm.sh/chart: argo-workflows-1.0.2
|
|
app.kubernetes.io/name: argo-workflows-server
|
|
app.kubernetes.io/instance: argo-workflows
|
|
app.kubernetes.io/component: server
|
|
app: server
|
|
app.kubernetes.io/managed-by: Helm
|
|
app.kubernetes.io/part-of: argo-workflows
|
|
app.kubernetes.io/version: "v4.0.2"
|
|
spec:
|
|
replicas: 1
|
|
revisionHistoryLimit: 10
|
|
selector:
|
|
matchLabels:
|
|
app.kubernetes.io/name: argo-workflows-server
|
|
app.kubernetes.io/instance: argo-workflows
|
|
template:
|
|
metadata:
|
|
labels:
|
|
helm.sh/chart: argo-workflows-1.0.2
|
|
app.kubernetes.io/name: argo-workflows-server
|
|
app.kubernetes.io/instance: argo-workflows
|
|
app.kubernetes.io/component: server
|
|
app: server
|
|
app.kubernetes.io/managed-by: Helm
|
|
app.kubernetes.io/part-of: argo-workflows
|
|
app.kubernetes.io/version: "v4.0.2"
|
|
annotations:
|
|
checksum/cm: db4ab0f942dba3d65db57efee732f4130b7911f0d27012328c0ba0579407969f
|
|
spec:
|
|
serviceAccountName: argo-workflows-server
|
|
containers:
|
|
- name: argo-server
|
|
image: "quay.io/argoproj/argocli:v4.0.2"
|
|
imagePullPolicy: Always
|
|
securityContext:
|
|
allowPrivilegeEscalation: false
|
|
capabilities:
|
|
drop:
|
|
- ALL
|
|
readOnlyRootFilesystem: false
|
|
runAsNonRoot: true
|
|
args:
|
|
- server
|
|
- --configmap=argo-workflows-workflow-controller-configmap
|
|
- "--auth-mode=sso"
|
|
- "--secure=false"
|
|
- "--loglevel"
|
|
- "info"
|
|
- "--gloglevel"
|
|
- "0"
|
|
- "--log-format"
|
|
- "text"
|
|
ports:
|
|
- name: web
|
|
containerPort: 2746
|
|
readinessProbe:
|
|
httpGet:
|
|
path: /
|
|
port: 2746
|
|
scheme: HTTP
|
|
initialDelaySeconds: 10
|
|
periodSeconds: 20
|
|
env:
|
|
- name: IN_CLUSTER
|
|
value: "true"
|
|
- name: ARGO_NAMESPACE
|
|
valueFrom:
|
|
fieldRef:
|
|
apiVersion: v1
|
|
fieldPath: metadata.namespace
|
|
- name: ARGO_BASE_HREF
|
|
value: "/"
|
|
resources: {}
|
|
volumeMounts:
|
|
- name: tmp
|
|
mountPath: /tmp
|
|
terminationGracePeriodSeconds: 30
|
|
volumes:
|
|
- name: tmp
|
|
emptyDir: {}
|
|
nodeSelector:
|
|
kubernetes.io/os: linux
|
|
---
|
|
apiVersion: apps/v1
|
|
kind: Deployment
|
|
metadata:
|
|
name: argo-workflows-workflow-controller
|
|
namespace: "argo-workflows"
|
|
labels:
|
|
helm.sh/chart: argo-workflows-1.0.2
|
|
app.kubernetes.io/name: argo-workflows-workflow-controller
|
|
app.kubernetes.io/instance: argo-workflows
|
|
app.kubernetes.io/component: workflow-controller
|
|
app: workflow-controller
|
|
app.kubernetes.io/managed-by: Helm
|
|
app.kubernetes.io/part-of: argo-workflows
|
|
app.kubernetes.io/version: "v4.0.2"
|
|
spec:
|
|
replicas: 1
|
|
revisionHistoryLimit: 10
|
|
selector:
|
|
matchLabels:
|
|
app.kubernetes.io/name: argo-workflows-workflow-controller
|
|
app.kubernetes.io/instance: argo-workflows
|
|
template:
|
|
metadata:
|
|
labels:
|
|
helm.sh/chart: argo-workflows-1.0.2
|
|
app.kubernetes.io/name: argo-workflows-workflow-controller
|
|
app.kubernetes.io/instance: argo-workflows
|
|
app.kubernetes.io/component: workflow-controller
|
|
app: workflow-controller
|
|
app.kubernetes.io/managed-by: Helm
|
|
app.kubernetes.io/part-of: argo-workflows
|
|
app.kubernetes.io/version: "v4.0.2"
|
|
spec:
|
|
serviceAccountName: argo-workflows-workflow-controller
|
|
containers:
|
|
- name: controller
|
|
image: "quay.io/argoproj/workflow-controller:v4.0.2"
|
|
imagePullPolicy: Always
|
|
command: ["workflow-controller"]
|
|
args:
|
|
- "--configmap"
|
|
- "argo-workflows-workflow-controller-configmap"
|
|
- "--executor-image"
|
|
- "quay.io/argoproj/argoexec:v4.0.2"
|
|
- "--loglevel"
|
|
- "info"
|
|
- "--gloglevel"
|
|
- "0"
|
|
- "--log-format"
|
|
- "text"
|
|
- "--workflow-workers"
|
|
- "2"
|
|
- "--workflow-ttl-workers"
|
|
- "1"
|
|
- "--pod-cleanup-workers"
|
|
- "1"
|
|
- "--cron-workflow-workers"
|
|
- "1"
|
|
securityContext:
|
|
allowPrivilegeEscalation: false
|
|
capabilities:
|
|
drop:
|
|
- ALL
|
|
readOnlyRootFilesystem: true
|
|
runAsNonRoot: true
|
|
env:
|
|
- name: ARGO_NAMESPACE
|
|
valueFrom:
|
|
fieldRef:
|
|
apiVersion: v1
|
|
fieldPath: metadata.namespace
|
|
- name: LEADER_ELECTION_IDENTITY
|
|
valueFrom:
|
|
fieldRef:
|
|
apiVersion: v1
|
|
fieldPath: metadata.name
|
|
- name: LEADER_ELECTION_DISABLE
|
|
value: "true"
|
|
resources:
|
|
requests:
|
|
cpu: 10m
|
|
memory: 128Mi
|
|
ports:
|
|
- name: metrics
|
|
containerPort: 9090
|
|
- containerPort: 6060
|
|
livenessProbe:
|
|
failureThreshold: 3
|
|
httpGet:
|
|
path: /healthz
|
|
port: 6060
|
|
initialDelaySeconds: 90
|
|
periodSeconds: 60
|
|
timeoutSeconds: 30
|
|
nodeSelector:
|
|
kubernetes.io/os: linux
|
|
---
|
|
apiVersion: apps/v1
|
|
kind: Deployment
|
|
metadata:
|
|
name: events-webhook
|
|
namespace: "argo-workflows"
|
|
labels:
|
|
helm.sh/chart: argo-events-2.4.20
|
|
app.kubernetes.io/name: argo-events-events-webhook
|
|
app.kubernetes.io/instance: argo-workflows
|
|
app.kubernetes.io/component: events-webhook
|
|
app.kubernetes.io/managed-by: Helm
|
|
app.kubernetes.io/part-of: argo-events
|
|
app.kubernetes.io/version: "v1.9.10"
|
|
spec:
|
|
selector:
|
|
matchLabels:
|
|
app.kubernetes.io/name: argo-events-events-webhook
|
|
app.kubernetes.io/instance: argo-workflows
|
|
revisionHistoryLimit: 5
|
|
replicas: 1
|
|
template:
|
|
metadata:
|
|
labels:
|
|
helm.sh/chart: argo-events-2.4.20
|
|
app.kubernetes.io/name: argo-events-events-webhook
|
|
app.kubernetes.io/instance: argo-workflows
|
|
app.kubernetes.io/component: events-webhook
|
|
app.kubernetes.io/managed-by: Helm
|
|
app.kubernetes.io/part-of: argo-events
|
|
app.kubernetes.io/version: "v1.9.10"
|
|
spec:
|
|
containers:
|
|
- name: events-webhook
|
|
image: quay.io/argoproj/argo-events:v1.9.10
|
|
imagePullPolicy: IfNotPresent
|
|
args:
|
|
- webhook-service
|
|
env:
|
|
- name: NAMESPACE
|
|
valueFrom:
|
|
fieldRef:
|
|
fieldPath: metadata.namespace
|
|
- name: PORT
|
|
value: "443"
|
|
ports:
|
|
- name: webhook
|
|
containerPort: 443
|
|
protocol: TCP
|
|
livenessProbe:
|
|
tcpSocket:
|
|
port: webhook
|
|
initialDelaySeconds: 10
|
|
periodSeconds: 10
|
|
timeoutSeconds: 1
|
|
successThreshold: 1
|
|
failureThreshold: 3
|
|
readinessProbe:
|
|
tcpSocket:
|
|
port: webhook
|
|
initialDelaySeconds: 10
|
|
periodSeconds: 10
|
|
timeoutSeconds: 1
|
|
successThreshold: 1
|
|
failureThreshold: 3
|
|
resources:
|
|
requests:
|
|
cpu: 10m
|
|
memory: 128Mi
|
|
serviceAccountName: argo-workflows-argo-events-events-webhook
|
|
---
|
|
apiVersion: external-secrets.io/v1
|
|
kind: ExternalSecret
|
|
metadata:
|
|
name: argo-workflows-oidc-secret
|
|
namespace: argo-workflows
|
|
labels:
|
|
app.kubernetes.io/name: argo-workflows-oidc-secret
|
|
app.kubernetes.io/instance: argo-workflows
|
|
app.kubernetes.io/part-of: argo-workflows
|
|
spec:
|
|
secretStoreRef:
|
|
kind: ClusterSecretStore
|
|
name: vault
|
|
data:
|
|
- secretKey: secret
|
|
remoteRef:
|
|
conversionStrategy: Default
|
|
decodingStrategy: None
|
|
key: /authentik/oidc/argo-workflows
|
|
metadataPolicy: None
|
|
property: secret
|
|
- secretKey: client
|
|
remoteRef:
|
|
conversionStrategy: Default
|
|
decodingStrategy: None
|
|
key: /authentik/oidc/argo-workflows
|
|
metadataPolicy: None
|
|
property: client
|
|
---
|
|
apiVersion: external-secrets.io/v1
|
|
kind: ExternalSecret
|
|
metadata:
|
|
name: argo-workflows-postgresql-18-backup-garage-local-secret
|
|
namespace: argo-workflows
|
|
labels:
|
|
helm.sh/chart: postgres-18-cluster-7.9.1
|
|
app.kubernetes.io/name: argo-workflows-postgresql-18
|
|
app.kubernetes.io/instance: argo-workflows
|
|
app.kubernetes.io/part-of: argo-workflows
|
|
app.kubernetes.io/version: "7.9.1"
|
|
app.kubernetes.io/managed-by: Helm
|
|
app.kubernetes.io/name: argo-workflows-postgresql-18-backup-garage-local-secret
|
|
spec:
|
|
secretStoreRef:
|
|
kind: ClusterSecretStore
|
|
name: vault
|
|
data:
|
|
- secretKey: ACCESS_REGION
|
|
remoteRef:
|
|
conversionStrategy: Default
|
|
decodingStrategy: None
|
|
key: /garage/home-infra/postgres-backups
|
|
metadataPolicy: None
|
|
property: ACCESS_REGION
|
|
- secretKey: ACCESS_KEY_ID
|
|
remoteRef:
|
|
conversionStrategy: Default
|
|
decodingStrategy: None
|
|
key: /garage/home-infra/postgres-backups
|
|
metadataPolicy: None
|
|
property: ACCESS_KEY_ID
|
|
- secretKey: ACCESS_SECRET_KEY
|
|
remoteRef:
|
|
conversionStrategy: Default
|
|
decodingStrategy: None
|
|
key: /garage/home-infra/postgres-backups
|
|
metadataPolicy: None
|
|
property: ACCESS_SECRET_KEY
|
|
---
|
|
apiVersion: external-secrets.io/v1
|
|
kind: ExternalSecret
|
|
metadata:
|
|
name: argo-workflows-postgresql-18-recovery-secret
|
|
namespace: argo-workflows
|
|
labels:
|
|
helm.sh/chart: postgres-18-cluster-7.9.1
|
|
app.kubernetes.io/name: argo-workflows-postgresql-18
|
|
app.kubernetes.io/instance: argo-workflows
|
|
app.kubernetes.io/part-of: argo-workflows
|
|
app.kubernetes.io/version: "7.9.1"
|
|
app.kubernetes.io/managed-by: Helm
|
|
app.kubernetes.io/name: argo-workflows-postgresql-18-recovery-secret
|
|
spec:
|
|
secretStoreRef:
|
|
kind: ClusterSecretStore
|
|
name: vault
|
|
data:
|
|
- secretKey: ACCESS_REGION
|
|
remoteRef:
|
|
conversionStrategy: Default
|
|
decodingStrategy: None
|
|
key: /garage/home-infra/postgres-backups
|
|
metadataPolicy: None
|
|
property: ACCESS_REGION
|
|
- secretKey: ACCESS_KEY_ID
|
|
remoteRef:
|
|
conversionStrategy: Default
|
|
decodingStrategy: None
|
|
key: /garage/home-infra/postgres-backups
|
|
metadataPolicy: None
|
|
property: ACCESS_KEY_ID
|
|
- secretKey: ACCESS_SECRET_KEY
|
|
remoteRef:
|
|
conversionStrategy: Default
|
|
decodingStrategy: None
|
|
key: /garage/home-infra/postgres-backups
|
|
metadataPolicy: None
|
|
property: ACCESS_SECRET_KEY
|
|
---
|
|
apiVersion: gateway.networking.k8s.io/v1
|
|
kind: HTTPRoute
|
|
metadata:
|
|
name: argo-workflows
|
|
namespace: argo-workflows
|
|
labels:
|
|
app.kubernetes.io/name: argo-workflows
|
|
app.kubernetes.io/instance: argo-workflows
|
|
app.kubernetes.io/part-of: argo-workflows
|
|
spec:
|
|
parentRefs:
|
|
- group: gateway.networking.k8s.io
|
|
kind: Gateway
|
|
name: traefik-gateway
|
|
namespace: traefik
|
|
hostnames:
|
|
- argo-workflows.alexlebens.net
|
|
rules:
|
|
- matches:
|
|
- path:
|
|
type: PathPrefix
|
|
value: /
|
|
backendRefs:
|
|
- group: ''
|
|
kind: Service
|
|
name: argo-workflows-server
|
|
port: 2746
|
|
weight: 100
|
|
---
|
|
apiVersion: batch/v1
|
|
kind: Job
|
|
metadata:
|
|
name: argo-workflows-crd-install
|
|
namespace: argo-workflows
|
|
labels:
|
|
helm.sh/chart: argo-workflows-1.0.2
|
|
app.kubernetes.io/name: argo-workflows-crd-install
|
|
app.kubernetes.io/instance: argo-workflows
|
|
app.kubernetes.io/component: crds
|
|
app: crds
|
|
app.kubernetes.io/managed-by: Helm
|
|
app.kubernetes.io/part-of: argo-workflows
|
|
annotations:
|
|
"helm.sh/hook": pre-install,pre-upgrade
|
|
"helm.sh/hook-weight": "-5"
|
|
"helm.sh/hook-delete-policy": before-hook-creation,hook-succeeded
|
|
spec:
|
|
template:
|
|
metadata:
|
|
labels:
|
|
helm.sh/chart: argo-workflows-1.0.2
|
|
app.kubernetes.io/name: argo-workflows-crd-install
|
|
app.kubernetes.io/instance: argo-workflows
|
|
app.kubernetes.io/component: crds
|
|
app: crds
|
|
app.kubernetes.io/managed-by: Helm
|
|
app.kubernetes.io/part-of: argo-workflows
|
|
spec:
|
|
serviceAccountName: argo-workflows-crd-install
|
|
containers:
|
|
- name: apply
|
|
image: "registry.k8s.io/kubectl:v1.35.2"
|
|
env:
|
|
command:
|
|
- kubectl
|
|
- apply
|
|
- --server-side
|
|
- --force-conflicts
|
|
- -f
|
|
- "https://raw.githubusercontent.com/argoproj/argo-helm/argo-workflows-1.0.2/charts/argo-workflows/files/crds/full/argoproj.io_clusterworkflowtemplates.yaml"
|
|
- -f
|
|
- "https://raw.githubusercontent.com/argoproj/argo-helm/argo-workflows-1.0.2/charts/argo-workflows/files/crds/full/argoproj.io_cronworkflows.yaml"
|
|
- -f
|
|
- "https://raw.githubusercontent.com/argoproj/argo-helm/argo-workflows-1.0.2/charts/argo-workflows/files/crds/full/argoproj.io_workflowartifactgctasks.yaml"
|
|
- -f
|
|
- "https://raw.githubusercontent.com/argoproj/argo-helm/argo-workflows-1.0.2/charts/argo-workflows/files/crds/full/argoproj.io_workfloweventbindings.yaml"
|
|
- -f
|
|
- "https://raw.githubusercontent.com/argoproj/argo-helm/argo-workflows-1.0.2/charts/argo-workflows/files/crds/full/argoproj.io_workflows.yaml"
|
|
- -f
|
|
- "https://raw.githubusercontent.com/argoproj/argo-helm/argo-workflows-1.0.2/charts/argo-workflows/files/crds/full/argoproj.io_workflowtaskresults.yaml"
|
|
- -f
|
|
- "https://raw.githubusercontent.com/argoproj/argo-helm/argo-workflows-1.0.2/charts/argo-workflows/files/crds/full/argoproj.io_workflowtasksets.yaml"
|
|
- -f
|
|
- "https://raw.githubusercontent.com/argoproj/argo-helm/argo-workflows-1.0.2/charts/argo-workflows/files/crds/full/argoproj.io_workflowtemplates.yaml"
|
|
restartPolicy: Never
|
|
backoffLimit: 3
|
|
---
|
|
apiVersion: barmancloud.cnpg.io/v1
|
|
kind: ObjectStore
|
|
metadata:
|
|
name: argo-workflows-postgresql-18-backup-garage-local
|
|
namespace: argo-workflows
|
|
labels:
|
|
helm.sh/chart: postgres-18-cluster-7.9.1
|
|
app.kubernetes.io/name: argo-workflows-postgresql-18
|
|
app.kubernetes.io/instance: argo-workflows
|
|
app.kubernetes.io/part-of: argo-workflows
|
|
app.kubernetes.io/version: "7.9.1"
|
|
app.kubernetes.io/managed-by: Helm
|
|
app.kubernetes.io/name: argo-workflows-postgresql-18-backup-garage-local
|
|
spec:
|
|
retentionPolicy: 7d
|
|
instanceSidecarConfiguration:
|
|
env:
|
|
- name: AWS_REQUEST_CHECKSUM_CALCULATION
|
|
value: when_required
|
|
- name: AWS_RESPONSE_CHECKSUM_VALIDATION
|
|
value: when_required
|
|
configuration:
|
|
destinationPath: s3://postgres-backups/cl01tl/argo-workflows/argo-workflows-postgresql-18-cluster
|
|
endpointURL: http://garage-main.garage:3900
|
|
s3Credentials:
|
|
accessKeyId:
|
|
name: argo-workflows-postgresql-18-backup-garage-local-secret
|
|
key: ACCESS_KEY_ID
|
|
secretAccessKey:
|
|
name: argo-workflows-postgresql-18-backup-garage-local-secret
|
|
key: ACCESS_SECRET_KEY
|
|
region:
|
|
name: argo-workflows-postgresql-18-backup-garage-local-secret
|
|
key: ACCESS_REGION
|
|
---
|
|
apiVersion: barmancloud.cnpg.io/v1
|
|
kind: ObjectStore
|
|
metadata:
|
|
name: "argo-workflows-postgresql-18-recovery"
|
|
namespace: argo-workflows
|
|
labels:
|
|
helm.sh/chart: postgres-18-cluster-7.9.1
|
|
app.kubernetes.io/name: argo-workflows-postgresql-18
|
|
app.kubernetes.io/instance: argo-workflows
|
|
app.kubernetes.io/part-of: argo-workflows
|
|
app.kubernetes.io/version: "7.9.1"
|
|
app.kubernetes.io/managed-by: Helm
|
|
app.kubernetes.io/name: "argo-workflows-postgresql-18-recovery"
|
|
spec:
|
|
configuration:
|
|
destinationPath: s3://postgres-backups/cl01tl/argo-workflows/argo-workflows-postgresql-18-cluster
|
|
endpointURL: http://garage-main.garage:3900
|
|
wal:
|
|
compression: snappy
|
|
maxParallel: 1
|
|
data:
|
|
compression: snappy
|
|
jobs: 1
|
|
s3Credentials:
|
|
accessKeyId:
|
|
name: argo-workflows-postgresql-18-recovery-secret
|
|
key: ACCESS_KEY_ID
|
|
secretAccessKey:
|
|
name: argo-workflows-postgresql-18-recovery-secret
|
|
key: ACCESS_SECRET_KEY
|
|
region:
|
|
name: argo-workflows-postgresql-18-recovery-secret
|
|
key: ACCESS_REGION
|
|
---
|
|
apiVersion: monitoring.coreos.com/v1
|
|
kind: PrometheusRule
|
|
metadata:
|
|
name: argo-workflows-postgresql-18-alert-rules
|
|
namespace: argo-workflows
|
|
labels:
|
|
helm.sh/chart: postgres-18-cluster-7.9.1
|
|
app.kubernetes.io/name: argo-workflows-postgresql-18
|
|
app.kubernetes.io/instance: argo-workflows
|
|
app.kubernetes.io/part-of: argo-workflows
|
|
app.kubernetes.io/version: "7.9.1"
|
|
app.kubernetes.io/managed-by: Helm
|
|
spec:
|
|
groups:
|
|
- name: cloudnative-pg/argo-workflows-postgresql-18
|
|
rules:
|
|
- alert: CNPGClusterBackendsWaitingWarning
|
|
annotations:
|
|
summary: CNPG Cluster a backend is waiting for longer than 5 minutes.
|
|
description: |-
|
|
Pod {{ $labels.pod }}
|
|
has been waiting for longer than 5 minutes
|
|
expr: |
|
|
cnpg_backends_waiting_total{namespace="argo-workflows"} > 300
|
|
for: 1m
|
|
labels:
|
|
severity: warning
|
|
namespace: argo-workflows
|
|
cnpg_cluster: argo-workflows-postgresql-18-cluster
|
|
- alert: CNPGClusterDatabaseDeadlockConflictsWarning
|
|
annotations:
|
|
summary: CNPG Cluster has over 10 deadlock conflicts.
|
|
description: |-
|
|
There are over 10 deadlock conflicts in
|
|
{{ $labels.pod }}
|
|
expr: |
|
|
cnpg_pg_stat_database_deadlocks{namespace="argo-workflows"} > 10
|
|
for: 1m
|
|
labels:
|
|
severity: warning
|
|
namespace: argo-workflows
|
|
cnpg_cluster: argo-workflows-postgresql-18-cluster
|
|
- alert: CNPGClusterHACritical
|
|
annotations:
|
|
summary: CNPG Cluster has no standby replicas!
|
|
description: |-
|
|
CloudNativePG Cluster "{{`{{`}} $labels.job {{`}}`}}" has no ready standby replicas. Your cluster at a severe
|
|
risk of data loss and downtime if the primary instance fails.
|
|
|
|
The primary instance is still online and able to serve queries, although connections to the `-ro` endpoint
|
|
will fail. The `-r` endpoint os operating at reduced capacity and all traffic is being served by the main.
|
|
|
|
This can happen during a normal fail-over or automated minor version upgrades in a cluster with 2 or less
|
|
instances. The replaced instance may need some time to catch-up with the cluster primary instance.
|
|
|
|
This alarm will be always trigger if your cluster is configured to run with only 1 instance. In this
|
|
case you may want to silence it.
|
|
runbook_url: https://github.com/cloudnative-pg/charts/blob/main/charts/cluster/docs/runbooks/CNPGClusterHACritical.md
|
|
expr: |
|
|
max by (job) (cnpg_pg_replication_streaming_replicas{namespace="argo-workflows"} - cnpg_pg_replication_is_wal_receiver_up{namespace="argo-workflows"}) < 1
|
|
for: 5m
|
|
labels:
|
|
severity: critical
|
|
namespace: argo-workflows
|
|
cnpg_cluster: argo-workflows-postgresql-18-cluster
|
|
- alert: CNPGClusterHAWarning
|
|
annotations:
|
|
summary: CNPG Cluster less than 2 standby replicas.
|
|
description: |-
|
|
CloudNativePG Cluster "{{`{{`}} $labels.job {{`}}`}}" has only {{`{{`}} $value {{`}}`}} standby replicas, putting
|
|
your cluster at risk if another instance fails. The cluster is still able to operate normally, although
|
|
the `-ro` and `-r` endpoints operate at reduced capacity.
|
|
|
|
This can happen during a normal fail-over or automated minor version upgrades. The replaced instance may
|
|
need some time to catch-up with the cluster primary instance.
|
|
|
|
This alarm will be constantly triggered if your cluster is configured to run with less than 3 instances.
|
|
In this case you may want to silence it.
|
|
runbook_url: https://github.com/cloudnative-pg/charts/blob/main/charts/cluster/docs/runbooks/CNPGClusterHAWarning.md
|
|
expr: |
|
|
max by (job) (cnpg_pg_replication_streaming_replicas{namespace="argo-workflows"} - cnpg_pg_replication_is_wal_receiver_up{namespace="argo-workflows"}) < 2
|
|
for: 5m
|
|
labels:
|
|
severity: warning
|
|
namespace: argo-workflows
|
|
cnpg_cluster: argo-workflows-postgresql-18-cluster
|
|
- alert: CNPGClusterHighConnectionsCritical
|
|
annotations:
|
|
summary: CNPG Instance maximum number of connections critical!
|
|
description: |-
|
|
CloudNativePG Cluster "argo-workflows/argo-workflows-postgresql-18-cluster" instance {{`{{`}} $labels.pod {{`}}`}} is using {{`{{`}} $value {{`}}`}}% of
|
|
the maximum number of connections.
|
|
runbook_url: https://github.com/cloudnative-pg/charts/blob/main/charts/cluster/docs/runbooks/CNPGClusterHighConnectionsCritical.md
|
|
expr: |
|
|
sum by (pod) (cnpg_backends_total{namespace="argo-workflows", pod=~"argo-workflows-postgresql-18-cluster-([1-9][0-9]*)$"}) / max by (pod) (cnpg_pg_settings_setting{name="max_connections", namespace="argo-workflows", pod=~"argo-workflows-postgresql-18-cluster-([1-9][0-9]*)$"}) * 100 > 95
|
|
for: 5m
|
|
labels:
|
|
severity: critical
|
|
namespace: argo-workflows
|
|
cnpg_cluster: argo-workflows-postgresql-18-cluster
|
|
- alert: CNPGClusterHighConnectionsWarning
|
|
annotations:
|
|
summary: CNPG Instance is approaching the maximum number of connections.
|
|
description: |-
|
|
CloudNativePG Cluster "argo-workflows/argo-workflows-postgresql-18-cluster" instance {{`{{`}} $labels.pod {{`}}`}} is using {{`{{`}} $value {{`}}`}}% of
|
|
the maximum number of connections.
|
|
runbook_url: https://github.com/cloudnative-pg/charts/blob/main/charts/cluster/docs/runbooks/CNPGClusterHighConnectionsWarning.md
|
|
expr: |
|
|
sum by (pod) (cnpg_backends_total{namespace="argo-workflows", pod=~"argo-workflows-postgresql-18-cluster-([1-9][0-9]*)$"}) / max by (pod) (cnpg_pg_settings_setting{name="max_connections", namespace="argo-workflows", pod=~"argo-workflows-postgresql-18-cluster-([1-9][0-9]*)$"}) * 100 > 80
|
|
for: 5m
|
|
labels:
|
|
severity: warning
|
|
namespace: argo-workflows
|
|
cnpg_cluster: argo-workflows-postgresql-18-cluster
|
|
- alert: CNPGClusterHighReplicationLag
|
|
annotations:
|
|
summary: CNPG Cluster high replication lag
|
|
description: |-
|
|
CloudNativePG Cluster "argo-workflows/argo-workflows-postgresql-18-cluster" is experiencing a high replication lag of
|
|
{{`{{`}} $value {{`}}`}}ms.
|
|
|
|
High replication lag indicates network issues, busy instances, slow queries or suboptimal configuration.
|
|
runbook_url: https://github.com/cloudnative-pg/charts/blob/main/charts/cluster/docs/runbooks/CNPGClusterHighReplicationLag.md
|
|
expr: |
|
|
max(cnpg_pg_replication_lag{namespace="argo-workflows",pod=~"argo-workflows-postgresql-18-cluster-([1-9][0-9]*)$"}) * 1000 > 1000
|
|
for: 5m
|
|
labels:
|
|
severity: warning
|
|
namespace: argo-workflows
|
|
cnpg_cluster: argo-workflows-postgresql-18-cluster
|
|
- alert: CNPGClusterInstancesOnSameNode
|
|
annotations:
|
|
summary: CNPG Cluster instances are located on the same node.
|
|
description: |-
|
|
CloudNativePG Cluster "argo-workflows/argo-workflows-postgresql-18-cluster" has {{`{{`}} $value {{`}}`}}
|
|
instances on the same node {{`{{`}} $labels.node {{`}}`}}.
|
|
|
|
A failure or scheduled downtime of a single node will lead to a potential service disruption and/or data loss.
|
|
runbook_url: https://github.com/cloudnative-pg/charts/blob/main/charts/cluster/docs/runbooks/CNPGClusterInstancesOnSameNode.md
|
|
expr: |
|
|
count by (node) (kube_pod_info{namespace="argo-workflows", pod=~"argo-workflows-postgresql-18-cluster-([1-9][0-9]*)$"}) > 1
|
|
for: 5m
|
|
labels:
|
|
severity: warning
|
|
namespace: argo-workflows
|
|
cnpg_cluster: argo-workflows-postgresql-18-cluster
|
|
- alert: CNPGClusterLongRunningTransactionWarning
|
|
annotations:
|
|
summary: CNPG Cluster query is taking longer than 5 minutes.
|
|
description: |-
|
|
CloudNativePG Cluster Pod {{ $labels.pod }}
|
|
is taking more than 5 minutes (300 seconds) for a query.
|
|
expr: |-
|
|
cnpg_backends_max_tx_duration_seconds{namespace="argo-workflows"} > 300
|
|
for: 1m
|
|
labels:
|
|
severity: warning
|
|
namespace: argo-workflows
|
|
cnpg_cluster: argo-workflows-postgresql-18-cluster
|
|
- alert: CNPGClusterLowDiskSpaceCritical
|
|
annotations:
|
|
summary: CNPG Instance is running out of disk space!
|
|
description: |-
|
|
CloudNativePG Cluster "argo-workflows/argo-workflows-postgresql-18-cluster" is running extremely low on disk space. Check attached PVCs!
|
|
runbook_url: https://github.com/cloudnative-pg/charts/blob/main/charts/cluster/docs/runbooks/CNPGClusterLowDiskSpaceCritical.md
|
|
expr: |
|
|
max(max by(persistentvolumeclaim) (1 - kubelet_volume_stats_available_bytes{namespace="argo-workflows", persistentvolumeclaim=~"argo-workflows-postgresql-18-cluster-([1-9][0-9]*)$"} / kubelet_volume_stats_capacity_bytes{namespace="argo-workflows", persistentvolumeclaim=~"argo-workflows-postgresql-18-cluster-([1-9][0-9]*)$"})) > 0.9 OR
|
|
max(max by(persistentvolumeclaim) (1 - kubelet_volume_stats_available_bytes{namespace="argo-workflows", persistentvolumeclaim=~"argo-workflows-postgresql-18-cluster-([1-9][0-9]*)$-wal"} / kubelet_volume_stats_capacity_bytes{namespace="argo-workflows", persistentvolumeclaim=~"argo-workflows-postgresql-18-cluster-([1-9][0-9]*)$-wal"})) > 0.9 OR
|
|
max(sum by (namespace,persistentvolumeclaim) (kubelet_volume_stats_used_bytes{namespace="argo-workflows", persistentvolumeclaim=~"argo-workflows-postgresql-18-cluster-([1-9][0-9]*)$-tbs.*"})
|
|
/
|
|
sum by (namespace,persistentvolumeclaim) (kubelet_volume_stats_capacity_bytes{namespace="argo-workflows", persistentvolumeclaim=~"argo-workflows-postgresql-18-cluster-([1-9][0-9]*)$-tbs.*"})
|
|
*
|
|
on(namespace, persistentvolumeclaim) group_left(volume)
|
|
kube_pod_spec_volumes_persistentvolumeclaims_info{pod=~"argo-workflows-postgresql-18-cluster-([1-9][0-9]*)$"}
|
|
) > 0.9
|
|
for: 5m
|
|
labels:
|
|
severity: critical
|
|
namespace: argo-workflows
|
|
cnpg_cluster: argo-workflows-postgresql-18-cluster
|
|
- alert: CNPGClusterLowDiskSpaceWarning
|
|
annotations:
|
|
summary: CNPG Instance is running out of disk space.
|
|
description: |-
|
|
CloudNativePG Cluster "argo-workflows/argo-workflows-postgresql-18-cluster" is running low on disk space. Check attached PVCs.
|
|
runbook_url: https://github.com/cloudnative-pg/charts/blob/main/charts/cluster/docs/runbooks/CNPGClusterLowDiskSpaceWarning.md
|
|
expr: |
|
|
max(max by(persistentvolumeclaim) (1 - kubelet_volume_stats_available_bytes{namespace="argo-workflows", persistentvolumeclaim=~"argo-workflows-postgresql-18-cluster-([1-9][0-9]*)$"} / kubelet_volume_stats_capacity_bytes{namespace="argo-workflows", persistentvolumeclaim=~"argo-workflows-postgresql-18-cluster-([1-9][0-9]*)$"})) > 0.7 OR
|
|
max(max by(persistentvolumeclaim) (1 - kubelet_volume_stats_available_bytes{namespace="argo-workflows", persistentvolumeclaim=~"argo-workflows-postgresql-18-cluster-([1-9][0-9]*)$-wal"} / kubelet_volume_stats_capacity_bytes{namespace="argo-workflows", persistentvolumeclaim=~"argo-workflows-postgresql-18-cluster-([1-9][0-9]*)$-wal"})) > 0.7 OR
|
|
max(sum by (namespace,persistentvolumeclaim) (kubelet_volume_stats_used_bytes{namespace="argo-workflows", persistentvolumeclaim=~"argo-workflows-postgresql-18-cluster-([1-9][0-9]*)$-tbs.*"})
|
|
/
|
|
sum by (namespace,persistentvolumeclaim) (kubelet_volume_stats_capacity_bytes{namespace="argo-workflows", persistentvolumeclaim=~"argo-workflows-postgresql-18-cluster-([1-9][0-9]*)$-tbs.*"})
|
|
*
|
|
on(namespace, persistentvolumeclaim) group_left(volume)
|
|
kube_pod_spec_volumes_persistentvolumeclaims_info{pod=~"argo-workflows-postgresql-18-cluster-([1-9][0-9]*)$"}
|
|
) > 0.7
|
|
for: 5m
|
|
labels:
|
|
severity: warning
|
|
namespace: argo-workflows
|
|
cnpg_cluster: argo-workflows-postgresql-18-cluster
|
|
- alert: CNPGClusterOffline
|
|
annotations:
|
|
summary: CNPG Cluster has no running instances!
|
|
description: |-
|
|
CloudNativePG Cluster "argo-workflows/argo-workflows-postgresql-18-cluster" has no ready instances.
|
|
|
|
Having an offline cluster means your applications will not be able to access the database, leading to
|
|
potential service disruption and/or data loss.
|
|
runbook_url: https://github.com/cloudnative-pg/charts/blob/main/charts/cluster/docs/runbooks/CNPGClusterOffline.md
|
|
expr: |
|
|
(count(cnpg_collector_up{namespace="argo-workflows",pod=~"argo-workflows-postgresql-18-cluster-([1-9][0-9]*)$"}) OR on() vector(0)) == 0
|
|
for: 5m
|
|
labels:
|
|
severity: critical
|
|
namespace: argo-workflows
|
|
cnpg_cluster: argo-workflows-postgresql-18-cluster
|
|
- alert: CNPGClusterPGDatabaseXidAgeWarning
|
|
annotations:
|
|
summary: CNPG Cluster has a number of transactions from the frozen XID to the current one.
|
|
description: |-
|
|
Over 300,000,000 transactions from frozen xid
|
|
on pod {{ $labels.pod }}
|
|
expr: |
|
|
cnpg_pg_database_xid_age{namespace="argo-workflows"} > 300000000
|
|
for: 1m
|
|
labels:
|
|
severity: warning
|
|
namespace: argo-workflows
|
|
cnpg_cluster: argo-workflows-postgresql-18-cluster
|
|
- alert: CNPGClusterPGReplicationWarning
|
|
annotations:
|
|
summary: CNPG Cluster standby is lagging behind the primary.
|
|
description: |-
|
|
Standby is lagging behind by over 300 seconds (5 minutes)
|
|
expr: |
|
|
cnpg_pg_replication_lag{namespace="argo-workflows"} > 300
|
|
for: 1m
|
|
labels:
|
|
severity: warning
|
|
namespace: argo-workflows
|
|
cnpg_cluster: argo-workflows-postgresql-18-cluster
|
|
- alert: CNPGClusterReplicaFailingReplicationWarning
|
|
annotations:
|
|
summary: CNPG Cluster has a replica is failing to replicate.
|
|
description: |-
|
|
Replica {{ $labels.pod }}
|
|
is failing to replicate
|
|
expr: |
|
|
cnpg_pg_replication_in_recovery{namespace="argo-workflows"} > cnpg_pg_replication_is_wal_receiver_up{namespace="argo-workflows"}
|
|
for: 1m
|
|
labels:
|
|
severity: warning
|
|
namespace: argo-workflows
|
|
cnpg_cluster: argo-workflows-postgresql-18-cluster
|
|
- alert: CNPGClusterZoneSpreadWarning
|
|
annotations:
|
|
summary: CNPG Cluster instances in the same zone.
|
|
description: |-
|
|
CloudNativePG Cluster "argo-workflows/argo-workflows-postgresql-18-cluster" has instances in the same availability zone.
|
|
|
|
A disaster in one availability zone will lead to a potential service disruption and/or data loss.
|
|
runbook_url: https://github.com/cloudnative-pg/charts/blob/main/charts/cluster/docs/runbooks/CNPGClusterZoneSpreadWarning.md
|
|
expr: |
|
|
3 > count(count by (label_topology_kubernetes_io_zone) (kube_pod_info{namespace="argo-workflows", pod=~"argo-workflows-postgresql-18-cluster-([1-9][0-9]*)$"} * on(node,instance) group_left(label_topology_kubernetes_io_zone) kube_node_labels)) < 3
|
|
for: 5m
|
|
labels:
|
|
severity: warning
|
|
namespace: argo-workflows
|
|
cnpg_cluster: argo-workflows-postgresql-18-cluster
|
|
---
|
|
apiVersion: rbac.authorization.k8s.io/v1
|
|
kind: Role
|
|
metadata:
|
|
name: argo-workflows-workflow
|
|
labels:
|
|
helm.sh/chart: argo-workflows-1.0.2
|
|
app.kubernetes.io/name: argo-workflows-workflow-controller
|
|
app.kubernetes.io/instance: argo-workflows
|
|
app.kubernetes.io/component: workflow-controller
|
|
app: workflow-controller
|
|
app.kubernetes.io/managed-by: Helm
|
|
app.kubernetes.io/part-of: argo-workflows
|
|
namespace: argo-workflows
|
|
rules:
|
|
- apiGroups:
|
|
- argoproj.io
|
|
resources:
|
|
- workflowtaskresults
|
|
verbs:
|
|
- create
|
|
- patch
|
|
---
|
|
apiVersion: rbac.authorization.k8s.io/v1
|
|
kind: RoleBinding
|
|
metadata:
|
|
name: argo-workflows-workflow
|
|
labels:
|
|
helm.sh/chart: argo-workflows-1.0.2
|
|
app.kubernetes.io/name: argo-workflows-workflow-controller
|
|
app.kubernetes.io/instance: argo-workflows
|
|
app.kubernetes.io/component: workflow-controller
|
|
app: workflow-controller
|
|
app.kubernetes.io/managed-by: Helm
|
|
app.kubernetes.io/part-of: argo-workflows
|
|
namespace: argo-workflows
|
|
roleRef:
|
|
apiGroup: rbac.authorization.k8s.io
|
|
kind: Role
|
|
name: argo-workflows-workflow
|
|
subjects:
|
|
- kind: ServiceAccount
|
|
name: argo-workflow
|
|
namespace: argo-workflows
|
|
---
|
|
apiVersion: postgresql.cnpg.io/v1
|
|
kind: ScheduledBackup
|
|
metadata:
|
|
name: "argo-workflows-postgresql-18-scheduled-backup-live-backup"
|
|
namespace: argo-workflows
|
|
labels:
|
|
helm.sh/chart: postgres-18-cluster-7.9.1
|
|
app.kubernetes.io/name: argo-workflows-postgresql-18
|
|
app.kubernetes.io/instance: argo-workflows
|
|
app.kubernetes.io/part-of: argo-workflows
|
|
app.kubernetes.io/version: "7.9.1"
|
|
app.kubernetes.io/managed-by: Helm
|
|
app.kubernetes.io/name: "argo-workflows-postgresql-18-scheduled-backup-live-backup"
|
|
spec:
|
|
immediate: true
|
|
suspend: false
|
|
schedule: "0 0 14 * * *"
|
|
backupOwnerReference: self
|
|
cluster:
|
|
name: argo-workflows-postgresql-18-cluster
|
|
method: plugin
|
|
pluginConfiguration:
|
|
name: barman-cloud.cloudnative-pg.io
|
|
parameters:
|
|
barmanObjectName: "argo-workflows-postgresql-18-backup-garage-local"
|
|
---
|
|
apiVersion: v1
|
|
kind: Service
|
|
metadata:
|
|
name: argo-workflows-argo-events-controller-manager-metrics
|
|
namespace: "argo-workflows"
|
|
labels:
|
|
helm.sh/chart: argo-events-2.4.20
|
|
app.kubernetes.io/name: argo-events-controller-manager-metrics
|
|
app.kubernetes.io/instance: argo-workflows
|
|
app.kubernetes.io/component: controller-manager
|
|
app.kubernetes.io/managed-by: Helm
|
|
app.kubernetes.io/part-of: argo-events
|
|
spec:
|
|
ports:
|
|
- name: metrics
|
|
protocol: TCP
|
|
port: 8082
|
|
targetPort: metrics
|
|
selector:
|
|
app.kubernetes.io/name: argo-events-controller-manager
|
|
app.kubernetes.io/instance: argo-workflows
|
|
---
|
|
apiVersion: v1
|
|
kind: Service
|
|
metadata:
|
|
name: argo-workflows-server
|
|
namespace: "argo-workflows"
|
|
labels:
|
|
helm.sh/chart: argo-workflows-1.0.2
|
|
app.kubernetes.io/name: argo-workflows-server
|
|
app.kubernetes.io/instance: argo-workflows
|
|
app.kubernetes.io/component: server
|
|
app: server
|
|
app.kubernetes.io/managed-by: Helm
|
|
app.kubernetes.io/part-of: argo-workflows
|
|
app.kubernetes.io/version: "v4.0.2"
|
|
spec:
|
|
ports:
|
|
- port: 2746
|
|
targetPort: 2746
|
|
selector:
|
|
app.kubernetes.io/name: argo-workflows-server
|
|
app.kubernetes.io/instance: argo-workflows
|
|
sessionAffinity: None
|
|
type: ClusterIP
|
|
---
|
|
apiVersion: v1
|
|
kind: Service
|
|
metadata:
|
|
name: argo-workflows-workflow-controller
|
|
namespace: "argo-workflows"
|
|
labels:
|
|
helm.sh/chart: argo-workflows-1.0.2
|
|
app.kubernetes.io/name: argo-workflows-workflow-controller
|
|
app.kubernetes.io/instance: argo-workflows
|
|
app.kubernetes.io/component: workflow-controller
|
|
app: workflow-controller
|
|
app.kubernetes.io/managed-by: Helm
|
|
app.kubernetes.io/part-of: argo-workflows
|
|
app.kubernetes.io/version: "v4.0.2"
|
|
spec:
|
|
ports:
|
|
- name: metrics
|
|
port: 8080
|
|
protocol: TCP
|
|
targetPort: 9090
|
|
selector:
|
|
app.kubernetes.io/name: argo-workflows-workflow-controller
|
|
app.kubernetes.io/instance: argo-workflows
|
|
sessionAffinity: None
|
|
type: ClusterIP
|
|
---
|
|
apiVersion: v1
|
|
kind: Service
|
|
metadata:
|
|
name: events-webhook
|
|
namespace: "argo-workflows"
|
|
labels:
|
|
helm.sh/chart: argo-events-2.4.20
|
|
app.kubernetes.io/name: argo-events-events-webhook
|
|
app.kubernetes.io/instance: argo-workflows
|
|
app.kubernetes.io/managed-by: Helm
|
|
app.kubernetes.io/part-of: argo-events
|
|
spec:
|
|
ports:
|
|
- port: 443
|
|
targetPort: webhook
|
|
selector:
|
|
app.kubernetes.io/name: argo-events-events-webhook
|
|
app.kubernetes.io/instance: argo-workflows
|
|
---
|
|
apiVersion: v1
|
|
kind: ServiceAccount
|
|
automountServiceAccountToken: true
|
|
metadata:
|
|
name: argo-workflows-argo-events-controller-manager
|
|
namespace: "argo-workflows"
|
|
labels:
|
|
helm.sh/chart: argo-events-2.4.20
|
|
app.kubernetes.io/name: argo-events-controller-manager
|
|
app.kubernetes.io/instance: argo-workflows
|
|
app.kubernetes.io/component: controller-manager
|
|
app.kubernetes.io/managed-by: Helm
|
|
app.kubernetes.io/part-of: argo-events
|
|
---
|
|
apiVersion: v1
|
|
kind: ServiceAccount
|
|
automountServiceAccountToken: true
|
|
metadata:
|
|
name: argo-workflows-argo-events-events-webhook
|
|
namespace: "argo-workflows"
|
|
labels:
|
|
helm.sh/chart: argo-events-2.4.20
|
|
app.kubernetes.io/name: argo-events-events-webhook
|
|
app.kubernetes.io/instance: argo-workflows
|
|
app.kubernetes.io/component: events-webhook
|
|
app.kubernetes.io/managed-by: Helm
|
|
app.kubernetes.io/part-of: argo-events
|
|
---
|
|
apiVersion: v1
|
|
kind: ServiceAccount
|
|
metadata:
|
|
name: argo-workflows-crd-install
|
|
namespace: argo-workflows
|
|
labels:
|
|
helm.sh/chart: argo-workflows-1.0.2
|
|
app.kubernetes.io/name: argo-workflows-crd-install
|
|
app.kubernetes.io/instance: argo-workflows
|
|
app.kubernetes.io/component: crds
|
|
app: crds
|
|
app.kubernetes.io/managed-by: Helm
|
|
app.kubernetes.io/part-of: argo-workflows
|
|
annotations:
|
|
"helm.sh/hook": pre-install,pre-upgrade
|
|
"helm.sh/hook-weight": "-10"
|
|
"helm.sh/hook-delete-policy": before-hook-creation,hook-succeeded
|
|
---
|
|
apiVersion: v1
|
|
kind: ServiceAccount
|
|
metadata:
|
|
name: argo-workflows-server
|
|
namespace: "argo-workflows"
|
|
labels:
|
|
helm.sh/chart: argo-workflows-1.0.2
|
|
app.kubernetes.io/name: argo-workflows-server
|
|
app.kubernetes.io/instance: argo-workflows
|
|
app.kubernetes.io/component: server
|
|
app: server
|
|
app.kubernetes.io/managed-by: Helm
|
|
app.kubernetes.io/part-of: argo-workflows
|
|
---
|
|
apiVersion: v1
|
|
kind: ServiceAccount
|
|
metadata:
|
|
name: argo-workflows-workflow-controller
|
|
namespace: "argo-workflows"
|
|
labels:
|
|
helm.sh/chart: argo-workflows-1.0.2
|
|
app.kubernetes.io/name: argo-workflows-workflow-controller
|
|
app.kubernetes.io/instance: argo-workflows
|
|
app.kubernetes.io/component: workflow-controller
|
|
app: workflow-controller
|
|
app.kubernetes.io/managed-by: Helm
|
|
app.kubernetes.io/part-of: argo-workflows
|
|
---
|
|
apiVersion: monitoring.coreos.com/v1
|
|
kind: ServiceMonitor
|
|
metadata:
|
|
name: argo-workflows-argo-events-controller-manager
|
|
namespace: "argo-workflows"
|
|
labels:
|
|
helm.sh/chart: argo-events-2.4.20
|
|
app.kubernetes.io/name: argo-events-controller-manager
|
|
app.kubernetes.io/instance: argo-workflows
|
|
app.kubernetes.io/component: controller-manager
|
|
app.kubernetes.io/managed-by: Helm
|
|
app.kubernetes.io/part-of: argo-events
|
|
spec:
|
|
endpoints:
|
|
- port: metrics
|
|
interval: 30s
|
|
path: /metrics
|
|
namespaceSelector:
|
|
matchNames:
|
|
- "argo-workflows"
|
|
selector:
|
|
matchLabels:
|
|
app.kubernetes.io/name: argo-events-controller-manager-metrics
|
|
app.kubernetes.io/instance: argo-workflows
|
|
app.kubernetes.io/component: controller-manager
|