Add gateway-api application and update Traefik configuration; disable old ingress
This commit is contained in:
parent
88ac421c19
commit
8c8a56b9f6
25
apps/gateway-api/application.yaml
Normal file
25
apps/gateway-api/application.yaml
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
apiVersion: argoproj.io/v1alpha1
|
||||||
|
kind: Application
|
||||||
|
metadata:
|
||||||
|
name: gateway-api
|
||||||
|
namespace: argocd
|
||||||
|
annotations:
|
||||||
|
argocd.argoproj.io/sync-wave: "0"
|
||||||
|
finalizers:
|
||||||
|
- resources-finalizer.argocd.argoproj.io
|
||||||
|
spec:
|
||||||
|
project: default
|
||||||
|
source:
|
||||||
|
repoURL: https://github.com/kubernetes-sigs/gateway-api
|
||||||
|
targetRevision: v1.4.0
|
||||||
|
path: config/crd/standard
|
||||||
|
destination:
|
||||||
|
server: https://kubernetes.default.svc
|
||||||
|
syncPolicy:
|
||||||
|
automated:
|
||||||
|
prune: false
|
||||||
|
selfHeal: false
|
||||||
|
syncOptions:
|
||||||
|
- CreateNamespace=true
|
||||||
|
- Replace=true
|
||||||
|
- ServerSideApply=true
|
||||||
@ -27,4 +27,5 @@ spec:
|
|||||||
syncOptions:
|
syncOptions:
|
||||||
- CreateNamespace=true
|
- CreateNamespace=true
|
||||||
- PruneLast=true
|
- PruneLast=true
|
||||||
- PrunePropagationPolicy=foreground
|
- PrunePropagationPolicy=foreground
|
||||||
|
- Replace=true
|
||||||
0
apps/traefik/templates/dashboard-httproute.yaml
Normal file
0
apps/traefik/templates/dashboard-httproute.yaml
Normal file
0
apps/traefik/templates/gateway.yaml
Normal file
0
apps/traefik/templates/gateway.yaml
Normal file
0
apps/traefik/templates/reference-grant.yaml
Normal file
0
apps/traefik/templates/reference-grant.yaml
Normal file
@ -1,60 +1,30 @@
|
|||||||
|
|
||||||
|
|
||||||
traefik:
|
traefik:
|
||||||
# Service configuration
|
|
||||||
|
global:
|
||||||
|
checkNewVersion: false
|
||||||
|
|
||||||
|
installCRDs: true
|
||||||
|
|
||||||
service:
|
service:
|
||||||
type: LoadBalancer
|
type: LoadBalancer
|
||||||
annotations:
|
annotations:
|
||||||
io.cilium/lb-ipam-ips: "192.168.0.2"
|
io.cilium/lb-ipam-ips: "192.168.0.2"
|
||||||
|
|
||||||
# Ports configuration
|
|
||||||
ports:
|
|
||||||
web:
|
|
||||||
port: 80
|
|
||||||
exposedPort: 80
|
|
||||||
protocol: TCP
|
|
||||||
websecure:
|
|
||||||
port: 443
|
|
||||||
exposedPort: 443
|
|
||||||
protocol: TCP
|
|
||||||
tls:
|
|
||||||
enabled: true
|
|
||||||
metrics:
|
|
||||||
port: 9100
|
|
||||||
expose:
|
|
||||||
default: false
|
|
||||||
protocol: TCP
|
|
||||||
|
|
||||||
# Enable dashboard
|
ports:
|
||||||
ingressRoute:
|
websecure:
|
||||||
dashboard:
|
asDefault: true
|
||||||
enabled: true
|
|
||||||
matchRule: Host(`traefik.noxxos.nl`)
|
|
||||||
entryPoints:
|
|
||||||
- websecure
|
|
||||||
|
|
||||||
# Global arguments
|
|
||||||
globalArguments:
|
|
||||||
- "--global.checknewversion=false"
|
|
||||||
- "--global.sendanonymoususage=false"
|
|
||||||
|
|
||||||
# Additional arguments
|
|
||||||
additionalArguments:
|
|
||||||
- "--api.dashboard=true"
|
|
||||||
- "--log.level=INFO"
|
|
||||||
- "--accesslog=true"
|
|
||||||
- "--entrypoints.web.http.redirections.entrypoint.to=websecure"
|
|
||||||
- "--entrypoints.web.http.redirections.entrypoint.scheme=https"
|
|
||||||
|
|
||||||
# Providers
|
|
||||||
providers:
|
providers:
|
||||||
kubernetesCRD:
|
kubernetesCRD:
|
||||||
enabled: true
|
enabled: true
|
||||||
allowCrossNamespace: true
|
allowCrossNamespace: true
|
||||||
kubernetesIngress:
|
kubernetesIngress:
|
||||||
|
enabled: false
|
||||||
|
kubernetesGateway:
|
||||||
enabled: true
|
enabled: true
|
||||||
publishedService:
|
|
||||||
enabled: true
|
|
||||||
|
|
||||||
# Resource limits
|
|
||||||
resources:
|
resources:
|
||||||
requests:
|
requests:
|
||||||
cpu: "100m"
|
cpu: "100m"
|
||||||
@ -62,27 +32,36 @@ traefik:
|
|||||||
limits:
|
limits:
|
||||||
cpu: "500m"
|
cpu: "500m"
|
||||||
memory: "512Mi"
|
memory: "512Mi"
|
||||||
|
|
||||||
# Replicas
|
|
||||||
deployment:
|
deployment:
|
||||||
replicas: 2
|
replicas: 2
|
||||||
|
|
||||||
# Metrics (Prometheus)
|
|
||||||
metrics:
|
metrics:
|
||||||
prometheus:
|
prometheus:
|
||||||
enabled: true
|
enabled: true
|
||||||
addEntryPointsLabels: true
|
|
||||||
addServicesLabels: true
|
gateway:
|
||||||
|
listeners:
|
||||||
# Security
|
web:
|
||||||
securityContext:
|
namespacePolicy:
|
||||||
capabilities:
|
from: All
|
||||||
drop: [ALL]
|
|
||||||
add: [NET_BIND_SERVICE]
|
extraObjects:
|
||||||
readOnlyRootFilesystem: true
|
- apiVersion: gateway.networking.k8s.io/v1
|
||||||
runAsGroup: 65532
|
kind: HTTPRoute
|
||||||
runAsNonRoot: true
|
metadata:
|
||||||
runAsUser: 65532
|
name: traefik-dashboard
|
||||||
|
namespace: traefik
|
||||||
podSecurityContext:
|
spec:
|
||||||
fsGroup: 65532
|
parentRefs:
|
||||||
|
- name: traefik-gateway
|
||||||
|
hostnames:
|
||||||
|
- "traefik.noxxos.nl"
|
||||||
|
rules:
|
||||||
|
- matches:
|
||||||
|
- path: { type: PathPrefix, value: /dashboard }
|
||||||
|
- path: { type: PathPrefix, value: /api }
|
||||||
|
backendRefs:
|
||||||
|
- group: traefik.io
|
||||||
|
kind: TraefikService
|
||||||
|
name: api@internal
|
||||||
|
|||||||
20
platform/components/02-argocd/post-install/httproute.yaml
Normal file
20
platform/components/02-argocd/post-install/httproute.yaml
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
apiVersion: gateway.networking.k8s.io/v1
|
||||||
|
kind: HTTPRoute
|
||||||
|
metadata:
|
||||||
|
name: argocd-server
|
||||||
|
namespace: argocd
|
||||||
|
spec:
|
||||||
|
parentRefs:
|
||||||
|
- name: traefik-gateway
|
||||||
|
namespace: traefik
|
||||||
|
sectionName: websecure
|
||||||
|
hostnames:
|
||||||
|
- "argocd.noxxos.nl"
|
||||||
|
rules:
|
||||||
|
- matches:
|
||||||
|
- path:
|
||||||
|
type: PathPrefix
|
||||||
|
value: /
|
||||||
|
backendRefs:
|
||||||
|
- name: argocd-server
|
||||||
|
port: 80
|
||||||
@ -3,7 +3,4 @@ global:
|
|||||||
|
|
||||||
server:
|
server:
|
||||||
ingress:
|
ingress:
|
||||||
enabled: true
|
enabled: false
|
||||||
ingressClassName: traefik
|
|
||||||
annotations:
|
|
||||||
traefik.ingress.kubernetes.io/router.entrypoints: websecure
|
|
||||||
Loading…
Reference in New Issue
Block a user