feat(database): dragonfly-operator в ns database #13
@@ -0,0 +1,38 @@
|
|||||||
|
---
|
||||||
|
apiVersion: helm.toolkit.fluxcd.io/v2
|
||||||
|
kind: HelmRelease
|
||||||
|
metadata:
|
||||||
|
name: dragonfly-operator
|
||||||
|
spec:
|
||||||
|
interval: 1h
|
||||||
|
chartRef:
|
||||||
|
kind: OCIRepository
|
||||||
|
name: dragonfly-operator
|
||||||
|
values:
|
||||||
|
# CRD (dragonflydb.io) идут обычным шаблоном чарта, а не каталогом crds/,
|
||||||
|
# поэтому обновляются вместе с релизом; keep: true не даёт Helm удалить их
|
||||||
|
# при удалении релиза (иначе вместе с CRD уехали бы все Dragonfly CR).
|
||||||
|
crds:
|
||||||
|
install: true
|
||||||
|
keep: true
|
||||||
|
# Метрики оператора отдаются напрямую на :8080, а не через kube-rbac-proxy.
|
||||||
|
# Prometheus Operator в кластере нет, поэтому ServiceMonitor и дашборд Grafana
|
||||||
|
# не включаем: без их CRD релиз бы не встал.
|
||||||
|
rbacProxy:
|
||||||
|
enabled: false
|
||||||
|
serviceMonitor:
|
||||||
|
enabled: false
|
||||||
|
grafanaDashboard:
|
||||||
|
enabled: false
|
||||||
|
manager:
|
||||||
|
# Дефолт чарта — docker.dragonflydb.io/dragonflydb/operator; берём тот же
|
||||||
|
# образ из ghcr и фиксируем дайджестом.
|
||||||
|
image:
|
||||||
|
repository: ghcr.io/dragonflydb/operator
|
||||||
|
tag: v1.6.1@sha256:b11411142935f92ed0ec30a5ddeb31680e09ab66beecb827cb0224f1c4238638
|
||||||
|
resources:
|
||||||
|
requests:
|
||||||
|
cpu: 10m
|
||||||
|
memory: 128Mi
|
||||||
|
limits:
|
||||||
|
memory: 256Mi
|
||||||
@@ -0,0 +1,6 @@
|
|||||||
|
---
|
||||||
|
apiVersion: kustomize.config.k8s.io/v1beta1
|
||||||
|
kind: Kustomization
|
||||||
|
resources:
|
||||||
|
- ./ocirepository.yaml
|
||||||
|
- ./helmrelease.yaml
|
||||||
@@ -0,0 +1,15 @@
|
|||||||
|
---
|
||||||
|
apiVersion: source.toolkit.fluxcd.io/v1
|
||||||
|
kind: OCIRepository
|
||||||
|
metadata:
|
||||||
|
name: dragonfly-operator
|
||||||
|
spec:
|
||||||
|
interval: 15m
|
||||||
|
layerSelector:
|
||||||
|
mediaType: application/vnd.cncf.helm.chart.content.v1.tar+gzip
|
||||||
|
operation: copy
|
||||||
|
ref:
|
||||||
|
# Версия чарта dragonfly-operator. В самом Chart.yaml version/appVersion
|
||||||
|
# записаны как v1.6.1, поэтому тег идёт с префиксом v.
|
||||||
|
tag: v1.6.1
|
||||||
|
url: oci://ghcr.io/dragonflydb/dragonfly-operator/helm/dragonfly-operator
|
||||||
@@ -0,0 +1,24 @@
|
|||||||
|
---
|
||||||
|
apiVersion: kustomize.toolkit.fluxcd.io/v1
|
||||||
|
kind: Kustomization
|
||||||
|
metadata:
|
||||||
|
name: dragonfly-operator
|
||||||
|
spec:
|
||||||
|
interval: 1h
|
||||||
|
path: ./kubernetes/apps/database/dragonfly-operator/app
|
||||||
|
prune: true
|
||||||
|
sourceRef:
|
||||||
|
kind: GitRepository
|
||||||
|
name: flux-system
|
||||||
|
namespace: flux-system
|
||||||
|
targetNamespace: database
|
||||||
|
# wait + healthCheck: Kustomization считается Ready только когда оператор
|
||||||
|
# действительно поднялся. На неё будут ссылаться через dependsOn те
|
||||||
|
# Kustomization, которые создают Dragonfly CR (ns потребителя),
|
||||||
|
# поэтому без этого dependsOn не гейтил бы ничего.
|
||||||
|
wait: true
|
||||||
|
healthChecks:
|
||||||
|
- apiVersion: helm.toolkit.fluxcd.io/v2
|
||||||
|
kind: HelmRelease
|
||||||
|
name: dragonfly-operator
|
||||||
|
namespace: database
|
||||||
@@ -0,0 +1,11 @@
|
|||||||
|
---
|
||||||
|
apiVersion: kustomize.config.k8s.io/v1beta1
|
||||||
|
kind: Kustomization
|
||||||
|
namespace: database
|
||||||
|
|
||||||
|
components:
|
||||||
|
- ../../components/sops
|
||||||
|
|
||||||
|
resources:
|
||||||
|
- ./namespace.yaml
|
||||||
|
- ./dragonfly-operator/ks.yaml
|
||||||
@@ -0,0 +1,5 @@
|
|||||||
|
---
|
||||||
|
apiVersion: v1
|
||||||
|
kind: Namespace
|
||||||
|
metadata:
|
||||||
|
name: database
|
||||||
Reference in New Issue
Block a user