refactor: observability/network ks

This commit is contained in:
auricom
2025-04-18 14:17:51 +02:00
parent 26cd2cb62f
commit 476223f52b
87 changed files with 598 additions and 862 deletions

View File

@@ -4,50 +4,52 @@ apiVersion: kustomize.toolkit.fluxcd.io/v1
kind: Kustomization
metadata:
name: &app actions-runner-controller
namespace: flux-system
namespace: &namespace actions-runner-system
spec:
targetNamespace: actions-runner-system
commonMetadata:
labels:
app.kubernetes.io/name: *app
dependsOn:
- name: external-secrets-stores
namespace: external-secrets
interval: 1h
path: ./kubernetes/apps/actions-runner-system/actions-runner-controller/app
prune: true
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
wait: false
interval: 30m
retryInterval: 1m
timeout: 5m
postBuild:
substitute:
APP: *app
prune: true
retryInterval: 2m
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
namespace: flux-system
targetNamespace: *namespace
timeout: 5m
wait: false
---
# yaml-language-server: $schema=https://kubernetes-schemas.pages.dev/kustomize.toolkit.fluxcd.io/kustomization_v1.json
apiVersion: kustomize.toolkit.fluxcd.io/v1
kind: Kustomization
metadata:
name: &app actions-runner-controller-runners
namespace: flux-system
namespace: &namespace actions-runner-system
spec:
targetNamespace: actions-runner-system
commonMetadata:
labels:
app.kubernetes.io/name: *app
dependsOn:
- name: actions-runner-controller
interval: 1h
path: ./kubernetes/apps/actions-runner-system/actions-runner-controller/runners
prune: true
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
wait: false
interval: 30m
retryInterval: 1m
timeout: 5m
postBuild:
substitute:
APP: *app
prune: true
retryInterval: 2m
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
namespace: flux-system
targetNamespace: *namespace
timeout: 5m
wait: false

View File

@@ -2,8 +2,8 @@
# yaml-language-server: $schema=https://raw.githubusercontent.com/SchemaStore/schemastore/master/src/schemas/json/kustomization.json
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
namespace: actions-runner-system
components:
- ../../components/common
resources:
# Pre Flux-Kustomizations
- ./namespace.yaml
# Flux-Kustomizations
- ./actions-runner-controller/ks.yaml

View File

@@ -1,38 +0,0 @@
---
apiVersion: v1
kind: Namespace
metadata:
name: actions-runner-system
labels:
kustomize.toolkit.fluxcd.io/prune: disabled
pod-security.kubernetes.io/enforce: privileged
---
# yaml-language-server: $schema=https://kubernetes-schemas.pages.dev/notification.toolkit.fluxcd.io/provider_v1beta3.json
apiVersion: notification.toolkit.fluxcd.io/v1beta3
kind: Provider
metadata:
name: alert-manager
namespace: actions-runner-system
spec:
type: alertmanager
address: http://kube-prometheus-stack-alertmanager.observability:9093/api/v2/alerts/
---
# yaml-language-server: $schema=https://kubernetes-schemas.pages.dev/notification.toolkit.fluxcd.io/alert_v1beta3.json
apiVersion: notification.toolkit.fluxcd.io/v1beta3
kind: Alert
metadata:
name: alert-manager
namespace: actions-runner-system
spec:
providerRef:
name: alert-manager
eventSeverity: error
eventSources:
- kind: HelmRelease
name: "*"
exclusionList:
- "error.*lookup github\\.com"
- "error.*lookup raw\\.githubusercontent\\.com"
- "dial.*tcp.*timeout"
- "waiting.*socket"
suspend: false

View File

@@ -4,9 +4,8 @@ apiVersion: kustomize.toolkit.fluxcd.io/v1
kind: Kustomization
metadata:
name: &app cert-manager
namespace: flux-system
namespace: &namespace cert-manager
spec:
targetNamespace: cert-manager
commonMetadata:
labels:
app.kubernetes.io/name: *app
@@ -28,4 +27,6 @@ spec:
kind: GitRepository
name: home-ops-kubernetes
namespace: flux-system
targetNamespace: *namespace
timeout: 5m
wait: false

View File

@@ -2,8 +2,8 @@
# yaml-language-server: $schema=https://raw.githubusercontent.com/SchemaStore/schemastore/master/src/schemas/json/kustomization.json
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
namespace: cert-manager
components:
- ../../components/common
resources:
# Pre Flux-Kustomizations
- ./namespace.yaml
# Flux-Kustomizations
- ./cert-manager/ks.yaml

View File

@@ -1,37 +0,0 @@
---
apiVersion: v1
kind: Namespace
metadata:
name: cert-manager
labels:
kustomize.toolkit.fluxcd.io/prune: disabled
---
# yaml-language-server: $schema=https://kubernetes-schemas.pages.dev/notification.toolkit.fluxcd.io/provider_v1beta3.json
apiVersion: notification.toolkit.fluxcd.io/v1beta3
kind: Provider
metadata:
name: alert-manager
namespace: cert-manager
spec:
type: alertmanager
address: http://kube-prometheus-stack-alertmanager.observability:9093/api/v2/alerts/
---
# yaml-language-server: $schema=https://kubernetes-schemas.pages.dev/notification.toolkit.fluxcd.io/alert_v1beta3.json
apiVersion: notification.toolkit.fluxcd.io/v1beta3
kind: Alert
metadata:
name: alert-manager
namespace: cert-manager
spec:
providerRef:
name: alert-manager
eventSeverity: error
eventSources:
- kind: HelmRelease
name: "*"
exclusionList:
- "error.*lookup github\\.com"
- "error.*lookup raw\\.githubusercontent\\.com"
- "dial.*tcp.*timeout"
- "waiting.*socket"
suspend: false

View File

@@ -159,16 +159,16 @@ spec:
enabled: true
repoName: repo1
options:
- --set=20250330-010003F
- --set=20250413-010004F_20250418-020004I
# dataSource:
# pgbackrest:
# stanza: "db"
# configuration: *backupConfig
# global: *backupFlag
# repo:
# name: "repo1"
# s3: *minio
dataSource:
pgbackrest:
stanza: "db"
configuration: *backupConfig
global: *backupFlag
repo:
name: "repo1"
s3: *minio
monitoring:
pgmonitor:

View File

@@ -4,109 +4,134 @@ apiVersion: kustomize.toolkit.fluxcd.io/v1
kind: Kustomization
metadata:
name: &app crunchy-postgres-operator
namespace: flux-system
namespace: &namespace database
spec:
targetNamespace: database
commonMetadata:
labels:
app.kubernetes.io/name: *app
interval: 30m
timeout: 5m
interval: 1h
path: ./kubernetes/apps/database/crunchy-postgres-operator/operator
postBuild:
substitute:
APP: *app
prune: true
retryInterval: 2m
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
wait: true
namespace: flux-system
targetNamespace: *namespace
timeout: 5m
wait: false
---
# yaml-language-server: $schema=https://kubernetes-schemas.pages.dev/kustomize.toolkit.fluxcd.io/kustomization_v1.json
apiVersion: kustomize.toolkit.fluxcd.io/v1
kind: Kustomization
metadata:
name: &app crunchy-postgres-operator-cluster
namespace: flux-system
namespace: &namespace database
spec:
targetNamespace: database
commonMetadata:
labels:
app.kubernetes.io/name: *app
interval: 30m
timeout: 5m
path: ./kubernetes/apps/database/crunchy-postgres-operator/cluster
prune: true
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
wait: true
dependsOn:
- name: crunchy-postgres-operator
- name: external-secrets-stores
namespace: external-secrets
interval: 1h
path: ./kubernetes/apps/database/crunchy-postgres-operator/cluster
postBuild:
substitute:
APP: *app
prune: true
retryInterval: 2m
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
namespace: flux-system
targetNamespace: *namespace
timeout: 5m
wait: false
---
# yaml-language-server: $schema=https://kubernetes-schemas.pages.dev/kustomize.toolkit.fluxcd.io/kustomization_v1.json
apiVersion: kustomize.toolkit.fluxcd.io/v1
kind: Kustomization
metadata:
name: &app crunchy-postgres-operator-secretstore
namespace: flux-system
namespace: &namespace database
spec:
targetNamespace: database
commonMetadata:
labels:
app.kubernetes.io/name: *app
interval: 30m
timeout: 5m
path: ./kubernetes/apps/database/crunchy-postgres-operator/clustersecretstore
prune: true
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
wait: true
dependsOn:
- name: crunchy-postgres-operator-cluster
- name: external-secrets
namespace: external-secrets
interval: 1h
path: ./kubernetes/apps/database/crunchy-postgres-operator/clustersecretstore
postBuild:
substitute:
APP: *app
prune: true
retryInterval: 2m
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
namespace: flux-system
targetNamespace: *namespace
timeout: 5m
wait: false
---
# yaml-language-server: $schema=https://kubernetes-schemas.pages.dev/kustomize.toolkit.fluxcd.io/kustomization_v1.json
apiVersion: kustomize.toolkit.fluxcd.io/v1
kind: Kustomization
metadata:
name: &app crunchy-postgres-userinit-controller
namespace: flux-system
namespace: &namespace database
spec:
targetNamespace: database
commonMetadata:
labels:
app.kubernetes.io/name: *app
interval: 30m
timeout: 5m
dependsOn:
- name: crunchy-postgres-operator-cluster
interval: 1h
path: ./kubernetes/apps/database/crunchy-postgres-operator/userinit-controller
postBuild:
substitute:
APP: *app
prune: true
retryInterval: 2m
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
wait: true
dependsOn:
- name: crunchy-postgres-operator-cluster
namespace: flux-system
targetNamespace: *namespace
timeout: 5m
wait: false
---
# yaml-language-server: $schema=https://kubernetes-schemas.pages.dev/kustomize.toolkit.fluxcd.io/kustomization_v1.json
apiVersion: kustomize.toolkit.fluxcd.io/v1
kind: Kustomization
metadata:
name: &app crunchy-postgres-pgadmin
namespace: flux-system
namespace: &namespace database
spec:
targetNamespace: database
commonMetadata:
labels:
app.kubernetes.io/name: *app
interval: 30m
timeout: 5m
dependsOn:
- name: crunchy-postgres-operator-cluster
interval: 1h
path: ./kubernetes/apps/database/crunchy-postgres-operator/pgadmin
postBuild:
substitute:
APP: *app
prune: true
retryInterval: 2m
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
wait: true
dependsOn:
- name: crunchy-postgres-operator-cluster
namespace: flux-system
targetNamespace: *namespace
timeout: 5m
wait: false

View File

@@ -18,6 +18,7 @@ spec:
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
namespace: flux-system
wait: true
interval: 30m
retryInterval: 1m
@@ -41,6 +42,7 @@ spec:
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
namespace: flux-system
wait: true
interval: 30m
retryInterval: 1m

View File

@@ -12,6 +12,7 @@ spec:
app.kubernetes.io/name: *app
dependsOn:
- name: rook-ceph-cluster
namespace: rook-ceph
- name: external-secrets-stores
namespace: external-secrets
path: ./kubernetes/apps/database/emqx/app
@@ -19,6 +20,7 @@ spec:
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
namespace: flux-system
wait: false
interval: 30m
retryInterval: 1m

View File

@@ -17,10 +17,12 @@ spec:
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
namespace: flux-system
dependsOn:
- name: external-secrets-stores
namespace: external-secrets
- name: volsync
namespace: volsync
wait: true
interval: 30m
retryInterval: 1m

View File

@@ -2,10 +2,10 @@
# yaml-language-server: $schema=https://json.schemastore.org/kustomization
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
namespace: database
components:
- ../../components/common
resources:
# Pre Flux-Kustomizations
- ./namespace.yaml
# Flux-Kustomizations
- ./crunchy-postgres-operator/ks.yaml
- ./dragonfly/ks.yaml
- ./emqx/ks.yaml

View File

@@ -1,37 +0,0 @@
---
apiVersion: v1
kind: Namespace
metadata:
name: database
labels:
kustomize.toolkit.fluxcd.io/prune: disabled
---
# yaml-language-server: $schema=https://kubernetes-schemas.pages.dev/notification.toolkit.fluxcd.io/provider_v1beta3.json
apiVersion: notification.toolkit.fluxcd.io/v1beta3
kind: Provider
metadata:
name: alert-manager
namespace: database
spec:
type: alertmanager
address: http://kube-prometheus-stack-alertmanager.observability:9093/api/v2/alerts/
---
# yaml-language-server: $schema=https://kubernetes-schemas.pages.dev/notification.toolkit.fluxcd.io/alert_v1beta3.json
apiVersion: notification.toolkit.fluxcd.io/v1beta3
kind: Alert
metadata:
name: alert-manager
namespace: database
spec:
providerRef:
name: alert-manager
eventSeverity: error
eventSources:
- kind: HelmRelease
name: "*"
exclusionList:
- "error.*lookup github\\.com"
- "error.*lookup raw\\.githubusercontent\\.com"
- "dial.*tcp.*timeout"
- "waiting.*socket"
suspend: false

View File

@@ -11,9 +11,9 @@ spec:
app.kubernetes.io/name: *app
dependsOn:
- name: crunchy-postgres-operator-cluster
namespace: flux-system
namespace: database
- name: dragonfly-cluster
namespace: flux-system
namespace: database
- name: external-secrets-stores
namespace: external-secrets
components:

View File

@@ -11,13 +11,13 @@ spec:
app.kubernetes.io/name: *app
dependsOn:
- name: crunchy-postgres-operator-cluster
namespace: flux-system
namespace: database
- name: external-secrets-stores
namespace: external-secrets
- name: rook-ceph-cluster
namespace: flux-system
namespace: rook-ceph
- name: volsync
namespace: flux-system
namespace: volsync
components:
- ../../../../components/gatus/guarded
- ../../../../components/volsync

View File

@@ -13,9 +13,9 @@ spec:
- name: external-secrets-stores
namespace: external-secrets
- name: rook-ceph-cluster
namespace: flux-system
namespace: rook-ceph
- name: volsync
namespace: flux-system
namespace: volsync
components:
- ../../../../components/gatus/guarded
- ../../../../components/volsync

View File

@@ -14,9 +14,9 @@ spec:
- ../../../../components/volsync
dependsOn:
- name: rook-ceph-cluster
namespace: flux-system
namespace: rook-ceph
- name: volsync
namespace: flux-system
namespace: volsync
interval: 1h
path: ./kubernetes/apps/default/exercisediary/app
postBuild:

View File

@@ -14,7 +14,7 @@ spec:
namespace: external-secrets
- name: qbittorrent
- name: volsync
namespace: flux-system
namespace: volsync
components:
- ../../../../components/gatus/guarded
- ../../../../components/volsync

View File

@@ -13,7 +13,7 @@ spec:
- name: external-secrets-stores
namespace: external-secrets
- name: node-feature-discovery-rules
namespace: flux-system
namespace: kube-system
components:
- ../../../../components/gatus/guarded
- ../../../../components/volsync

View File

@@ -13,11 +13,11 @@ spec:
- ../../../../components/gatus/guarded
dependsOn:
- name: crunchy-postgres-operator-cluster
namespace: flux-system
namespace: database
- name: external-secrets-stores
namespace: external-secrets
- name: dragonfly-cluster
namespace: flux-system
namespace: database
interval: 1h
path: ./kubernetes/apps/default/ghostfolio/app
postBuild:

View File

