Level=error msg="subset not found for namespace/service" providerName=kubernetescrd ingress=xxx namespace=xxx

I am running Traefik v2 on GKE cluster. Traefik is deployed via helm chart. I have an angular app deployed in a namespace (Deployment, Service). I have deployed an IngressRoute for the app. When I look at the traefik logs I get this error

Error:
time="2020-08-27T20:38:05Z" level=error msg="subset not found for demo/xxx-svc" providerName=kubernetescrd ingress=xxx namespace=demo

I see the Service has the pod as its endpoint. Pod is up and running fine with an IP assigned to it.

Traefik has its endpoint (An Internal Load balancer on GKE is created when traefik was deployed via helm chart)

Deployment YAML

apiVersion: apps/v1
kind: Deployment
metadata:
  name: {{ .Values.appName }}
  labels:
    app: {{ .Values.appName }}
spec:
  selector:
    matchLabels:
      app: {{ .Values.appName }}
  replicas: {{ .Values.replicaCount }}
  template:
    metadata:
      labels:
        app: {{ .Values.appName }}
    spec:
      containers:
        - name: {{ .Values.appName }}
          image: {{ .Values.imageSha }}
          imagePullPolicy: Always
          securityContext:
            allowPrivilegeEscalation: false
            runAsUser: 1000
          ports:
            - containerPort: 8080
              protocol: TCP

Service YAML

apiVersion: v1
kind: Service
metadata:
  name:  {{ .Values.appName }}-svc
  labels:
    app:  {{ .Values.appName }}
spec:
  type: ClusterIP
  selector:
    app:  {{ .Values.appName }}
  ports:
  - port: 8080
    protocol: TCP
    targetPort: 8080

IngressRoute YAML manifest:

apiVersion: traefik.containo.us/v1alpha1

kind: IngressRoute

metadata:

  name:  {{ .Values.appName }}-ingress

  namespace: {{ .Values.namespace }}

spec:

  entryPoints:

    - web

  routes:

  - match: Host(`xxx.xxx`)

    kind: Rule

    services:

    - kind: Service

      name:  {{ .Values.appName }}-svc

      namespace: demo

      port: 8080

  tls:

    secretName: cert

Any help here would be appreciated

Hello @sanjeevrg89 this issue is probably related to a Kubernetes bug that was recently fixed and merged.

You can follow this issue to track it on Traefik, but in case we confirm this it will probably be closed soon.

As a workaround it seems that updating / redeploying the service again may clear the faulty cache allowing Kubernetes to create the correct endpoints.