folder structure. longhorn installation

This commit is contained in:
azykov@mail.ru
2026-07-21 12:49:13 +03:00
parent 3c89a56caf
commit 52e4396c26
19 changed files with 77 additions and 59 deletions
@@ -0,0 +1,45 @@
apiVersion: helm.toolkit.fluxcd.io/v2
kind: HelmRelease
metadata:
name: longhorn
namespace: longhorn-system
spec:
interval: 30m
chart:
spec:
chart: longhorn
version: "1.9.x" # зафиксируй актуальную стабильную ветку
sourceRef:
kind: HelmRepository
name: longhorn
namespace: longhorn-system
interval: 1h
install:
createNamespace: false # namespace создаём отдельным ресурсом с PSA-меткой
remediation:
retries: 3
upgrade:
remediation:
retries: 3
values:
defaultSettings:
defaultReplicaCount: 3 # по числу нод control-plane
defaultDataPath: /var/lib/longhorn
guaranteedEngineManagerCPU: 12
guaranteedReplicaManagerCPU: 12
# если backup target ещё не настроен — оставь пустым, донастроишь позже через UI/CR
backupTarget: ""
# чтобы не разъезжались реплики при 3 нодах
replicaSoftAntiAffinity: false
persistence:
defaultClass: true
defaultClassReplicaCount: 3
defaultFsType: ext4
reclaimPolicy: Retain
csi:
attacherReplicaCount: 3
provisionerReplicaCount: 3
resizerReplicaCount: 3
snapshotterReplicaCount: 3
ingress:
enabled: false # у тебя уже есть Caddy/Traefik, заведёшь свой Ingress/IngressRoute отдельно
@@ -0,0 +1,8 @@
apiVersion: source.toolkit.fluxcd.io/v1
kind: HelmRepository
metadata:
name: longhorn
namespace: longhorn-system
spec:
interval: 1h
url: https://charts.longhorn.io
@@ -1,4 +1,6 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- cert-manager-issuers.yaml
- helmrepository.yaml
- helmrelease.yaml
- secret.enc.yaml
@@ -0,0 +1,6 @@
apiVersion: v1
kind: Namespace
metadata:
name: longhorn-system
labels:
pod-security.kubernetes.io/enforce: privileged
+1 -1
View File
@@ -13,7 +13,7 @@ spec:
wait: true
dependsOn:
- name: namespaces
- name: infra-apps
- name: infra
decryption:
provider: sops
secretRef:
+1 -1
View File
@@ -13,7 +13,7 @@ spec:
wait: true
dependsOn:
- name: namespaces
- name: infra-apps
- name: infra
decryption:
provider: sops
secretRef:
+1 -1
View File
@@ -13,7 +13,7 @@ spec:
wait: true
dependsOn:
- name: namespaces
- name: infra-apps
- name: infra
decryption:
provider: sops
secretRef:
+1 -1
View File
@@ -13,7 +13,7 @@ spec:
wait: true
dependsOn:
- name: namespaces
- name: infra-apps
- name: infra
decryption:
provider: sops
secretRef:
@@ -1,14 +1,14 @@
apiVersion: kustomize.toolkit.fluxcd.io/v1
kind: Kustomization
metadata:
name: cert-manager-issuers
name: cert-manager-certificate-issuers
namespace: flux-system
spec:
interval: 10m
sourceRef:
kind: GitRepository
name: flux-system
path: ./clusters/base/infra-apps/cert-manager-issuers
path: ./clusters/base/infra/cert-manager/certificate-issuers
prune: true
wait: true
dependsOn:
+3 -1
View File
@@ -1,4 +1,6 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- storage-class-longhorn-no-retain.yaml
- longhorn/longhorn-system.yaml
- longhorn/storage-classes.yaml
- cert-manager/certificate-issuers.yaml
@@ -1,13 +1,13 @@
apiVersion: kustomize.toolkit.fluxcd.io/v1
kind: Kustomization
metadata:
name: local-path
name: longhorn-system
namespace: flux-system
spec:
interval: 10m
sourceRef:
kind: GitRepository
name: flux-system
path: ./clusters/base/infra/storage-class-longhorn-no-retain
path: ./clusters/base/infra/longhorn/longhorn-system
prune: true
wait: true
@@ -1,20 +1,15 @@
apiVersion: kustomize.toolkit.fluxcd.io/v1
kind: Kustomization
metadata:
name: infra-apps
name: longhorn-storage-classes
namespace: flux-system
spec:
interval: 10m
sourceRef:
kind: GitRepository
name: flux-system
path: ./clusters/home/infra-apps
path: ./clusters/base/infra/longhorn-storage-classes
prune: true
wait: true
dependsOn:
- name: namespaces
- name: infra
decryption:
provider: sops
secretRef:
name: sops-age
- name: longhorn-system
-2
View File
@@ -4,6 +4,4 @@ resources:
- flux-system
- namespaces.yaml
- infra.yaml
# - infra-nodes.yaml
- infra-apps.yaml
- apps.yaml
@@ -4,3 +4,4 @@ resources:
- ../../base/namespaces/vaultwarden.yaml
- ../../base/namespaces/zigbee2mqtt.yaml
- ../../base/namespaces/pim.yaml
- ../../base/namespaces/longhorn-system.yaml