@@ -11,11 +11,11 @@ spec:
app.kubernetes.io/name: *app
dependsOn:
- name: crunchy-postgres-operator-cluster
namespace: flux-system
namespace: database
- name: external-secrets-stores
namespace: external-secrets
- name: volsync
namespace: flux-system
namespace: volsync
components:
- ../../../../components/gatus/guarded
- ../../../../components/volsync

View File

@@ -11,11 +11,11 @@ spec:
app.kubernetes.io/name: *app
dependsOn:
- name: rook-ceph-cluster
namespace: flux-system
namespace: rook-ceph
- name: external-secrets-stores
namespace: external-secrets
- name: volsync
namespace: flux-system
namespace: volsync
components:
- ../../../../components/gatus/external
- ../../../../components/volsync

View File

@@ -11,11 +11,11 @@ spec:
app.kubernetes.io/name: *app
dependsOn:
- name: rook-ceph-cluster
namespace: flux-system
namespace: rook-ceph
- name: external-secrets-stores
namespace: external-secrets
- name: volsync
namespace: flux-system
namespace: volsync
components:
- ../../../../components/gatus/guarded
- ../../../../components/volsync

View File

@@ -13,7 +13,7 @@ spec:
- ../../../../components/gatus/external
dependsOn:
- name: crunchy-postgres-operator-cluster
namespace: flux-system
namespace: database
- name: external-secrets-stores
namespace: external-secrets
interval: 1h

View File

@@ -13,9 +13,9 @@ spec:
- name: external-secrets-stores
namespace: external-secrets
- name: rook-ceph-cluster
namespace: flux-system
namespace: rook-ceph
- name: volsync
namespace: flux-system
namespace: volsync
components:
- ../../../../components/volsync
interval: 1h

View File

@@ -13,9 +13,9 @@ spec:
- name: external-secrets-stores
namespace: external-secrets
- name: rook-ceph-cluster
namespace: flux-system
namespace: rook-ceph
- name: volsync
namespace: flux-system
namespace: volsync
components:
- ../../../../components/gatus/guarded
- ../../../../components/volsync

View File

@@ -11,13 +11,13 @@ spec:
app.kubernetes.io/name: *app
dependsOn:
- name: crunchy-postgres-operator-cluster
namespace: flux-system
namespace: database
- name: external-secrets-stores
namespace: external-secrets
- name: rook-ceph-cluster
namespace: flux-system
namespace: rook-ceph
- name: volsync
namespace: flux-system
namespace: volsync
components:
- ../../../../components/gatus/guarded
- ../../../../components/volsync

View File

@@ -13,7 +13,7 @@ spec:
- ../../../../components/gatus/guarded
dependsOn:
- name: crunchy-postgres-operator-cluster
namespace: flux-system
namespace: database
interval: 1h
path: ./kubernetes/apps/default/lldap/app
postBuild:

View File

@@ -11,7 +11,7 @@ spec:
app.kubernetes.io/name: *app
dependsOn:
- name: volsync
namespace: flux-system
namespace: volsync
components:
- ../../../../components/gatus/guarded
- ../../../../components/volsync

View File

@@ -14,15 +14,15 @@ spec:
- ../../../../components/volsync
dependsOn:
- name: crunchy-postgres-operator-cluster
namespace: flux-system
namespace: database
- name: dragonfly-cluster
namespace: flux-system
namespace: database
- name: external-secrets-stores
namespace: external-secrets
- name: rook-ceph-cluster
namespace: flux-system
namespace: rook-ceph
- name: volsync
namespace: flux-system
namespace: volsync
interval: 1h
path: ./kubernetes/apps/default/lychee/app
postBuild:

View File

@@ -13,9 +13,9 @@ spec:
- name: external-secrets-stores
namespace: external-secrets
- name: rook-ceph-cluster
namespace: flux-system
namespace: rook-ceph
- name: volsync
namespace: flux-system
namespace: volsync
components:
- ../../../../components/gatus/external
- ../../../../components/volsync

View File

@@ -13,9 +13,9 @@ spec:
- ../../../../components/gatus/guarded
dependsOn:
- name: crunchy-postgres-operator-cluster
namespace: flux-system
namespace: database
- name: dragonfly-cluster
namespace: flux-system
namespace: database
- name: external-secrets-stores
namespace: external-secrets
interval: 1h

View File

@@ -13,9 +13,9 @@ spec:
- ../../../../components/gatus/guarded
dependsOn:
- name: crunchy-postgres-operator-cluster
namespace: flux-system
namespace: database
- name: dragonfly-cluster
namespace: flux-system
namespace: database
- name: external-secrets-stores
namespace: external-secrets
interval: 1h

View File

@@ -11,7 +11,7 @@ spec:
app.kubernetes.io/name: *app
dependsOn:
- name: crunchy-postgres-operator-cluster
namespace: flux-system
namespace: database
- name: external-secrets-stores
namespace: external-secrets
components:

View File

@@ -11,9 +11,9 @@ spec:
app.kubernetes.io/name: *app
dependsOn:
- name: rook-ceph-cluster
namespace: flux-system
namespace: rook-ceph
- name: volsync
namespace: flux-system
namespace: volsync
components:
- ../../../../components/gatus/guarded
- ../../../../components/volsync

View File

@@ -11,13 +11,13 @@ spec:
app.kubernetes.io/name: *app
dependsOn:
- name: crunchy-postgres-operator-cluster
namespace: flux-system
namespace: database
- name: external-secrets-stores
namespace: external-secrets
- name: rook-ceph-cluster
namespace: flux-system
namespace: rook-ceph
- name: volsync
namespace: flux-system
namespace: volsync
components:
- ../../../../components/gatus/guarded
- ../../../../components/volsync

View File

@@ -11,9 +11,9 @@ spec:
app.kubernetes.io/name: *app
dependsOn:
- name: rook-ceph-cluster
namespace: flux-system
namespace: rook-ceph
- name: volsync
namespace: flux-system
namespace: volsync
components:
- ../../../../components/gatus/guarded
- ../../../../components/volsync

View File

@@ -13,9 +13,9 @@ spec:
- name: external-secrets-stores
namespace: external-secrets
- name: rook-ceph-cluster
namespace: flux-system
namespace: rook-ceph
- name: volsync
namespace: flux-system
namespace: volsync
components:
- ../../../../components/gatus/guarded
- ../../../../components/volsync

View File

@@ -11,13 +11,13 @@ spec:
app.kubernetes.io/name: *app
dependsOn:
- name: crunchy-postgres-operator-cluster
namespace: flux-system
namespace: database
- name: external-secrets-stores
namespace: external-secrets
- name: rook-ceph-cluster
namespace: flux-system
namespace: rook-ceph
- name: volsync
namespace: flux-system
namespace: volsync
components:
- ../../../../components/gatus/guarded
- ../../../../components/volsync

View File

@@ -14,13 +14,13 @@ spec:
- ../../../../components/volsync
dependsOn:
- name: crunchy-postgres-operator-cluster
namespace: flux-system
namespace: database
- name: external-secrets-stores
namespace: external-secrets
- name: rook-ceph-cluster
namespace: flux-system
namespace: rook-ceph
- name: volsync
namespace: flux-system
namespace: volsync
interval: 1h
path: ./kubernetes/apps/default/tandoor/app
postBuild:

View File

@@ -12,9 +12,9 @@ spec:
dependsOn:
- name: rook-ceph-cluster
namespace: flux-system
namespace: rook-ceph
- name: volsync
namespace: flux-system
namespace: volsync
components:
- ../../../../components/gatus/guarded
- ../../../../components/volsync

View File

@@ -11,9 +11,9 @@ spec:
app.kubernetes.io/name: *app
dependsOn:
- name: rook-ceph-cluster
namespace: flux-system
namespace: rook-ceph
- name: volsync
namespace: flux-system
namespace: volsync
components:
- ../../../../components/gatus/guarded
- ../../../../components/volsync

View File

@@ -11,11 +11,11 @@ spec:
app.kubernetes.io/name: *app
dependsOn:
- name: node-feature-discovery-rules
namespace: flux-system
namespace: kube-system
- name: rook-ceph-cluster
namespace: flux-system
namespace: rook-ceph
- name: volsync
namespace: flux-system
namespace: volsync
components:
- ../../../../components/gatus/guarded
- ../../../../components/volsync

View File

@@ -11,11 +11,11 @@ spec:
app.kubernetes.io/name: *app
dependsOn:
- name: node-feature-discovery-rules
namespace: flux-system
namespace: kube-system
- name: rook-ceph-cluster
namespace: flux-system
namespace: rook-ceph
- name: volsync
namespace: flux-system
namespace: volsync
components:
- ../../../../components/gatus/guarded
- ../../../../components/volsync

View File

@@ -4,35 +4,50 @@ apiVersion: kustomize.toolkit.fluxcd.io/v1
kind: Kustomization
metadata:
name: &app cilium-app
namespace: flux-system
namespace: &namespace kube-system
spec:
targetNamespace: kube-system
commonMetadata:
labels:
app.kubernetes.io/name: *app
interval: 1h
path: ./kubernetes/apps/kube-system/cilium/app
postBuild:
substitute:
APP: *app
prune: false
retryInterval: 2m
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
wait: false
interval: 30m
retryInterval: 1m
namespace: flux-system
targetNamespace: *namespace
timeout: 5m
wait: false
---
# yaml-language-server: $schema=https://kubernetes-schemas.pages.dev/kustomize.toolkit.fluxcd.io/kustomization_v1.json
apiVersion: kustomize.toolkit.fluxcd.io/v1
kind: Kustomization
metadata:
name: &app cilium-config
namespace: flux-system
namespace: &namespace kube-system
spec:
targetNamespace: kube-system
commonMetadata:
labels:
app.kubernetes.io/name: *app
dependsOn:
- name: cilium-app
namespace: *namespace
interval: 1h
path: ./kubernetes/apps/kube-system/cilium/config
postBuild:
substitute:
APP: *app
prune: false
retryInterval: 2m
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
wait: true
interval: 30m
retryInterval: 1m
namespace: flux-system
targetNamespace: *namespace
timeout: 5m
wait: false

View File

@@ -4,21 +4,22 @@ apiVersion: kustomize.toolkit.fluxcd.io/v1
kind: Kustomization
metadata:
name: &app coredns
namespace: flux-system
namespace: &namespace kube-system
spec:
targetNamespace: kube-system
commonMetadata:
labels:
app.kubernetes.io/name: *app
interval: 1h
path: ./kubernetes/apps/kube-system/coredns/app
prune: false
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
wait: false
interval: 30m
retryInterval: 1m
timeout: 5m
postBuild:
substitute:
APP: *app
prune: false
retryInterval: 2m
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
namespace: flux-system
targetNamespace: *namespace
timeout: 5m
wait: false

View File

@@ -4,21 +4,22 @@ apiVersion: kustomize.toolkit.fluxcd.io/v1
kind: Kustomization
metadata:
name: &app descheduler
namespace: flux-system
namespace: &namespace kube-system
spec:
targetNamespace: kube-system
commonMetadata:
labels:
app.kubernetes.io/name: *app
interval: 1h
path: ./kubernetes/apps/kube-system/descheduler/app
prune: true
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
wait: false
interval: 30m
retryInterval: 1m
timeout: 5m
postBuild:
substitute:
APP: *app
prune: true
retryInterval: 2m
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
namespace: flux-system
targetNamespace: *namespace
timeout: 5m
wait: false

View File

@@ -4,21 +4,22 @@ apiVersion: kustomize.toolkit.fluxcd.io/v1
kind: Kustomization
metadata:
name: &app fstrim
namespace: flux-system
namespace: &namespace kube-system
spec:
targetNamespace: kube-system
commonMetadata:
labels:
app.kubernetes.io/name: *app
interval: 1h
path: ./kubernetes/apps/kube-system/fstrim/app
prune: true
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
wait: false
interval: 30m
retryInterval: 1m
timeout: 5m
postBuild:
substitute:
APP: *app
prune: true
retryInterval: 2m
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
namespace: flux-system
targetNamespace: *namespace
timeout: 5m
wait: false

View File

@@ -4,45 +4,47 @@ apiVersion: kustomize.toolkit.fluxcd.io/v1
kind: Kustomization
metadata:
name: &app intel-device-plugin
namespace: flux-system
namespace: &namespace kube-system
spec:
targetNamespace: kube-system
commonMetadata:
labels:
app.kubernetes.io/name: *app
interval: 1h
path: ./kubernetes/apps/kube-system/intel-device-plugin/app
prune: true
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
wait: false
interval: 30m
retryInterval: 1m
timeout: 5m
postBuild:
substitute:
APP: *app
prune: true
retryInterval: 2m
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
namespace: flux-system
targetNamespace: *namespace
timeout: 5m
wait: false
---
# yaml-language-server: $schema=https://kubernetes-schemas.pages.dev/kustomize.toolkit.fluxcd.io/kustomization_v1.json
apiVersion: kustomize.toolkit.fluxcd.io/v1
kind: Kustomization
metadata:
name: &app intel-device-plugin-gpu
namespace: flux-system
namespace: &namespace kube-system
spec:
targetNamespace: kube-system
commonMetadata:
labels:
app.kubernetes.io/name: *app
interval: 1h
path: ./kubernetes/apps/kube-system/intel-device-plugin/gpu
prune: true
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
wait: false
interval: 30m
retryInterval: 1m
timeout: 5m
postBuild:
substitute:
APP: *app
prune: true
retryInterval: 2m
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
namespace: flux-system
targetNamespace: *namespace
timeout: 5m
wait: false

View File

@@ -4,21 +4,22 @@ apiVersion: kustomize.toolkit.fluxcd.io/v1
kind: Kustomization
metadata:
name: &app kubelet-csr-approver
namespace: flux-system
namespace: &namespace kube-system
spec:
targetNamespace: kube-system
commonMetadata:
labels:
app.kubernetes.io/name: *app
interval: 1h
path: ./kubernetes/apps/kube-system/kubelet-csr-approver/app
prune: true
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
wait: false
interval: 30m
retryInterval: 1m
timeout: 5m
postBuild:
substitute:
APP: *app
prune: true
retryInterval: 2m
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
namespace: flux-system
targetNamespace: *namespace
timeout: 5m
wait: false

View File

@@ -2,16 +2,15 @@
# yaml-language-server: $schema=https://raw.githubusercontent.com/SchemaStore/schemastore/master/src/schemas/json/kustomization.json
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
namespace: kube-system
components:
- ../../components/common
resources:
# Pre Flux-Kustomizations
- ./namespace.yaml
# Flux-Kustomizations
- ./cilium/ks.yaml
- ./coredns/ks.yaml
- ./descheduler/ks.yaml
- ./fstrim/ks.yaml
- ./intel-device-plugin/ks.yaml
# - ./k8s-ycl/ks.yaml
- ./kubelet-csr-approver/ks.yaml
- ./metrics-server/ks.yaml
- ./node-feature-discovery/ks.yaml

View File

@@ -4,21 +4,22 @@ apiVersion: kustomize.toolkit.fluxcd.io/v1
kind: Kustomization
metadata:
name: &app metrics-server
namespace: flux-system
namespace: &namespace kube-system
spec:
targetNamespace: kube-system
commonMetadata:
labels:
app.kubernetes.io/name: *app
interval: 1h
path: ./kubernetes/apps/kube-system/metrics-server/app
prune: true
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
wait: false
interval: 30m
retryInterval: 1m
timeout: 5m
postBuild:
substitute:
APP: *app
prune: true
retryInterval: 2m
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
namespace: flux-system
targetNamespace: *namespace
timeout: 5m
wait: false

View File

