CHORE(longhorn): remove unused storage provider

- All PVCs migrated to local-path-retain
- Clean up cluster CRDs and namespace
This commit is contained in:
2026-01-07 14:31:09 +09:00
parent 03f17000e9
commit 6af1964495
7 changed files with 1 additions and 326 deletions

View File

@@ -5,6 +5,7 @@ resources:
- application.yaml
# Storage systems
- minio/argocd.yaml
- zot/argocd.yaml
# PostgreSQL databases
- postgresql/argocd/postgresql.yaml
- postgresql-dev/argocd.yaml

View File

@@ -1,125 +0,0 @@
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: longhorn
namespace: argocd
finalizers:
- resources-finalizer.argocd.argoproj.io
spec:
project: default
sources:
- repoURL: https://charts.longhorn.io
chart: longhorn
targetRevision: 1.10.1
helm:
valueFiles:
- $values/longhorn/helm-values.yaml
- repoURL: https://github.com/K3S-HOME/storage.git
targetRevision: main
ref: values
- repoURL: https://github.com/K3S-HOME/storage.git
targetRevision: main
path: longhorn
kustomize: {}
destination:
server: https://kubernetes.default.svc
namespace: longhorn
syncPolicy:
automated:
prune: true
selfHeal: true
allowEmpty: false
syncOptions:
- CreateNamespace=true
- PrunePropagationPolicy=foreground
- PruneLast=true
- RespectIgnoreDifferences=true
- ServerSideApply=true
retry:
limit: 5
backoff:
duration: 5s
factor: 2
maxDuration: 3m
managedNamespaceMetadata:
labels:
goldilocks.fairwinds.com/enabled: 'true'
revisionHistoryLimit: 10
ignoreDifferences:
- group: ""
kind: ServiceAccount
name: longhorn-service-account
jsonPointers:
- /metadata/resourceVersion
- /metadata/uid
- /secrets
- group: apiextensions.k8s.io
kind: CustomResourceDefinition
name: engines.longhorn.io
jqPathExpressions:
- .spec.conversion.webhook.clientConfig
- .status
- .metadata.annotations
- .metadata.generation
- .metadata.resourceVersion
- .spec.preserveUnknownFields
- group: apiextensions.k8s.io
kind: CustomResourceDefinition
name: engineimages.longhorn.io
jqPathExpressions:
- .spec.conversion.webhook.clientConfig
- .status
- .metadata.annotations
- .metadata.generation
- .metadata.resourceVersion
- .spec.preserveUnknownFields
- group: apiextensions.k8s.io
kind: CustomResourceDefinition
name: instancemanagers.longhorn.io
jqPathExpressions:
- .spec.conversion.webhook.clientConfig
- .status
- .metadata.annotations
- .metadata.generation
- .metadata.resourceVersion
- .spec.preserveUnknownFields
- group: apiextensions.k8s.io
kind: CustomResourceDefinition
name: nodes.longhorn.io
jqPathExpressions:
- .spec.conversion.webhook.clientConfig
- .status
- .metadata.annotations
- .metadata.generation
- .metadata.resourceVersion
- .spec.preserveUnknownFields
- group: apiextensions.k8s.io
kind: CustomResourceDefinition
name: replicas.longhorn.io
jqPathExpressions:
- .spec.conversion.webhook.clientConfig
- .status
- .metadata.annotations
- .metadata.generation
- .metadata.resourceVersion
- .spec.preserveUnknownFields
- group: apiextensions.k8s.io
kind: CustomResourceDefinition
name: settings.longhorn.io
jqPathExpressions:
- .spec.conversion.webhook.clientConfig
- .status
- .metadata.annotations
- .metadata.generation
- .metadata.resourceVersion
- .spec.preserveUnknownFields
- group: apiextensions.k8s.io
kind: CustomResourceDefinition
name: volumes.longhorn.io
jqPathExpressions:
- .spec.conversion.webhook.clientConfig
- .status
- .metadata.annotations
- .metadata.generation
- .metadata.resourceVersion
- .spec.preserveUnknownFields

View File

@@ -1,149 +0,0 @@
# Longhorn Helm Values
# Chart: https://github.com/longhorn/longhorn
# Pre-upgrade checker - disable for ArgoCD/GitOps (per Longhorn docs)
preUpgradeChecker:
jobEnabled: false
upgradeVersionCheck: false
# Persistence settings
persistence:
defaultClass: true # Set Longhorn as default StorageClass
defaultClassReplicaCount: 2 # Number of replicas for high availability
reclaimPolicy: Retain # Keep PV data when PVC is deleted
# Default settings
defaultSettings:
# Storage
defaultReplicaCount: 2 # Default number of replicas for volumes
defaultDataPath: /mnt/longhorn-storage # Data storage path on nodes (NEW: dedicated 50GB disks)
# Taint toleration for data plane components (instance-manager, etc.)
taintToleration: "node-role.kubernetes.io/master:NoExecute"
# Node selector for system managed components (instance-manager, engine-image, etc.)
systemManagedComponentsNodeSelector: "longhorn:enabled"
# Backup settings
backupTarget: "" # S3/NFS backup target (configure later if needed)
backupTargetCredentialSecret: ""
# Performance
guaranteedInstanceManagerCPU: 5 # 5% CPU for instance managers
createDefaultDiskLabeledNodes: true # Auto-discover storage on labeled nodes
# Node scheduling
replicaSoftAntiAffinity: true # Prefer to spread replicas across nodes
replicaAutoBalance: best-effort # Auto-balance replicas
storageOverProvisioningPercentage: 200 # Allow 200% overprovisioning
storageMinimalAvailablePercentage: 10 # Keep 10% storage available
# Snapshot and backup
snapshotDataIntegrity: fast-check # Fast integrity check for snapshots
snapshotDataIntegrityImmediateCheckAfterSnapshotCreation: false
# Auto cleanup
orphanAutoDeletion: true # Auto delete orphaned resources
# Longhorn Manager (control plane)
longhornManager:
priorityClass: ~
tolerations:
- key: "node-role.kubernetes.io/master"
operator: "Exists"
effect: "NoExecute"
nodeSelector:
longhorn: "enabled" # worker-1 제외
# Longhorn Driver (CSI driver)
longhornDriver:
priorityClass: ~
tolerations:
- key: "node-role.kubernetes.io/master"
operator: "Exists"
effect: "NoExecute"
nodeSelector:
longhorn: "enabled" # worker-1 제외
# Longhorn UI
longhornUI:
replicas: 1
priorityClass: ~
tolerations:
- key: "node-role.kubernetes.io/master"
operator: "Exists"
effect: "NoExecute"
nodeSelector: {}
# CSI components
csi:
attacherReplicaCount: 1
provisionerReplicaCount: 1
resizerReplicaCount: 1
snapshotterReplicaCount: 1
# Ingress for Longhorn UI
ingress:
enabled: true
ingressClassName: traefik
host: longhorn0213.kro.kr
tls: true
tlsSecret: longhorn-tls
path: /
annotations:
cert-manager.io/cluster-issuer: letsencrypt-prod
# Service configuration
service:
ui:
type: ClusterIP
nodePort: null
# Monitoring
metrics:
serviceMonitor:
enabled: true
additionalLabels:
release: prometheus
enablePSP: false # Pod Security Policy (deprecated in K8s 1.25+)
# Resources - NO CPU LIMITS per user request
resources:
longhornManager:
requests:
cpu: 100m
memory: 256Mi
limits:
# cpu: not set to prevent throttling
memory: 512Mi
longhornDriver:
requests:
cpu: 50m
memory: 128Mi
limits:
# cpu: not set to prevent throttling
memory: 256Mi
longhornUI:
requests:
cpu: 50m
memory: 64Mi
limits:
# cpu: not set to prevent throttling
memory: 128Mi
# Default StorageClass parameters
defaultStorageClass:
enabled: true
name: longhorn
defaultClass: true
reclaimPolicy: Retain
allowVolumeExpansion: true
parameters:
numberOfReplicas: "2"
staleReplicaTimeout: "2880" # 48 hours
fromBackup: ""
fsType: "ext4"
dataLocality: "disabled" # Allow scheduling on any node

View File

@@ -1,7 +0,0 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
namespace: longhorn
resources:
- manifests/mayne-vcn.yaml
- manifests/mayne-worker-1.yaml
- manifests/mayne-worker-2.yaml

View File

@@ -1,15 +0,0 @@
apiVersion: longhorn.io/v1beta2
kind: Node
metadata:
name: mayne-vcn
namespace: longhorn
spec:
allowScheduling: false
disks:
new-disk:
allowScheduling: false
diskType: filesystem
evictionRequested: true
path: /mnt/longhorn-storage
storageReserved: 5368709120
tags: []

View File

@@ -1,15 +0,0 @@
apiVersion: longhorn.io/v1beta2
kind: Node
metadata:
name: mayne-worker-1
namespace: longhorn
spec:
allowScheduling: true
disks:
new-disk:
allowScheduling: true
diskType: filesystem
evictionRequested: false
path: /mnt/longhorn-storage
storageReserved: 5368709120
tags: []

View File

@@ -1,15 +0,0 @@
apiVersion: longhorn.io/v1beta2
kind: Node
metadata:
name: mayne-worker-2
namespace: longhorn
spec:
allowScheduling: true
disks:
new-disk:
allowScheduling: true
diskType: filesystem
evictionRequested: false
path: /mnt/longhorn-storage
storageReserved: 5368709120
tags: []