<p>I want to my backend service which is deployed on kubernetes service to access using ingress with path /sso-dev/, for that i have deployed my service on kubernetes container the deployment, service and ingress manifest is mentioned below, but while accessing the ingress load balancer api with path /sso-dev/ it throws &quot;response 404 (backend NotFound), service rules for the path non-existent&quot; error</p>
<p>I required a help just to access the backend service which is working fine with kubernetes container load balance ip.</p>
<p>here is my ingress configure</p>
<pre><code>  apiVersion: networking.k8s.io/v1
    kind: Ingress
    metadata:
      annotations:
        ingress.kubernetes.io/backends: '{&quot;k8s-be-30969--6d0e236a1c7d6409&quot;:&quot;HEALTHY&quot;,&quot;k8s1-6d0e236a-default-sso-dev-service-80-849fdb46&quot;:&quot;HEALTHY&quot;}'
        ingress.kubernetes.io/forwarding-rule: k8s2-fr-uwdva40x-default-my-ingress-h98d0sfl
        ingress.kubernetes.io/target-proxy: k8s2-tp-uwdva40x-default-my-ingress-h98d0sfl
        ingress.kubernetes.io/url-map: k8s2-um-uwdva40x-default-my-ingress-h98d0sfl
        kubectl.kubernetes.io/last-applied-configuration: |
          {&quot;apiVersion&quot;:&quot;networking.k8s.io/v1&quot;,&quot;kind&quot;:&quot;Ingress&quot;,&quot;metadata&quot;:{&quot;annotations&quot;:{&quot;nginx.ingress.kubernetes.io/backend-protocol&quot;:&quot;HTTP&quot;,&quot;nginx.ingress.kubernetes.io/rewrite-target&quot;:&quot;/&quot;},&quot;name&quot;:&quot;my-ingress&quot;,&quot;namespace&quot;:&quot;default&quot;},&quot;spec&quot;:{&quot;rules&quot;:[{&quot;http&quot;:{&quot;paths&quot;:[{&quot;backend&quot;:{&quot;service&quot;:{&quot;name&quot;:&quot;sso-dev-service&quot;,&quot;port&quot;:{&quot;number&quot;:80}}},&quot;path&quot;:&quot;/sso-dev/*&quot;,&quot;pathType&quot;:&quot;ImplementationSpecific&quot;}]}}]}}
        nginx.ingress.kubernetes.io/backend-protocol: HTTP
        nginx.ingress.kubernetes.io/rewrite-target: /
      creationTimestamp: &quot;2022-06-22T12:30:49Z&quot;
      finalizers:
      - networking.gke.io/ingress-finalizer-V2
      generation: 1
      managedFields:
      - apiVersion: networking.k8s.io/v1
        fieldsType: FieldsV1
        fieldsV1:
          f:metadata:
            f:annotations:
              .: {}
              f:kubectl.kubernetes.io/last-applied-configuration: {}
              f:nginx.ingress.kubernetes.io/backend-protocol: {}
              f:nginx.ingress.kubernetes.io/rewrite-target: {}
          f:spec:
            f:rules: {}
        manager: kubectl-client-side-apply
        operation: Update
        time: &quot;2022-06-22T12:30:49Z&quot;
      - apiVersion: networking.k8s.io/v1
        fieldsType: FieldsV1
        fieldsV1:
          f:metadata:
            f:annotations:
              f:ingress.kubernetes.io/backends: {}
              f:ingress.kubernetes.io/forwarding-rule: {}
              f:ingress.kubernetes.io/target-proxy: {}
              f:ingress.kubernetes.io/url-map: {}
            f:finalizers:
              .: {}
              v:&quot;networking.gke.io/ingress-finalizer-V2&quot;: {}
          f:status:
            f:loadBalancer:
              f:ingress: {}
        manager: glbc
        operation: Update
        subresource: status
        time: &quot;2022-06-22T12:32:13Z&quot;
      name: my-ingress
      namespace: default
      resourceVersion: &quot;13073497&quot;
      uid: 253e067f-0711-4d24-a706-497692dae4d9
    spec:
      rules:
      - http:
          paths:
          - backend:
              service:
                name: sso-dev-service
                port:
                  number: 80
            path: /sso-dev/*
            pathType: ImplementationSpecific
    status:
      loadBalancer:
        ingress:
        - ip: 34.111.49.35
</code></pre>
<p>Deployment.yaml</p>
<pre><code>apiVersion: apps/v1
kind: Deployment
metadata:
  annotations:
    deployment.kubernetes.io/revision: &quot;1&quot;
  creationTimestamp: &quot;2022-06-22T08:52:11Z&quot;
  generation: 1
  labels:
    app: sso-dev
  managedFields:
  - apiVersion: apps/v1
    fieldsType: FieldsV1
    fieldsV1:
      f:metadata:
        f:labels:
          .: {}
          f:app: {}
      f:spec:
        f:progressDeadlineSeconds: {}
        f:replicas: {}
        f:revisionHistoryLimit: {}
        f:selector: {}
        f:strategy:
          f:rollingUpdate:
            .: {}
            f:maxSurge: {}
            f:maxUnavailable: {}
          f:type: {}
        f:template:
          f:metadata:
            f:labels:
              .: {}
              f:app: {}
          f:spec:
            f:containers:
              k:{&quot;name&quot;:&quot;cent-sha256-1&quot;}:
                .: {}
                f:image: {}
                f:imagePullPolicy: {}
                f:name: {}
                f:resources: {}
                f:terminationMessagePath: {}
                f:terminationMessagePolicy: {}
            f:dnsPolicy: {}
            f:restartPolicy: {}
            f:schedulerName: {}
            f:securityContext: {}
            f:terminationGracePeriodSeconds: {}
    manager: GoogleCloudConsole
    operation: Update
    time: &quot;2022-06-22T08:52:11Z&quot;
  - apiVersion: apps/v1
    fieldsType: FieldsV1
    fieldsV1:
      f:metadata:
        f:annotations:
          .: {}
          f:deployment.kubernetes.io/revision: {}
      f:status:
        f:availableReplicas: {}
        f:conditions:
          .: {}
          k:{&quot;type&quot;:&quot;Available&quot;}:
            .: {}
            f:lastTransitionTime: {}
            f:lastUpdateTime: {}
            f:message: {}
            f:reason: {}
            f:status: {}
            f:type: {}
          k:{&quot;type&quot;:&quot;Progressing&quot;}:
            .: {}
            f:lastTransitionTime: {}
            f:lastUpdateTime: {}
            f:message: {}
            f:reason: {}
            f:status: {}
            f:type: {}
        f:observedGeneration: {}
        f:readyReplicas: {}
        f:replicas: {}
        f:updatedReplicas: {}
    manager: kube-controller-manager
    operation: Update
    subresource: status
    time: &quot;2022-06-22T11:51:22Z&quot;
  name: sso-dev
  namespace: default
  resourceVersion: &quot;13051665&quot;
  uid: c8732885-b7d8-450c-86c4-19769638eb2a
spec:
  progressDeadlineSeconds: 600
  replicas: 3
  revisionHistoryLimit: 10
  selector:
    matchLabels:
      app: sso-dev
  strategy:
    rollingUpdate:
      maxSurge: 25%
      maxUnavailable: 25%
    type: RollingUpdate
  template:
    metadata:
      creationTimestamp: null
      labels:
        app: sso-dev
    spec:
      containers:
      - image: us-east4-docker.pkg.dev/centegycloud-351515/sso/cent@sha256:64b50553219db358945bf3cd6eb865dd47d0d45664464a9c334602c438bbaed9
        imagePullPolicy: IfNotPresent
        name: cent-sha256-1
        resources: {}
        terminationMessagePath: /dev/termination-log
        terminationMessagePolicy: File
      dnsPolicy: ClusterFirst
      restartPolicy: Always
      schedulerName: default-scheduler
      securityContext: {}
      terminationGracePeriodSeconds: 30
status:
  availableReplicas: 3
  conditions:
  - lastTransitionTime: &quot;2022-06-22T08:52:11Z&quot;
    lastUpdateTime: &quot;2022-06-22T08:52:25Z&quot;
    message: ReplicaSet &quot;sso-dev-8566f4bc55&quot; has successfully progressed.
    reason: NewReplicaSetAvailable
    status: &quot;True&quot;
    type: Progressing
  - lastTransitionTime: &quot;2022-06-22T11:51:22Z&quot;
    lastUpdateTime: &quot;2022-06-22T11:51:22Z&quot;
    message: Deployment has minimum availability.
    reason: MinimumReplicasAvailable
    status: &quot;True&quot;
    type: Available
  observedGeneration: 1
  readyReplicas: 3
  replicas: 3
  updatedReplicas: 3
</code></pre>
<p>Service.yaml</p>
<pre><code>apiVersion: v1
kind: Service
metadata:
  annotations:
    cloud.google.com/neg: '{&quot;ingress&quot;:true}'
    cloud.google.com/neg-status: '{&quot;network_endpoint_groups&quot;:{&quot;80&quot;:&quot;k8s1-6d0e236a-default-sso-dev-service-80-849fdb46&quot;},&quot;zones&quot;:[&quot;us-central1-c&quot;]}'
  creationTimestamp: &quot;2022-06-22T08:53:32Z&quot;
  finalizers:
  - service.kubernetes.io/load-balancer-cleanup
  labels:
    app: sso-dev
  managedFields:
  - apiVersion: v1
    fieldsType: FieldsV1
    fieldsV1:
      f:metadata:
        f:labels:
          .: {}
          f:app: {}
      f:spec:
        f:allocateLoadBalancerNodePorts: {}
        f:externalTrafficPolicy: {}
        f:internalTrafficPolicy: {}
        f:ports:
          .: {}
          k:{&quot;port&quot;:80,&quot;protocol&quot;:&quot;TCP&quot;}:
            .: {}
            f:port: {}
            f:protocol: {}
            f:targetPort: {}
        f:selector: {}
        f:sessionAffinity: {}
        f:type: {}
    manager: GoogleCloudConsole
    operation: Update
    time: &quot;2022-06-22T08:53:32Z&quot;
  - apiVersion: v1
    fieldsType: FieldsV1
    fieldsV1:
      f:metadata:
        f:finalizers:
          .: {}
          v:&quot;service.kubernetes.io/load-balancer-cleanup&quot;: {}
      f:status:
        f:loadBalancer:
          f:ingress: {}
    manager: kube-controller-manager
    operation: Update
    subresource: status
    time: &quot;2022-06-22T08:53:58Z&quot;
  - apiVersion: v1
    fieldsType: FieldsV1
    fieldsV1:
      f:metadata:
        f:annotations:
          f:cloud.google.com/neg-status: {}
    manager: glbc
    operation: Update
    subresource: status
    time: &quot;2022-06-22T12:30:49Z&quot;
  name: sso-dev-service
  namespace: default
  resourceVersion: &quot;13071362&quot;
  uid: 03b0cbe6-1ed8-4441-b2c5-93ae5803a582
spec:
  allocateLoadBalancerNodePorts: true
  clusterIP: 10.32.6.103
  clusterIPs:
  - 10.32.6.103
  externalTrafficPolicy: Cluster
  internalTrafficPolicy: Cluster
  ipFamilies:
  - IPv4
  ipFamilyPolicy: SingleStack
  ports:
  - nodePort: 30584
    port: 80
    protocol: TCP
    targetPort: 8080
  selector:
    app: sso-dev
  sessionAffinity: None
  type: LoadBalancer
status:
  loadBalancer:
    ingress:
    - ip: 104.197.93.226
</code></pre>
<p><a href="https://i.stack.imgur.com/zEh4m.png" rel="noreferrer"><img src="https://i.stack.imgur.com/zEh4m.png" alt="Load Balancer" /></a></p>

<p>You need to change the pathType to Prefix as follows, in your ingress:</p>
<pre><code>pathType: Prefix
</code></pre>
<p>Because I noted that you are using the <code>pathType: ImplementationSpecific</code> . With  this value, the matching depends on the <code>IngressClass</code>, so I think for your case the <code>pathType Prefix</code> should be more helpful. Additionally, you can find more information about the ingress path types supported in kubernetes in in this <a href="https://kubernetes.io/docs/concepts/services-networking/ingress/#path-types" rel="nofollow noreferrer">link</a>.</p>