@@ -1,37 +0,0 @@
---
apiVersion: v1
kind: Namespace
metadata:
name: kube-system
labels:
kustomize.toolkit.fluxcd.io/prune: disabled
---
# yaml-language-server: $schema=https://kubernetes-schemas.pages.dev/notification.toolkit.fluxcd.io/provider_v1beta3.json
apiVersion: notification.toolkit.fluxcd.io/v1beta3
kind: Provider
metadata:
name: alert-manager
namespace: kube-system
spec:
type: alertmanager
address: http://kube-prometheus-stack-alertmanager.observability:9093/api/v2/alerts/
---
# yaml-language-server: $schema=https://kubernetes-schemas.pages.dev/notification.toolkit.fluxcd.io/alert_v1beta3.json
apiVersion: notification.toolkit.fluxcd.io/v1beta3
kind: Alert
metadata:
name: alert-manager
namespace: kube-system
spec:
providerRef:
name: alert-manager
eventSeverity: error
eventSources:
- kind: HelmRelease
name: "*"
exclusionList:
- "error.*lookup github\\.com"
- "error.*lookup raw\\.githubusercontent\\.com"
- "dial.*tcp.*timeout"
- "waiting.*socket"
suspend: false

View File

@@ -4,47 +4,49 @@ apiVersion: kustomize.toolkit.fluxcd.io/v1
kind: Kustomization
metadata:
name: &app node-feature-discovery
namespace: flux-system
namespace: &namespace kube-system
spec:
targetNamespace: kube-system
commonMetadata:
labels:
app.kubernetes.io/name: *app
interval: 1h
path: ./kubernetes/apps/kube-system/node-feature-discovery/app
prune: true
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
wait: false
interval: 30m
retryInterval: 1m
timeout: 5m
postBuild:
substitute:
APP: *app
prune: true
retryInterval: 2m
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
namespace: flux-system
targetNamespace: *namespace
timeout: 5m
wait: false
---
# yaml-language-server: $schema=https://kubernetes-schemas.pages.dev/kustomize.toolkit.fluxcd.io/kustomization_v1.json
apiVersion: kustomize.toolkit.fluxcd.io/v1
kind: Kustomization
metadata:
name: node-feature-discovery-rules
namespace: flux-system
namespace: &namespace kube-system
spec:
targetNamespace: kube-system
commonMetadata:
labels:
app.kubernetes.io/name: &app node-feature-discovery
dependsOn:
- name: node-feature-discovery
interval: 1h
path: ./kubernetes/apps/kube-system/node-feature-discovery/rules
prune: true
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
wait: false
interval: 30m
retryInterval: 1m
timeout: 5m
postBuild:
substitute:
APP: *app
prune: true
retryInterval: 2m
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
namespace: flux-system
targetNamespace: *namespace
timeout: 5m
wait: false

View File

@@ -4,21 +4,22 @@ apiVersion: kustomize.toolkit.fluxcd.io/v1
kind: Kustomization
metadata:
name: &app reloader
namespace: flux-system
namespace: &namespace kube-system
spec:
targetNamespace: kube-system
commonMetadata:
labels:
app.kubernetes.io/name: *app
interval: 1h
path: ./kubernetes/apps/kube-system/reloader/app
prune: true
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
wait: false
interval: 30m
retryInterval: 1m
timeout: 5m
postBuild:
substitute:
APP: *app
prune: false
retryInterval: 2m
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
namespace: flux-system
targetNamespace: *namespace
timeout: 5m
wait: false

View File

@@ -4,21 +4,22 @@ apiVersion: kustomize.toolkit.fluxcd.io/v1
kind: Kustomization
metadata:
name: &app snapshot-controller
namespace: flux-system
namespace: &namespace kube-system
spec:
targetNamespace: kube-system
commonMetadata:
labels:
app.kubernetes.io/name: *app
interval: 1h
path: ./kubernetes/apps/kube-system/snapshot-controller/app
prune: true
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
wait: false
interval: 30m
retryInterval: 1m
timeout: 5m
postBuild:
substitute:
APP: *app
prune: false
retryInterval: 2m
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
namespace: flux-system
targetNamespace: *namespace
timeout: 5m
wait: false

View File

@@ -4,21 +4,22 @@ apiVersion: kustomize.toolkit.fluxcd.io/v1
kind: Kustomization
metadata:
name: &app spegel
namespace: flux-system
namespace: &namespace kube-system
spec:
targetNamespace: kube-system
commonMetadata:
labels:
app.kubernetes.io/name: *app
interval: 1h
path: ./kubernetes/apps/kube-system/spegel/app
prune: true
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
wait: false
interval: 30m
retryInterval: 1m
timeout: 5m
postBuild:
substitute:
APP: *app
prune: false
retryInterval: 2m
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
namespace: flux-system
targetNamespace: *namespace
timeout: 5m
wait: false

View File

@@ -2,8 +2,8 @@
# yaml-language-server: $schema=https://raw.githubusercontent.com/SchemaStore/schemastore/master/src/schemas/json/kustomization.json
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
namespace: kyverno
components:
- ../../components/common
resources:
# Pre Flux-Kustomizations
- ./namespace.yaml
# Flux-Kustomizations
- ./kyverno/ks.yaml

View File

@@ -4,39 +4,49 @@ apiVersion: kustomize.toolkit.fluxcd.io/v1
kind: Kustomization
metadata:
name: &app kyverno
namespace: flux-system
namespace: &namespace kyverno
spec:
targetNamespace: kyverno
commonMetadata:
labels:
app.kubernetes.io/name: *app
interval: 1h
path: ./kubernetes/apps/kyverno/kyverno/app
postBuild:
substitute:
APP: *app
prune: true
retryInterval: 2m
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
wait: true
interval: 30m
namespace: flux-system
targetNamespace: *namespace
timeout: 5m
wait: false
---
# yaml-language-server: $schema=https://kubernetes-schemas.pages.dev/kustomize.toolkit.fluxcd.io/kustomization_v1.json
apiVersion: kustomize.toolkit.fluxcd.io/v1
kind: Kustomization
metadata:
name: &app kyverno-policies
namespace: flux-system
namespace: &namespace kyverno
spec:
targetNamespace: kyverno
commonMetadata:
labels:
app.kubernetes.io/name: *app
dependsOn:
- name: kyverno
interval: 1h
path: ./kubernetes/apps/kyverno/kyverno/policies
postBuild:
substitute:
APP: *app
prune: true
retryInterval: 2m
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
wait: true
interval: 30m
namespace: flux-system
targetNamespace: *namespace
timeout: 5m
wait: false

View File

@@ -1,38 +0,0 @@
---
apiVersion: v1
kind: Namespace
metadata:
name: kyverno
annotations:
kustomize.toolkit.fluxcd.io/prune: disabled
volsync.backube/privileged-movers: "true"
---
# yaml-language-server: $schema=https://kubernetes-schemas.pages.dev/notification.toolkit.fluxcd.io/provider_v1beta3.json
apiVersion: notification.toolkit.fluxcd.io/v1beta3
kind: Provider
metadata:
name: alert-manager
namespace: kyverno
spec:
type: alertmanager
address: http://kube-prometheus-stack-alertmanager.observability:9093/api/v2/alerts/
---
# yaml-language-server: $schema=https://kubernetes-schemas.pages.dev/notification.toolkit.fluxcd.io/alert_v1beta3.json
apiVersion: notification.toolkit.fluxcd.io/v1beta3
kind: Alert
metadata:
name: alert-manager
namespace: kyverno
spec:
providerRef:
name: alert-manager
eventSeverity: error
eventSources:
- kind: HelmRelease
name: "*"
exclusionList:
- "error.*lookup github\\.com"
- "error.*lookup raw\\.githubusercontent\\.com"
- "dial.*tcp.*timeout"
- "waiting.*socket"
suspend: false

View File

