Current Behavior
I'm trying to setup APISIX 3.15 in standalone api-driven mode (suitable for Ingress controller as per docs) using helm in AWS EKS. When deploying in EKS, we are deploying the apisix-gateway service as CLusterIP and enabling Ingress to create ALB in front of APISIX deployments. As per the docs, we to use statusAddress or publishService to make the ingress controller attach the address to the ingress/Gateway objects referencing the ingress class of type apisix . But when we pass the ingress hostname we got from cloud providers, it's throwing an error saying provided statusAddress is not valid IPAddress.
Expected Behavior
When deploying APISIX in cloud environments
Case 1: PublishService
Using ClusterIP service with Ingress enabled and PublishService flag is passed with a service name, We should support both IPAddress and Hostname Types and populate the status.ingress.hostname or ingress.status.ip based on the values from Ingress that's referencing the service provided and fetch the status.ingress.hostname/ip .
Case 2: StatusAddress
When gatewayproxy.spec.statusAddress is provided, check if the address is ip or hostname and update the gateway/ingress resources depending on the type of address provided.
Error Logs
provided statusAddress is not valid IPAddress.
Steps to Reproduce
- Install APISIX in standalone -apidriven mode with ingress controller enabled.
- Enable ingress for APISIX and make the apisix-gateway service as ClusterIP
- Pass the hostname returned in the status,ingress.hostname gatewayproxy.spec.statusAddress
- look in the apisix-ingress-controller pods for the error
Environment
- APISIX Ingress controller version : 2.0.1
- Kubernetes cluster version : v1.34
Current Behavior
I'm trying to setup APISIX 3.15 in standalone api-driven mode (suitable for Ingress controller as per docs) using helm in AWS EKS. When deploying in EKS, we are deploying the apisix-gateway service as CLusterIP and enabling Ingress to create ALB in front of APISIX deployments. As per the docs, we to use
statusAddressorpublishServiceto make the ingress controller attach the address to the ingress/Gateway objects referencing the ingress class of typeapisix. But when we pass the ingress hostname we got from cloud providers, it's throwing an error saying provided statusAddress is not valid IPAddress.Expected Behavior
When deploying APISIX in cloud environments
Case 1: PublishService
Using ClusterIP service with Ingress enabled and
PublishServiceflag is passed with a service name, We should support bothIPAddressandHostnameTypes and populate thestatus.ingress.hostnameoringress.status.ipbased on the values from Ingress that's referencing the service provided and fetch thestatus.ingress.hostname/ip.Case 2: StatusAddress
When
gatewayproxy.spec.statusAddressis provided, check if the address isiporhostnameand update the gateway/ingress resources depending on the type of address provided.Error Logs
provided statusAddress is not valid IPAddress.
Steps to Reproduce
Environment