-
Notifications
You must be signed in to change notification settings - Fork 2k
Open
Labels
bugAn issue reporting a potential bugAn issue reporting a potential bugneeds triageAn issue that needs to be triagedAn issue that needs to be triagedwaiting for responseWaiting for author's responseWaiting for author's response
Description
Version
5.2.1
What Kubernetes platforms are you running on?
Other
Steps to reproduce
- We have k8s cluster with bus-bar ingress networking where most nodes in the cluster run ingress controller and take external HTTP(S) traffic on ports 80 and 443
- The current setup uses now deprecated community-maintained ingress-nginx running as DaemonSet with ExternalDNS set up to
source=ingresswhich syncs ingress-controller node external IPs to DNS and works okay - We're now trying to migrate to F5 Nginx Ingress (this repo), however we're facing major challenges as we can't get the F5 Ingress DaemonSet to pick up nodes' ExternalIP to get them reported to ExternalDNS
These are our Helm values for F5 Nginx Ingress (helm chart oci://ghcr.io/nginx/charts/nginx-ingress 2.3.1):
controller:
kind: DaemonSet
ingressClass:
name: f5-nginx
ingressClassResource:
setAsDefaultIngress: true
service:
enabled: false
externalTrafficPolicy: Local
reportIngressStatus:
enable: true
externalService: ""
enableLeaderElection: true
enableCustomResources: true
enableCertManager: true
enableExternalDNS: true
hostNetwork: trueHere are helm values for ingress-nginx that easily report ExternalIPs to ExternalDNS via Ingress objects (helm chart https://kubernetes.github.io/ingress-nginx 4.14.0):
controller:
kind: DaemonSet
ingressClass: ingress-nginx
ingressClassResource:
default: true
service:
enabled: false
reportNodeInternalIp: false
terminationGracePeriodSeconds: 240
extraArgs:
shutdown-grace-period: 180
post-shutdown-grace-period: 1
status-update-interval: 15
update-status-on-shutdown: false
election-ttl: 10s
hostPort:
enabled: trueEach node in the cluster has ExternalIP on eth0:
kubectl describe node x
# Real IPs changed here of course.
Addresses:
InternalIP: 10.0.0.3
Hostname: xxx
ExternalIP: 1.2.3.4We've tried so many things, but yet to make F5 Nginx resolve the nodes' ExternalIP and report the IPs to ExternalDNS.
How does one make F5 Nginx Ingress resolve node ExternalIP and report it to ExternalDNS without using MetalLB or other LoadBalancers that add unnecessary network hops and cost?
Metadata
Metadata
Assignees
Labels
bugAn issue reporting a potential bugAn issue reporting a potential bugneeds triageAn issue that needs to be triagedAn issue that needs to be triagedwaiting for responseWaiting for author's responseWaiting for author's response