@@ -4,9 +4,8 @@ apiVersion: kustomize.toolkit.fluxcd.io/v1
kind: Kustomization
metadata:
name: &app cloudflared
namespace: flux-system
namespace: &namespace network
spec:
targetNamespace: network
commonMetadata:
labels:
app.kubernetes.io/name: *app
@@ -14,14 +13,17 @@ spec:
- name: external-dns-cloudflare
- name: external-secrets-stores
namespace: external-secrets
interval: 1h
path: ./kubernetes/apps/network/cloudflared/app
prune: false
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
wait: false
interval: 30m
timeout: 5m
postBuild:
substitute:
APP: *app
prune: true
retryInterval: 2m
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
namespace: flux-system
targetNamespace: *namespace
timeout: 5m
wait: false

View File

@@ -4,24 +4,22 @@ apiVersion: kustomize.toolkit.fluxcd.io/v1
kind: Kustomization
metadata:
name: &app external-dns-cloudflare
namespace: flux-system
namespace: &namespace network
spec:
targetNamespace: network
commonMetadata:
labels:
app.kubernetes.io/name: *app
interval: 1h
path: ./kubernetes/apps/network/external-dns/cloudflare
prune: true
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
dependsOn:
- name: external-secrets-stores
namespace: external-secrets
wait: false
interval: 30m
retryInterval: 1m
timeout: 5m
postBuild:
substitute:
APP: *app
prune: true
retryInterval: 2m
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
namespace: flux-system
targetNamespace: *namespace
timeout: 5m
wait: false

View File

@@ -4,21 +4,22 @@ apiVersion: kustomize.toolkit.fluxcd.io/v1
kind: Kustomization
metadata:
name: &app k8s-gateway
namespace: flux-system
namespace: &namespace network
spec:
targetNamespace: network
commonMetadata:
labels:
app.kubernetes.io/name: *app
interval: 1h
path: ./kubernetes/apps/network/k8s-gateway/app
prune: true
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
wait: false
interval: 30m
retryInterval: 1m
timeout: 5m
postBuild:
substitute:
APP: *app
prune: true
retryInterval: 2m
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
namespace: flux-system
targetNamespace: *namespace
timeout: 5m
wait: false

View File

@@ -2,10 +2,10 @@
# yaml-language-server: $schema=https://raw.githubusercontent.com/SchemaStore/schemastore/master/src/schemas/json/kustomization.json
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
namespace: network
components:
- ../../components/common
resources:
# Pre Flux-Kustomizations
- ./namespace.yaml
# Flux-Kustomizations
- ./cloudflared/ks.yaml
- ./external-dns/ks.yaml
- ./nginx/ks.yaml

View File

@@ -1,37 +0,0 @@
---
apiVersion: v1
kind: Namespace
metadata:
name: network
labels:
kustomize.toolkit.fluxcd.io/prune: disabled
---
# yaml-language-server: $schema=https://kubernetes-schemas.pages.dev/notification.toolkit.fluxcd.io/provider_v1beta3.json
apiVersion: notification.toolkit.fluxcd.io/v1beta3
kind: Provider
metadata:
name: alert-manager
namespace: network
spec:
type: alertmanager
address: http://kube-prometheus-stack-alertmanager.observability:9093/api/v2/alerts/
---
# yaml-language-server: $schema=https://kubernetes-schemas.pages.dev/notification.toolkit.fluxcd.io/alert_v1beta3.json
apiVersion: notification.toolkit.fluxcd.io/v1beta3
kind: Alert
metadata:
name: alert-manager
namespace: network
spec:
providerRef:
name: alert-manager
eventSeverity: error
eventSources:
- kind: HelmRelease
name: "*"
exclusionList:
- "error.*lookup github\\.com"
- "error.*lookup raw\\.githubusercontent\\.com"
- "dial.*tcp.*timeout"
- "waiting.*socket"
suspend: false

View File

@@ -4,75 +4,81 @@ apiVersion: kustomize.toolkit.fluxcd.io/v1
kind: Kustomization
metadata:
name: &app nginx-certificates
namespace: flux-system
namespace: &namespace network
spec:
targetNamespace: network
commonMetadata:
labels:
app.kubernetes.io/name: *app
dependsOn:
- name: cert-manager
namespace: cert-manager
interval: 1h
path: ./kubernetes/apps/network/nginx/certificates
prune: true
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
wait: false
interval: 30m
retryInterval: 1m
timeout: 5m
postBuild:
substitute:
APP: *app
prune: true
retryInterval: 2m
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
namespace: flux-system
targetNamespace: *namespace
timeout: 5m
wait: false
---
# yaml-language-server: $schema=https://kubernetes-schemas.pages.dev/kustomize.toolkit.fluxcd.io/kustomization_v1.json
apiVersion: kustomize.toolkit.fluxcd.io/v1
kind: Kustomization
metadata:
name: &app nginx-external
namespace: flux-system
namespace: &namespace network
spec:
targetNamespace: network
commonMetadata:
labels:
app.kubernetes.io/name: *app
dependsOn:
- name: nginx-certificates
namespace: *namespace
interval: 1h
path: ./kubernetes/apps/network/nginx/external
prune: true
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
wait: false
interval: 30m
retryInterval: 1m
timeout: 5m
postBuild:
substitute:
APP: *app
prune: true
retryInterval: 2m
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
namespace: flux-system
targetNamespace: *namespace
timeout: 5m
wait: false
---
# yaml-language-server: $schema=https://kubernetes-schemas.pages.dev/kustomize.toolkit.fluxcd.io/kustomization_v1.json
apiVersion: kustomize.toolkit.fluxcd.io/v1
kind: Kustomization
metadata:
name: &app nginx-internal
namespace: flux-system
namespace: &namespace network
spec:
targetNamespace: network
commonMetadata:
labels:
app.kubernetes.io/name: *app
dependsOn:
- name: nginx-certificates
namespace: *namespace
interval: 1h
path: ./kubernetes/apps/network/nginx/internal
prune: true
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
wait: false
interval: 30m
retryInterval: 1m
timeout: 5m
postBuild:
substitute:
APP: *app
prune: true
retryInterval: 2m
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
namespace: flux-system
targetNamespace: *namespace
timeout: 5m
wait: false

View File

@@ -4,28 +4,31 @@ apiVersion: kustomize.toolkit.fluxcd.io/v1
kind: Kustomization
metadata:
name: &app apprise
namespace: flux-system
namespace: &namespace observability
spec:
targetNamespace: observability
commonMetadata:
labels:
app.kubernetes.io/name: *app
dependsOn:
- name: rook-ceph-cluster
namespace: rook-ceph
- name: volsync
namespace: volsync
components:
- ../../../../components/gatus/guarded
- ../../../../components/volsync
interval: 1h
path: ./kubernetes/apps/observability/apprise/app
prune: true
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
wait: false
interval: 30m
retryInterval: 1m
timeout: 5m
postBuild:
substitute:
APP: *app
VOLSYNC_CAPACITY: 1Gi
prune: true
retryInterval: 2m
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
namespace: flux-system
targetNamespace: *namespace
timeout: 5m
wait: false

View File

@@ -4,17 +4,22 @@ apiVersion: kustomize.toolkit.fluxcd.io/v1
kind: Kustomization
metadata:
name: &app blackbox-exporter
namespace: flux-system
namespace: &namespace observability
spec:
targetNamespace: observability
commonMetadata:
labels:
app.kubernetes.io/name: *app
interval: 1h
path: ./kubernetes/apps/observability/blackbox-exporter/app
postBuild:
substitute:
APP: *app
prune: true
retryInterval: 2m
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
namespace: flux-system
targetNamespace: *namespace
timeout: 5m
wait: false
interval: 30m
timeout: 15m

View File

