Skip to content

bug: unable to sync apisix upstream and route crd using name same as kubernetes service #2392

@rizalalfarizi123

Description

@rizalalfarizi123

Current Behavior

So i have apisix deployment in same cluster but different namespace with the service. apisix in platform namespace and service is in application namespace, we use argoCD as gitops tools. currently we use external domain to solve this issue, something like this:

-- this is working
apiVersion: apisix.apache.org/v2
kind: ApisixUpstream
metadata:
  name: service-a-upstream
spec:
  retries: 3
  externalNodes:
  - type: Domain
    name: service-a.application.svc.cluster.local

and i want to use it as the documentation, so apisix will map the kube service it self, like this

apiVersion: apisix.apache.org/v2
kind: ApisixUpstream
metadata:
  name: service-a
spec:
  retries: 3

i have referenced the upstream in route, but i got error when syncing the CRD
in ApisixRoute

ApisixIngress synced failed, with error: 1 error occurred: * unexpected status code 400; error message: {"error_msg":"failed to fetch upstream info by upstream id [507eaa0], response code: 404"} 

in ApisixUpstream

ApisixIngress synced failed, with error: upstream doesn't exist. It will be created after ApisixRoute is created referencing it. in ApisixUpstream 

Expected Behavior

ApisixIngress sync successfully

Error Logs

in ApisixRoute

ApisixIngress synced failed, with error: 1 error occurred: * unexpected status code 400; error message: {"error_msg":"failed to fetch upstream info by upstream id [507eaa0], response code: 404"} 

in ApisixUpstream

ApisixIngress synced failed, with error: upstream doesn't exist. It will be created after ApisixRoute is created referencing it. in ApisixUpstream 

Steps to Reproduce

  1. create kubernetes service
  2. create ApisixUpstream crd
  3. create ApisixRoute crd

Environment

  • APISIX Ingress controller version (run apisix-ingress-controller version --long) docker.io/bitnami/apisix-ingress-controller:1.8.3-debian-12-r0
  • Kubernetes cluster version (run kubectl version):
    Client Version: v1.31.6-dispatcher
    Kustomize Version: v5.4.2
    Server Version: v1.31.6-gke.1064001
  • OS version if running APISIX Ingress controller in a bare-metal environment (run uname -a) Linux cs-685233466911-default 6.6.72+ #1 SMP PREEMPT_DYNAMIC Sat Apr 19 09:07:01 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions