Problems with Ingress or Service Router

I am attempting to setup an ingress into my k8s cluster running on AWS EKS that routes via virtual service to other services in my cluster. All services register on the UI ( except virtual ), intentions are configured as well. However attempting to check via postman all I get is a 503. What am I missing? I have attempted to connect using:

  • url/path with no host header resulting in 404
  • url with no host header resulting in 503
  • url with header Host: service-a:80 resulting in 503
  • url/path with header Host: service.ingress.dc-1.consul:80 resulting in 404
apiVersion: consul.hashicorp.com/v1alpha1
kind: IngressGateway
metadata:
  name: ingress-gateway
spec:
  listeners:
    - port: 80
      protocol: http
      services:
        - name: api
          hosts: ["*"]
    - port: 443
      protocol: http
      services:
        - name: api
          hosts: [ "*" ]
apiVersion: consul.hashicorp.com/v1alpha1
kind: ProxyDefaults
metadata:
  name: global
spec:
  config:
    protocol: http
apiVersion: consul.hashicorp.com/v1alpha1
kind: ServiceRouter
metadata:
  name: api
spec:
  routes:
    - match:
        http:
          pathPrefix: "/service_a"
      destination:
        service: service-a
    - match:
        http:
          pathPrefix: '/service_b'
      destination:
          service: service-b
    - match:
        http:
          pathPrefix: 'service_c'
      destination:
          service: service-c

I enabled metrics on the ui and realized that I was getting traffic to my service. After adding the prefixRewrite to the service router I am returning a 200. However the css / js for swagger is returning a 404.