@@ -4,24 +4,25 @@ apiVersion: kustomize.toolkit.fluxcd.io/v1
kind: Kustomization
metadata:
name: &app gatus
namespace: flux-system
namespace: &namespace observability
spec:
targetNamespace: observability
commonMetadata:
labels:
app.kubernetes.io/name: *app
dependsOn:
- name: external-secrets-stores
namespace: external-secrets
interval: 1h
path: ./kubernetes/apps/observability/gatus/app
prune: true
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
wait: false
interval: 30m
retryInterval: 1m
timeout: 5m
postBuild:
substitute:
APP: *app
prune: true
retryInterval: 2m
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
namespace: flux-system
targetNamespace: *namespace
timeout: 5m
wait: false

View File

@@ -4,21 +4,22 @@ apiVersion: kustomize.toolkit.fluxcd.io/v1
kind: Kustomization
metadata:
name: &app grafana
namespace: flux-system
namespace: &namespace observability
spec:
targetNamespace: observability
commonMetadata:
labels:
app.kubernetes.io/name: *app
interval: 1h
path: ./kubernetes/apps/observability/grafana/app
prune: true
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
wait: false
interval: 30m
retryInterval: 1m
timeout: 5m
postBuild:
substitute:
APP: *app
prune: true
retryInterval: 2m
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
namespace: flux-system
targetNamespace: *namespace
timeout: 5m
wait: false

View File

@@ -4,41 +4,52 @@ apiVersion: kustomize.toolkit.fluxcd.io/v1
kind: Kustomization
metadata:
name: &app kube-prometheus-stack-crds
namespace: flux-system
namespace: &namespace observability
spec:
targetNamespace: observability
commonMetadata:
labels:
app.kubernetes.io/name: *app
interval: 1h
path: ./kubernetes/apps/observability/kube-prometheus-stack/crds
prune: false # never should be deleted
postBuild:
substitute:
APP: *app
prune: false
retryInterval: 2m
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
wait: false
interval: 30m
namespace: flux-system
targetNamespace: *namespace
timeout: 5m
wait: false
---
# yaml-language-server: $schema=https://kubernetes-schemas.pages.dev/kustomize.toolkit.fluxcd.io/kustomization_v1.json
apiVersion: kustomize.toolkit.fluxcd.io/v1
kind: Kustomization
metadata:
name: &app kube-prometheus-stack
namespace: flux-system
namespace: &namespace observability
spec:
targetNamespace: observability
commonMetadata:
labels:
app.kubernetes.io/name: *app
dependsOn:
- name: rook-ceph-cluster
namespace: rook-ceph
- name: kube-prometheus-stack-crds
namespace: observability
interval: 1h
path: ./kubernetes/apps/observability/kube-prometheus-stack/app
postBuild:
substitute:
APP: *app
prune: true
retryInterval: 2m
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
wait: false
interval: 30m
retryInterval: 1m
namespace: flux-system
targetNamespace: *namespace
timeout: 5m
wait: false

View File

@@ -2,10 +2,10 @@
# yaml-language-server: $schema=https://raw.githubusercontent.com/SchemaStore/schemastore/master/src/schemas/json/kustomization.json
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
namespace: observability
components:
- ../../components/common
resources:
# Pre Flux-Kustomizations
- ./namespace.yaml
# Flux-Kustomizations
- ./apprise/ks.yaml
- ./blackbox-exporter/ks.yaml
- ./gatus/ks.yaml

View File

@@ -1,37 +0,0 @@
---
apiVersion: v1
kind: Namespace
metadata:
name: observability
labels:
kustomize.toolkit.fluxcd.io/prune: disabled
---
# yaml-language-server: $schema=https://kubernetes-schemas.pages.dev/notification.toolkit.fluxcd.io/provider_v1beta3.json
apiVersion: notification.toolkit.fluxcd.io/v1beta3
kind: Provider
metadata:
name: alert-manager
namespace: observability
spec:
type: alertmanager
address: http://kube-prometheus-stack-alertmanager.observability:9093/api/v2/alerts/
---
# yaml-language-server: $schema=https://kubernetes-schemas.pages.dev/notification.toolkit.fluxcd.io/alert_v1beta3.json
apiVersion: notification.toolkit.fluxcd.io/v1beta3
kind: Alert
metadata:
name: alert-manager
namespace: observability
spec:
providerRef:
name: alert-manager
eventSeverity: error
eventSources:
- kind: HelmRelease
name: "*"
exclusionList:
- "error.*lookup github\\.com"
- "error.*lookup raw\\.githubusercontent\\.com"
- "dial.*tcp.*timeout"
- "waiting.*socket"
suspend: false

View File

@@ -4,9 +4,8 @@ apiVersion: kustomize.toolkit.fluxcd.io/v1
kind: Kustomization
metadata:
name: &app pushgateway
namespace: flux-system
namespace: &namespace observability
spec:
targetNamespace: observability
commonMetadata:
labels:
app.kubernetes.io/name: *app
@@ -14,15 +13,17 @@ spec:
- name: kube-prometheus-stack-crds
components:
- ../../../../components/gatus/guarded
interval: 1h
path: ./kubernetes/apps/observability/pushgateway/app
prune: true
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
wait: false
interval: 30m
retryInterval: 1m
timeout: 5m
postBuild:
substitute:
APP: *app
prune: true
retryInterval: 2m
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
namespace: flux-system
targetNamespace: *namespace
timeout: 5m
wait: false

View File

@@ -4,9 +4,8 @@ apiVersion: kustomize.toolkit.fluxcd.io/v1
kind: Kustomization
metadata:
name: &app scrutiny
namespace: flux-system
namespace: &namespace observability
spec:
targetNamespace: observability
commonMetadata:
labels:
app.kubernetes.io/name: *app
@@ -14,43 +13,48 @@ spec:
- name: external-secrets-stores
namespace: external-secrets
- name: rook-ceph-cluster
namespace: rook-ceph
- name: volsync
namespace: volsync
components:
- ../../../../components/volsync
interval: 1h
path: ./kubernetes/apps/observability/scrutiny/app
prune: true
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
wait: false
interval: 30m
retryInterval: 1m
timeout: 5m
postBuild:
substitute:
APP: *app
VOLSYNC_CAPACITY: 2Gi
prune: true
retryInterval: 2m
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
namespace: flux-system
targetNamespace: *namespace
timeout: 5m
wait: false
---
# yaml-language-server: $schema=https://kubernetes-schemas.pages.dev/kustomize.toolkit.fluxcd.io/kustomization_v1.json
apiVersion: kustomize.toolkit.fluxcd.io/v1
kind: Kustomization
metadata:
name: &app scrutiny-collector
namespace: flux-system
namespace: &namespace observability
spec:
targetNamespace: observability
commonMetadata:
labels:
app.kubernetes.io/name: *app
interval: 1h
path: ./kubernetes/apps/observability/scrutiny/collector
prune: true
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
wait: false
interval: 30m
retryInterval: 1m
timeout: 5m
postBuild:
substitute:
APP: *app
prune: true
retryInterval: 2m
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
namespace: flux-system
targetNamespace: *namespace
timeout: 5m
wait: false

View File

@@ -2,8 +2,8 @@
# yaml-language-server: $schema=https://json.schemastore.org/kustomization
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
namespace: openebs-system
components:
- ../../components/common
resources:
# Pre Flux-Kustomizations
- ./namespace.yaml
# Flux-Kustomizations
- ./openebs/ks.yaml
- ./openebs/ks.yaml

View File

