Kibana dashboard not loading - {"statusCode":404,"error":"Not Found","message":"not found"}

1/10/2020

I am installing kibana with helm like so

 values = [
    <<-EOT
    replicas: 3
    healthCheckPath: /admin/kibana/app/kibana
    kibanaConfig:
      kibana.yml: |
        server.basePath: "/admin/kibana"
        server.rewriteBasePath: true
    ingress:
      enabled: true
      annotations:
        kubernetes.io/ingress.class: kong
        kubernetes.io/tls-acme: "true"
      path: /admin/kibana

I want kibana to be served at path /admin/kibana. eg. https://my-server.com/admin/kibana

I see the error {"statusCode":404,"error":"Not Found","message":"not found"}

In the logs

"res":{"statusCode":404,"responseTime":24,"contentLength":9},"message":"GET / 404 24ms - 9.0B"}

The pods are running fine which means health check is passing at /admin/kibana.

I have the server.basePath set as per documentation. What else is missing?

If I port-forward 5601 from my box,

kubectl port-forward svc/kibana 5601:5601

I can access kibana at localhost:5601/admin/kibana. But not on the domain.

The ingress

apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  annotations:
    kubernetes.io/ingress.class: kong
    kubernetes.io/tls-acme: "true"
  labels:
    app: kibana
    heritage: Tiller
    release: kibana
  name: kibana-kibana
spec:
  rules:
  - host: xxxx.xxxx.app
    http:
      paths:
      - backend:
          serviceName: kibana-kibana
          servicePort: 5601
        path: /admin/kibana
  tls:
  - hosts:
    - xxxx.xxxx.app
    secretName: wildcard-alchemy-tls
-- Anshu Dutta
kibana
kubernetes
kubernetes-helm

1 Answer

1/21/2020

The kong ingress by default was stripping path. Hence the issue.

-- Anshu Dutta
Source: StackOverflow