hubble-ui icon indicating copy to clipboard operation
hubble-ui copied to clipboard

HubbleUI will not load on a Prefix

Open erkerb4 opened this issue 1 year ago • 2 comments

Is there an existing issue for this?

  • [X] I have searched the existing issues

What happened?

Hello,

I am attempting to deploy the Hubble-UI at /hubble/ path. I've set hubble.ui.baseUrl: /hubble/ . The relay is also enabled, and hubble.ui.ingress.hosts is set accordingly. I am using Traefik as Ingress Controller. When I visit the Hubble-UI with the browser, I get an Unexpected Application Error! 404 Not Found. The hubble-ui backend container does not print much output.

values.yaml used for deployment
k8sServiceHost: "1.2.3.4"
k8sServicePort: "6443"
kubeProxyReplacement: "true"
ipv4NativeRoutingCIDR: "172.30.0.0/16"
ipam:
  mode: "cluster-pool"
  operator:
    clusterPoolIPv4PodCIDRList: "172.30.0.0/20"
    clusterPoolIPv4MaskSize: 24
socketLB:
  enabled: true
  hostNamespaceOnly: true
externalIPs:
  enabled: false
nodePort:
  enabled: true
hostPort:
  enabled: true
hubble:
  relay:
    enabled: true
    rollOutPods: true
  ui:
    enabled: true
    rollOutPods: true
    baseUrl: "/hubble/"
    ingress:
      enabled: true
      annotations:
        traefik.ingress.kubernetes.io/router.entrypoints: websecure
        traefik.ingress.kubernetes.io/router.tls: "true"
      hosts:
        - some.domain.net
      tls:
      - hosts:
        - some.domain.net
    frontend:
      server:
        ipv6:
          enabled: false
l2announcements:
  enabled: true
  leaseDuration: 15s
  leaseRenewDeadline: 5s
  leaseRetryPeriod: 2s
routingMode: "native"
autoDirectNodeRoutes: true
annotateK8sNode: true
bpf:
  masquerade: true
enableIPv4BIGTCP: true

Screenshot: image

Cilium Version

cilium version Client: 1.15.3 22dfbc58 2024-03-26T11:45:10+01:00 go version go1.21.8 linux/amd64 Daemon: 1.15.3 22dfbc58 2024-03-26T11:45:10+01:00 go version go1.21.8 linux/amd64

Kernel Version

uname -a Linux 6.7.2-1.el7.elrepo.x86_64 cilium/cilium#1 SMP PREEMPT_DYNAMIC Thu Jan 25 21:36:55 EST 2024 x86_64 x86_64 x86_64 GNU/Linux

Kubernetes Version

kubectl version Client Version: v1.28.6 Server Version: v1.28.6

Regression

No response

Sysdump

No response

Relevant log output

<details>
<summary>Logs from hubble-ui/frontend</summary>


frontend 172.30.4.85 - - [16/Apr/2024:12:45:51 +0000] "GET /hubble/ HTTP/1.1" 200 707 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/122.0.0.0 Safari/537.36" "2.3.4.5"
frontend 172.30.4.85 - - [16/Apr/2024:12:45:51 +0000] "GET /hubble/bundle.main.1eefac92f118e6b09c6c.css HTTP/1.1" 200 377893 "https://some.domain.net/hubble/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/122.0.0.0 Safari/537.36" "2.3.4.5"
frontend 172.30.4.85 - - [16/Apr/2024:12:45:51 +0000] "GET /hubble/bundle.main.1a26ffb78b602508bbc6.js HTTP/1.1" 200 1783875 "https://some.domain.net/hubble/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/122.0.0.0 Safari/537.36" "2.3.4.5"
frontend 172.30.4.85 - - [16/Apr/2024:12:45:51 +0000] "GET /hubble/bundle.main.1eefac92f118e6b09c6c.css.map HTTP/1.1" 200 416895 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/122.0.0.0 Safari/537.36" "2.3.4.5"
frontend 172.30.4.85 - - [16/Apr/2024:12:45:51 +0000] "GET /hubble/bundle.main.1a26ffb78b602508bbc6.js.map HTTP/1.1" 200 6111943 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/122.0.0.0 Safari/537.36" "2.3.4.5"
frontend 172.30.4.85 - - [16/Apr/2024:12:45:51 +0000] "GET /hubble/favicon.ico HTTP/1.1" 200 33310 "https://some.domain.net/hubble/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/122.0.0.0 Safari/537.36" "2.3.4.5"
frontend 172.30.3.140 - - [16/Apr/2024:12:45:54 +0000] "GET / HTTP/1.1" 200 707 "-" "kube-probe/1.28" "-"
```

Anything else?

No response

Cilium Users Document

  • [ ] Are you a user of Cilium? Please add yourself to the Users doc

Code of Conduct

  • [X] I agree to follow this project's Code of Conduct

erkerb4 avatar Apr 16 '24 12:04 erkerb4

Rolling back the hubble-ui components to 0.12.3 is a temporary workaround for this issue as hinted by #854

erkerb4 avatar Jun 03 '24 19:06 erkerb4

fwiw, I tried 0.13.1 Frontend/Backend with cilium v0.16.0-pre3 and failed to make it work.

Tried to revert FE/BE to 0.12.3 and it still didn't work; while I get the js bundles serverd back under the /hubble/ baseUrl, the application renders the same "Unexpected application error"

hellt avatar Jun 18 '24 11:06 hellt

We are also experiencing this issue after deploying cilium with hubble-ui enabled to an rke2 cluster, using "hostless" ingress, nginx ingress controller, and path based routing:

apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: path-ingress
  namespace: kube-system
spec:
  rules:
    - http:
        paths:
          - path: /hubble/
            pathType: Prefix
            backend:
              service:
                name: hubble-ui
                port:
                  name: http

spacedan avatar Dec 19 '24 19:12 spacedan