apiVersion: argoproj.io/v1alpha1 kind: Application metadata: name: seaweedfs finalizers: - resources-finalizer.argocd.argoproj.io spec: project: default source: repoURL: 'https://seaweedfs.github.io/seaweedfs/helm' chart: seaweedfs targetRevision: 4.*.* helm: values: | # Global Konfiguration global: enableSecurity: true monitoring: enabled: true imagePullPolicy: IfNotPresent # Master Konfiguration master: replicas: 3 data: type: "persistentVolumeClaim" size: "25Gi" storageClass: "" logs: type: "persistentVolumeClaim" size: "5Gi" # Master Service service: type: ClusterIP ports: http: 9333 grpc: 19333 # Master Ingress ingress: enabled: true className: "traefik" annotations: traefik.ingress.kubernetes.io/router.tls: "true" cert-manager.io/cluster-issuer: "lets-encrypt" traefik.ingress.kubernetes.io/router.entrypoints: "websecure" traefik.ingress.kubernetes.io/router.middlewares: "seaweedfs-cors@kubernetescrd" hosts: - host: "seaweed.innovation-hub-niedersachsen.de" paths: - path: "/" pathType: "Prefix" tls: - secretName: "seaweed.innovation-hub-niedersachsen.de-tls" hosts: - "seaweed.innovation-hub-niedersachsen.de" # Volume Server Konfiguration volume: replicas: 3 data: type: "persistentVolumeClaim" size: "100Gi" storageClass: "" idx: type: "persistentVolumeClaim" size: "10Gi" storageClass: "" service: type: ClusterIP ports: http: 8080 grpc: 18080 # Filer Konfiguration filer: replicas: 2 data: type: "persistentVolumeClaim" size: "25Gi" storageClass: "" logs: type: "persistentVolumeClaim" size: "5Gi" # Filer Service service: type: ClusterIP ports: http: 8888 grpc: 18888 # Optional: Filer Ingress (für Web UI) ingress: enabled: false # S3 Gateway Konfiguration s3: enabled: true replicas: 2 # S3 Authentifizierung auth: enabled: true adminUser: "wjpKrmaqXra99rX3D61H" adminPassword: "fTPi0u0FR6Lv9Y9IKydWv6WM0EA5XrsK008HCt9u" # S3 Service service: type: ClusterIP ports: http: 8333 # S3 Konfiguration config: logLevel: 4 # S3 Ingress ingress: enabled: true className: "traefik" annotations: traefik.ingress.kubernetes.io/router.tls: "true" cert-manager.io/cluster-issuer: "lets-encrypt" traefik.ingress.kubernetes.io/router.entrypoints: "websecure" traefik.ingress.kubernetes.io/router.middlewares: "seaweedfs-cors@kubernetescrd,seaweedfs-stripprefix@kubernetescrd" hosts: - host: "sws3.innovation-hub-niedersachsen.de" paths: - path: "/" pathType: "Prefix" tls: - secretName: "sws3.innovation-hub-niedersachsen.de-tls" hosts: - "sws3.innovation-hub-niedersachsen.de" # WebDAV (optional - standardmäßig deaktiviert) webdav: enabled: false # Mount (optional - für FUSE Mount) mount: enabled: false # CORS Konfiguration cors: enabled: true allowedOrigins: - "*" allowedMethods: - "GET" - "POST" - "PUT" - "DELETE" - "HEAD" - "OPTIONS" allowedHeaders: - "*" # Resource Limits (optional) resources: master: limits: cpu: 500m memory: 512Mi requests: cpu: 100m memory: 128Mi volume: limits: cpu: 1000m memory: 1Gi requests: cpu: 200m memory: 256Mi filer: limits: cpu: 500m memory: 512Mi requests: cpu: 100m memory: 128Mi s3: limits: cpu: 500m memory: 512Mi requests: cpu: 100m memory: 128Mi # Node Affinity (optional) nodeSelector: {} tolerations: [] affinity: {} destination: server: 'https://kubernetes.default.svc' namespace: seaweedfs syncPolicy: managedNamespaceMetadata: labels: pod-security.kubernetes.io/enforce: "privileged" automated: selfHeal: true prune: true syncOptions: - CreateNamespace=true