@@ -1,38 +0,0 @@
---
apiVersion: v1
kind: Namespace
metadata:
name: openebs-system
annotations:
kustomize.toolkit.fluxcd.io/prune: disabled
volsync.backube/privileged-movers: "true"
---
# yaml-language-server: $schema=https://kubernetes-schemas.pages.dev/notification.toolkit.fluxcd.io/provider_v1beta3.json
apiVersion: notification.toolkit.fluxcd.io/v1beta3
kind: Provider
metadata:
name: alert-manager
namespace: openebs-system
spec:
type: alertmanager
address: http://alertmanager-operated.observability.svc.cluster.local:9093/api/v2/alerts/
---
# yaml-language-server: $schema=https://kubernetes-schemas.pages.dev/notification.toolkit.fluxcd.io/alert_v1beta3.json
apiVersion: notification.toolkit.fluxcd.io/v1beta3
kind: Alert
metadata:
name: alert-manager
namespace: openebs-system
spec:
providerRef:
name: alert-manager
eventSeverity: error
eventSources:
- kind: HelmRelease
name: "*"
exclusionList:
- "error.*lookup github\\.com"
- "error.*lookup raw\\.githubusercontent\\.com"
- "dial.*tcp.*timeout"
- "waiting.*socket"
suspend: false

View File

@@ -4,18 +4,22 @@ apiVersion: kustomize.toolkit.fluxcd.io/v1
kind: Kustomization
metadata:
name: &app openebs
namespace: flux-system
namespace: &namespace openebs-system
spec:
targetNamespace: openebs-system
commonMetadata:
labels:
app.kubernetes.io/name: *app
interval: 1h
path: ./kubernetes/apps/openebs-system/openebs/app
postBuild:
substitute:
APP: *app
prune: true
retryInterval: 2m
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
namespace: flux-system
targetNamespace: *namespace
timeout: 5m
wait: false
interval: 30m
retryInterval: 1m
timeout: 5m

View File

@@ -2,8 +2,8 @@
# yaml-language-server: $schema=https://raw.githubusercontent.com/SchemaStore/schemastore/master/src/schemas/json/kustomization.json
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
namespace: rook-ceph
components:
- ../../components/common
resources:
# Pre Flux-Kustomizations
- ./namespace.yaml
# Flux-Kustomizations
- ./rook-ceph/ks.yaml

View File

@@ -1,38 +0,0 @@
---
apiVersion: v1
kind: Namespace
metadata:
name: rook-ceph
labels:
kustomize.toolkit.fluxcd.io/prune: disabled
pod-security.kubernetes.io/enforce: privileged
---
# yaml-language-server: $schema=https://kubernetes-schemas.pages.dev/notification.toolkit.fluxcd.io/provider_v1beta3.json
apiVersion: notification.toolkit.fluxcd.io/v1beta3
kind: Provider
metadata:
name: alert-manager
namespace: rook-ceph
spec:
type: alertmanager
address: http://kube-prometheus-stack-alertmanager.observability:9093/api/v2/alerts/
---
# yaml-language-server: $schema=https://kubernetes-schemas.pages.dev/notification.toolkit.fluxcd.io/alert_v1beta3.json
apiVersion: notification.toolkit.fluxcd.io/v1beta3
kind: Alert
metadata:
name: alert-manager
namespace: rook-ceph
spec:
providerRef:
name: alert-manager
eventSeverity: error
eventSources:
- kind: HelmRelease
name: "*"
exclusionList:
- "error.*lookup github\\.com"
- "error.*lookup raw\\.githubusercontent\\.com"
- "dial.*tcp.*timeout"
- "waiting.*socket"
suspend: false

View File

@@ -4,75 +4,76 @@ apiVersion: kustomize.toolkit.fluxcd.io/v1
kind: Kustomization
metadata:
name: &app rook-ceph
namespace: flux-system
namespace: &namespace rook-ceph
spec:
targetNamespace: rook-ceph
commonMetadata:
labels:
app.kubernetes.io/name: *app
interval: 1h
path: ./kubernetes/apps/rook-ceph/rook-ceph/app
prune: true
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
wait: false
interval: 30m
retryInterval: 1m
timeout: 5m
postBuild:
substitute:
APP: *app
prune: true
retryInterval: 2m
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
namespace: flux-system
targetNamespace: *namespace
timeout: 5m
wait: false
---
# yaml-language-server: $schema=https://kubernetes-schemas.pages.dev/kustomize.toolkit.fluxcd.io/kustomization_v1.json
apiVersion: kustomize.toolkit.fluxcd.io/v1
kind: Kustomization
metadata:
name: &app rook-ceph-cluster
namespace: flux-system
namespace: &namespace rook-ceph
spec:
targetNamespace: rook-ceph
commonMetadata:
labels:
app.kubernetes.io/name: *app
dependsOn:
- name: rook-ceph
interval: 1h
path: ./kubernetes/apps/rook-ceph/rook-ceph/cluster
prune: false
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
wait: false
interval: 30m
retryInterval: 1m
timeout: 5m
postBuild:
substitute:
APP: *app
prune: false
retryInterval: 2m
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
namespace: flux-system
targetNamespace: *namespace
timeout: 5m
wait: false
---
# yaml-language-server: $schema=https://kubernetes-schemas.pages.dev/kustomize.toolkit.fluxcd.io/kustomization_v1.json
apiVersion: kustomize.toolkit.fluxcd.io/v1
kind: Kustomization
metadata:
name: &app rook-ceph-tools
namespace: flux-system
namespace: &namespace rook-ceph
spec:
targetNamespace: rook-ceph
commonMetadata:
labels:
app.kubernetes.io/name: *app
dependsOn:
- name: rook-ceph-cluster
interval: 1h
path: ./kubernetes/apps/rook-ceph/rook-ceph/tools
prune: true
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
wait: false
interval: 30m
retryInterval: 1m
timeout: 5m
postBuild:
substitute:
APP: *app
prune: true
retryInterval: 2m
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
namespace: flux-system
targetNamespace: *namespace
timeout: 5m
wait: false

View File

@@ -2,8 +2,8 @@
# yaml-language-server: $schema=https://raw.githubusercontent.com/SchemaStore/schemastore/master/src/schemas/json/kustomization.json
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
namespace: volsync
components:
- ../../components/common
resources:
# Pre Flux-Kustomizations
- ./namespace.yaml
# Flux-Kustomizations
- ./volsync/ks.yaml

View File

@@ -1,37 +0,0 @@
---
apiVersion: v1
kind: Namespace
metadata:
name: volsync
labels:
kustomize.toolkit.fluxcd.io/prune: disabled
---
# yaml-language-server: $schema=https://kubernetes-schemas.pages.dev/notification.toolkit.fluxcd.io/provider_v1beta3.json
apiVersion: notification.toolkit.fluxcd.io/v1beta3
kind: Provider
metadata:
name: alert-manager
namespace: volsync
spec:
type: alertmanager
address: http://kube-prometheus-stack-alertmanager.observability:9093/api/v2/alerts/
---
# yaml-language-server: $schema=https://kubernetes-schemas.pages.dev/notification.toolkit.fluxcd.io/alert_v1beta3.json
apiVersion: notification.toolkit.fluxcd.io/v1beta3
kind: Alert
metadata:
name: alert-manager
namespace: volsync
spec:
providerRef:
name: alert-manager
eventSeverity: error
eventSources:
- kind: HelmRelease
name: "*"
exclusionList:
- "error.*lookup github\\.com"
- "error.*lookup raw\\.githubusercontent\\.com"
- "dial.*tcp.*timeout"
- "waiting.*socket"
suspend: false

View File

@@ -4,23 +4,25 @@ apiVersion: kustomize.toolkit.fluxcd.io/v1
kind: Kustomization
metadata:
name: &app volsync
namespace: flux-system
namespace: &namespace volsync
spec:
targetNamespace: *app
commonMetadata:
labels:
app.kubernetes.io/name: *app
dependsOn:
- name: snapshot-controller
namespace: kube-system
interval: 1h
path: ./kubernetes/apps/volsync/volsync/app
prune: true
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
wait: false
interval: 30m
retryInterval: 1m
timeout: 5m
postBuild:
substitute:
APP: *app
prune: true
retryInterval: 2m
sourceRef:
kind: GitRepository
name: home-ops-kubernetes
namespace: flux-system
targetNamespace: *namespace
timeout: 5m
wait: false