Files
sbbb/base/storage/seaweedfs-filer.yaml
Sienna Meridian Satterwhite e8c64e6f18 feat: add ServiceMonitors and enable metrics scraping
- SeaweedFS: enable -metricsPort=9091 on master/volume/filer, add
  service labels, create ServiceMonitor
- Gitea: enable metrics in config, create ServiceMonitor
- Hydra/Kratos: standalone ServiceMonitors (chart templates require
  .Capabilities.APIVersions unavailable in kustomize helm template)
- LiveKit: add prometheus_port=6789, standalone ServiceMonitor
  (disabled in kustomization — host firewall blocks port 6789)
- OpenSearch: revert prometheus-exporter attempt (no plugin for v3.x),
  add service label for future exporter sidecar
2026-03-24 12:21:18 +00:00

104 lines
2.5 KiB
YAML

apiVersion: apps/v1
kind: Deployment
metadata:
name: seaweedfs-filer
namespace: storage
spec:
replicas: 1
strategy:
type: Recreate
selector:
matchLabels:
app: seaweedfs-filer
template:
metadata:
labels:
app: seaweedfs-filer
spec:
terminationGracePeriodSeconds: 60
initContainers:
- name: fix-permissions
image: busybox
command: ["sh", "-c", "chmod 777 /data/filer"]
volumeMounts:
- name: filer-data
mountPath: /data/filer
containers:
- name: filer
image: chrislusf/seaweedfs:latest
args:
- filer
- -port=8888
- -s3
- -s3.port=8333
- -s3.config=/etc/seaweedfs/s3.json
- -master=seaweedfs-master.storage.svc.cluster.local:9333
- -metricsPort=9091
ports:
- name: http
containerPort: 8888
protocol: TCP
- name: s3
containerPort: 8333
protocol: TCP
- name: grpc
containerPort: 18888
protocol: TCP
- name: metrics
containerPort: 9091
protocol: TCP
envFrom:
- secretRef:
name: seaweedfs-s3-credentials
volumeMounts:
- name: config
mountPath: /etc/seaweedfs/filer.toml
subPath: filer.toml
readOnly: true
- name: s3-json-secret
mountPath: /etc/seaweedfs/s3.json
subPath: s3.json
readOnly: true
- name: filer-data
mountPath: /data/filer
resources:
limits:
memory: 2Gi
requests:
memory: 512Mi
cpu: 50m
volumes:
- name: config
configMap:
name: seaweedfs-filer-config
- name: s3-json-secret
secret:
secretName: seaweedfs-s3-json
- name: filer-data
persistentVolumeClaim:
claimName: seaweedfs-filer-data
---
apiVersion: v1
kind: Service
metadata:
name: seaweedfs-filer
namespace: storage
labels:
app: seaweedfs-filer
spec:
selector:
app: seaweedfs-filer
ports:
- name: http
port: 8888
targetPort: 8888
- name: s3
port: 8333
targetPort: 8333
- name: grpc
port: 18888
targetPort: 18888
- name: metrics
port: 9091
targetPort: 9091