Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

bug: Error installing APISIX ingress controller in EKS with IPV6 #12091

Open
dopic opened this issue Mar 26, 2025 · 1 comment
Open

bug: Error installing APISIX ingress controller in EKS with IPV6 #12091

dopic opened this issue Mar 26, 2025 · 1 comment

Comments

@dopic
Copy link

dopic commented Mar 26, 2025

Current Behavior

When installing apisix through the Helm chart in a Kubernetes cluster on EKS with IPV6, it causes a communication failure between APISix and ETCD.

The error in the APISix (Gateway) Pod: http_init(): failed to load the configuration: http://apisix-etcd.apisix-system.svc.cluster.local:2379: No address associated with hostname

Note: I managed to make it work by updating the APISix configmap, and pointing the host directly to the IPV6 of the etcd Service, in the format http://[::]:2379, but I think this is not the best solution.

Expected Behavior

The expected behavior is that the connection will be successful.

Error Logs

/usr/local/openresty//luajit/bin/luajit ./apisix/cli/apisix.lua init
/usr/local/openresty//luajit/bin/luajit ./apisix/cli/apisix.lua init_etcd
2025/03/25 16:47:31 [warn] 1#1: [lua] health_check.lua:114: report_failure(): update endpoint: http://apisix-etcd.apisix-system.svc.cluster.local:2379 to unhealthy
nginx: [warn] [lua] health_check.lua:114: report_failure(): update endpoint: http://apisix-etcd.apisix-system.svc.cluster.local:2379 to unhealthy
2025/03/25 16:47:31 [error] 1#1: [lua] init.lua:98: http_init(): failed to load the configuration: http://apisix-etcd.apisix-system.svc.cluster.local:2379: No address associated with hostname
nginx: [error] [lua] init.lua:98: http_init(): failed to load the configuration: http://apisix-etcd.apisix-system.svc.cluster.local:2379: No address associated with hostname
2025/03/25 16:47:31 [warn] 51#51: 2 [lua] plugin.lua:205: load(): new plugins: {"ext-plugin-pre-req":true,"fault-injection":true,"mocking":true,"serverless-pre-function":true,"cors":true,"ip-restriction":true,"ua-restriction":true,"referer-restriction":true,"csrf":true,"uri-blocker":true,"request-validation":true,"chaitin-waf":true,"multi-auth":true,"openid-connect":true,"authz-casbin":true,"authz-casdoor":true,"wolf-rbac":true,"ldap-auth":true,"hmac-auth":true,"basic-auth":true,"jwt-auth":true,"jwe-decrypt":true,"key-auth":true,"consumer-restriction":true,"attach-consumer-label":true,"forward-auth":true,"opa":true,"authz-keycloak":true,"proxy-cache":true,"body-transformer":true,"ai-prompt-template":true,"ai-prompt-decorator":true,"proxy-mirror":true,"proxy-rewrite":true,"workflow":true,"api-breaker":true,"ai-proxy":true,"limit-conn":true,"limit-count":true,"limit-req":true,"gzip":true,"server-info":true,"traffic-split":true,"cas-auth":true,"degraphql":true,"kafka-proxy":true,"grpc-transcode":true,"real-ip":true,"ai":true,"client-control":true,"proxy-control":true,"request-id":true,"zipkin":true,"elasticsearch-logger":true,"echo":true,"loggly":true,"http-logger":true,"splunk-hec-logging":true,"skywalking-logger":true,"google-cloud-logging":true,"sls-logger":true,"tcp-logger":true,"kafka-logger":true,"rocketmq-logger":true,"syslog":true,"udp-logger":true,"file-logger":true,"clickhouse-logger":true,"tencent-cloud-cls":true,"inspect":true,"example-plugin":true,"aws-lambda":true,"azure-functions":true,"openwhisk":true,"openfunction":true,"serverless-post-function":true,"ext-plugin-post-req":true,"ext-plugin-post-resp":true,"redirect":true,"response-rewrite":true,"grpc-web":true,"http-dubbo":true,"public-api":true,"prometheus":true,"datadog":true,"loki-logger":true}, context: init_worker_by_lua

Steps to Reproduce

  1. Create an EKS Cluster with IPV6 support
  2. Install apisix through the Helm chart

Values.yml (for testing purposes)

autoscaling:
  enabled: true
  minReplicas: 1
  maxReplicas: 10
  targetCPUUtilizationPercentage: 80
  targetMemoryUtilizationPercentage: 80

service:  
  type: LoadBalancer
  externalTrafficPolicy: Cluster
  annotations:
    service.beta.kubernetes.io/aws-load-balancer-type: nlb

metrics:
  serviceMonitor:
    enabled: false
    
apisix:
  enableIPv6: true
  ssl:
    enabled: false
  admin:
    allow:
      ipList:
        - "0.0.0.0/0"
        
etcd:
  enabled: true
  nodeSelector:
    purpose: "infra"
    
dashboard:
  enabled: false

ingress-controller:
  enabled: true
  podAnnotations:
  nodeSelector:
    purpose: "infra"
  config:
    apisix:
      adminAPIVersion: v3
      serviceNamespace: apisix-system

Environment

  • APISIX version (run apisix version): 3.11.0 (Helm chart: 2.10.0)
  • Operating system (run uname -a): bottlerocket
  • OpenResty / Nginx version (run openresty -V or nginx -V): None
  • etcd version, if relevant (run curl http://127.0.0.1:9090/v1/server_info): 3.5.10 (Helm Chart: 9.7.3)
  • APISIX Dashboard version, if relevant: None
  • Plugin runner version, for issues related to plugin runners: None
  • LuaRocks version, for installation issues (run luarocks --version): None
@dosubot dosubot bot added the bug Something isn't working label Mar 26, 2025
@Baoyuantop
Copy link
Contributor

It looks like the DNS resolution is failing, can you check the DNS resolution of the APISIX Pod?

@Baoyuantop Baoyuantop removed the bug Something isn't working label Mar 31, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: 📋 Backlog
Development

No branches or pull requests

2 participants