2026-06-23 00:31:04 +02:00
|
|
|
apiVersion: v1
|
|
|
|
|
kind: Namespace
|
|
|
|
|
metadata:
|
|
|
|
|
name: nas-proxy
|
|
|
|
|
---
|
2026-06-26 18:54:17 +02:00
|
|
|
# Standalone cert-manager Certificate for nas.rogi.casa (not owned by an Ingress,
|
|
|
|
|
# since cert-manager's ingress-shim would otherwise create one owned by the
|
|
|
|
|
# Ingress below and tie its lifecycle to it; keeping it standalone is cleaner).
|
2026-06-26 18:40:41 +02:00
|
|
|
apiVersion: cert-manager.io/v1
|
|
|
|
|
kind: Certificate
|
2026-06-23 00:31:04 +02:00
|
|
|
metadata:
|
2026-06-26 18:40:41 +02:00
|
|
|
name: nas-tls
|
2026-06-23 00:31:04 +02:00
|
|
|
namespace: nas-proxy
|
|
|
|
|
spec:
|
2026-06-26 18:40:41 +02:00
|
|
|
secretName: nas-tls
|
|
|
|
|
dnsNames:
|
|
|
|
|
- nas.rogi.casa
|
|
|
|
|
issuerRef:
|
|
|
|
|
group: cert-manager.io
|
|
|
|
|
kind: ClusterIssuer
|
|
|
|
|
name: letsencrypt-prod
|
|
|
|
|
usages:
|
|
|
|
|
- digital signature
|
|
|
|
|
- key encipherment
|
2026-06-26 18:25:29 +02:00
|
|
|
---
|
2026-06-26 18:54:17 +02:00
|
|
|
# Selector-less Service + manual Endpoints pointing at the NAS.
|
2026-06-26 19:01:08 +02:00
|
|
|
# (Endpoints is no longer excluded in argocd-cm, so ArgoCD manages it.)
|
2026-06-26 18:54:17 +02:00
|
|
|
apiVersion: v1
|
|
|
|
|
kind: Service
|
2026-06-23 00:26:29 +02:00
|
|
|
metadata:
|
2026-06-26 18:54:17 +02:00
|
|
|
name: synology-nas
|
2026-06-23 00:31:04 +02:00
|
|
|
namespace: nas-proxy
|
2026-06-23 00:26:29 +02:00
|
|
|
spec:
|
2026-06-26 18:54:17 +02:00
|
|
|
type: ClusterIP
|
|
|
|
|
clusterIP: None
|
|
|
|
|
ports:
|
|
|
|
|
- port: 5001
|
|
|
|
|
targetPort: 5001
|
|
|
|
|
protocol: TCP
|
2026-06-26 18:40:41 +02:00
|
|
|
---
|
2026-06-26 18:54:17 +02:00
|
|
|
apiVersion: v1
|
|
|
|
|
kind: Endpoints
|
2026-06-26 18:40:41 +02:00
|
|
|
metadata:
|
2026-06-26 18:54:17 +02:00
|
|
|
name: synology-nas
|
2026-06-26 18:40:41 +02:00
|
|
|
namespace: nas-proxy
|
2026-06-26 18:54:17 +02:00
|
|
|
subsets:
|
|
|
|
|
- addresses:
|
|
|
|
|
- ip: 10.88.30.10
|
|
|
|
|
ports:
|
|
|
|
|
- port: 5001
|
|
|
|
|
protocol: TCP
|
2026-06-26 18:40:41 +02:00
|
|
|
---
|
2026-06-26 19:01:08 +02:00
|
|
|
# Traefik IngressRoute (CRD provider) where scheme: https is a first-class
|
|
|
|
|
# field. The standard kubernetes Ingress `service.serversscheme` annotation is
|
|
|
|
|
# ignored for selector-less/Endpoints-backed services in Traefik v3, which
|
|
|
|
|
# caused Traefik to dial the NAS with plain HTTP -> 400 from DSM's nginx.
|
|
|
|
|
apiVersion: traefik.io/v1alpha1
|
|
|
|
|
kind: IngressRoute
|
2026-06-26 18:40:41 +02:00
|
|
|
metadata:
|
2026-06-26 18:54:17 +02:00
|
|
|
name: nas
|
2026-06-26 18:40:41 +02:00
|
|
|
namespace: nas-proxy
|
|
|
|
|
spec:
|
2026-06-26 19:01:08 +02:00
|
|
|
entryPoints:
|
|
|
|
|
- websecure
|
|
|
|
|
routes:
|
|
|
|
|
- match: Host(`nas.rogi.casa`)
|
|
|
|
|
kind: Rule
|
|
|
|
|
services:
|
|
|
|
|
- kind: Service
|
|
|
|
|
name: synology-nas
|
|
|
|
|
namespace: nas-proxy
|
|
|
|
|
port: 5001
|
|
|
|
|
scheme: https
|
|
|
|
|
serversTransport: skip-verify
|
|
|
|
|
passHostHeader: true
|
2026-06-26 18:54:17 +02:00
|
|
|
tls:
|
2026-06-26 19:01:08 +02:00
|
|
|
secretName: nas-tls
|