feat(proxmox): Proxy Euclid Proxmox through Gateway

This commit is contained in:
Vegard Hagen
2024-03-02 12:14:30 +01:00
parent 3c33225e00
commit 9eeae42921
10 changed files with 78 additions and 5 deletions

View File

@@ -8,7 +8,7 @@ spec:
- name: cilium-gateway - name: cilium-gateway
namespace: gateway namespace: gateway
hostnames: hostnames:
- "haos.stonegarden.dev" - "haos.euclid.stonegarden.dev"
rules: rules:
- matches: - matches:
- path: - path:

View File

@@ -13,6 +13,8 @@ spec:
server: '*' server: '*'
- namespace: 'haos' - namespace: 'haos'
server: '*' server: '*'
- namespace: 'proxmox'
server: '*'
clusterResourceWhitelist: clusterResourceWhitelist:
- group: '*' - group: '*'
kind: '*' kind: '*'

View File

@@ -0,0 +1,18 @@
apiVersion: discovery.k8s.io/v1
kind: EndpointSlice
metadata:
name: proxmox-euclid-1
namespace: proxmox
labels:
kubernetes.io/service-name: proxmox-euclid
endpointslice.kubernetes.io/managed-by: cluster-admins
addressType: IPv4
ports:
- name: https
protocol: TCP
port: 8006
endpoints:
- addresses:
- 192.168.1.42
conditions: # https://github.com/argoproj/argo-cd/issues/15554
ready: true

View File

@@ -0,0 +1,8 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- ns.yaml
- svc.yaml
- endpoint-slice.yaml
- tls-route.yaml

View File

@@ -0,0 +1,4 @@
apiVersion: v1
kind: Namespace
metadata:
name: proxmox

View File

@@ -0,0 +1,11 @@
apiVersion: v1
kind: Service
metadata:
name: proxmox-euclid
namespace: proxmox
spec:
ports:
- name: https
protocol: TCP
port: 443
targetPort: 8006

View File

@@ -0,0 +1,15 @@
apiVersion: gateway.networking.k8s.io/v1alpha2
kind: TLSRoute
metadata:
name: proxmox-euclid
namespace: proxmox
spec:
parentRefs:
- name: cilium-gateway
namespace: gateway
hostnames:
- "proxmox.euclid.stonegarden.dev"
rules:
- backendRefs:
- name: proxmox-euclid
port: 443

View File

@@ -16,7 +16,7 @@ operator:
rollOutCiliumPods: true rollOutCiliumPods: true
debug: debug:
enabled: true enabled: false
# Increase rate limit when doing L2 announcements # Increase rate limit when doing L2 announcements
k8sClientRateLimit: k8sClientRateLimit:

View File

@@ -22,6 +22,17 @@ spec:
allowedRoutes: allowedRoutes:
namespaces: namespaces:
from: All from: All
- protocol: HTTPS
port: 443
name: https-gateway-euclid
hostname: "*.euclid.stonegarden.dev"
tls:
certificateRefs:
- kind: Secret
name: cloudflare-cert
allowedRoutes:
namespaces:
from: All
- protocol: HTTPS - protocol: HTTPS
port: 443 port: 443
name: https-domain-gateway name: https-domain-gateway

View File

@@ -10,11 +10,15 @@ ingress:
- hostname: hello.stonegarden.dev - hostname: hello.stonegarden.dev
service: hello_world service: hello_world
- hostname: ssh.stonegarden.dev - hostname: ssh.stonegarden.dev
service: ssh://192.168.1.12:22 service: ssh://192.168.1.50:22
- hostname: haos.stonegarden.dev - hostname: proxmox.euclid.stonegarden.dev
service: https://cilium-gateway-cilium-gateway.gateway.svc.cluster.local:443 service: https://cilium-gateway-cilium-gateway.gateway.svc.cluster.local:443
originRequest: originRequest:
originServerName: "*.stonegarden.dev" originServerName: proxmox.euclid.stonegarden.dev
- hostname: haos.euclid.stonegarden.dev
service: https://cilium-gateway-cilium-gateway.gateway.svc.cluster.local:443
originRequest:
originServerName: haos.euclid.stonegarden.dev
- hostname: blog.stonegarden.dev - hostname: blog.stonegarden.dev
service: https://cilium-gateway-cilium-gateway.gateway.svc.cluster.local:443 service: https://cilium-gateway-cilium-gateway.gateway.svc.cluster.local:443
originRequest: originRequest: