mirror of
https://github.com/lukaszraczylo/kubemirror.git
synced 2026-06-05 22:43:51 +00:00
65 lines
1.6 KiB
YAML
65 lines
1.6 KiB
YAML
---
|
|
apiVersion: traefik.io/v1alpha1
|
|
kind: Middleware
|
|
metadata:
|
|
name: compression
|
|
namespace: namespace-2
|
|
annotations:
|
|
# Mirror this Traefik middleware to namespace-4 and namespace-5
|
|
kubemirror.raczylo.com/sync: "true"
|
|
kubemirror.raczylo.com/target-namespaces: "namespace-4,namespace-5"
|
|
labels:
|
|
# Required: enables server-side filtering
|
|
kubemirror.raczylo.com/enabled: "true"
|
|
app: kubemirror-example
|
|
resource-type: traefik-middleware
|
|
spec:
|
|
compress:
|
|
excludedContentTypes:
|
|
- text/event-stream
|
|
|
|
---
|
|
apiVersion: traefik.io/v1alpha1
|
|
kind: Middleware
|
|
metadata:
|
|
name: rate-limit
|
|
namespace: namespace-2
|
|
annotations:
|
|
# Mirror to all namespaces for consistent rate limiting
|
|
kubemirror.raczylo.com/sync: "true"
|
|
kubemirror.raczylo.com/target-namespaces: "all"
|
|
labels:
|
|
# Required: enables server-side filtering
|
|
kubemirror.raczylo.com/enabled: "true"
|
|
app: kubemirror-example
|
|
resource-type: traefik-middleware
|
|
spec:
|
|
rateLimit:
|
|
average: 100
|
|
burst: 50
|
|
period: 1m
|
|
|
|
---
|
|
apiVersion: traefik.io/v1alpha1
|
|
kind: Middleware
|
|
metadata:
|
|
name: headers
|
|
namespace: namespace-2
|
|
annotations:
|
|
# Mirror only to namespace-3
|
|
kubemirror.raczylo.com/sync: "true"
|
|
kubemirror.raczylo.com/target-namespaces: "namespace-3"
|
|
labels:
|
|
# Required: enables server-side filtering
|
|
kubemirror.raczylo.com/enabled: "true"
|
|
app: kubemirror-example
|
|
resource-type: traefik-middleware
|
|
spec:
|
|
headers:
|
|
customRequestHeaders:
|
|
X-Forwarded-Proto: "https"
|
|
X-Frame-Options: "DENY"
|
|
X-Content-Type-Options: "nosniff"
|
|
customResponseHeaders:
|
|
X-Custom-Response-Header: "kubemirror-example"
|