dashboard icon indicating copy to clipboard operation
dashboard copied to clipboard

Pod information page failed to load when using (generic) ephemeral volume mount

Open cshubhamrao opened this issue 3 years ago • 2 comments

What happened?

Trying to view a Pod on Dashboard results in an (almost) blank page when the Pod uses a Generic ephemeral volume

The observations and JS Console output are same as what was reported in #5831 and https://github.com/kubernetes/dashboard/issues/6381 (same issue but with a cephFS volume) Screenshot 2022-05-09 at 2 29 19 PM

image

What did you expect to happen?

To be able to view all the Pod Details (along with PV details). For eg: image

How can we reproduce it (as minimally and precisely as possible)?

Assuming the cluster is on AWS (for the gp2 storage class) [Not sure if storageClass is relevant]

  • Deploy this pod (uses a generic ephemeral volume using the default storage class):
cat << EOF | kubectl apply -f -
kind: Pod
apiVersion: v1
metadata:
  name: test-pod
spec:
  volumes:
    - name: job-folder
      ephemeral:
        volumeClaimTemplate:
          spec:
            accessModes:
              - ReadWriteOnce
            resources:
              requests:
                storage: 1Gi
            volumeMode: Filesystem
  containers:
    - name: jobs
      image: ubuntu
      command:
        - sleep
      args:
        - "infinity"
      workingDir: /job
      resources:
        requests:
          cpu: 100m
          memory: 200Mi
      volumeMounts:
        - name: job-folder
          mountPath: /job
      terminationMessagePath: /dev/termination-log
      terminationMessagePolicy: File
      imagePullPolicy: IfNotPresent

EOF
  • Navigate to Kubernetes Dashboard to view the pod details

Anything else we need to know?

No response

What browsers are you seeing the problem on?

Chrome, Safari

Kubernetes Dashboard version

v2.5.1+0.g520013042

Kubernetes version

v1.22.6-eks-7d68063

Go version

No response

Node.js version

No response

cshubhamrao avatar May 09 '22 09:05 cshubhamrao

Logs from kubernetes-dashboard pod:

︙
2022/05/10 12:12:26 Getting list of namespaces
2022/05/10 12:12:26 [2022-05-10T12:12:26Z] Incoming HTTP/2.0 GET /api/v1/pod/default/test-pod request from 127.0.0.1: 
2022/05/10 12:12:26 Getting details of test-pod pod in default namespace
2022/05/10 12:12:26 [2022-05-10T12:12:26Z] Incoming HTTP/2.0 GET /api/v1/pod/default/test-pod/event?itemsPerPage=50&page=1&sortBy=d,lastSeen request from 127.0.0.1: 
2022/05/10 12:12:26 [2022-05-10T12:12:26Z] Outcoming response to 127.0.0.1 with 200 status code
2022/05/10 12:12:26 Getting events related to a pod in namespace
+ 2022/05/10 12:12:26 [2022-05-10T12:12:26Z] Incoming HTTP/2.0 GET /api/v1/pod/default/test-pod/persistentvolumeclaim?itemsPerPage=50&page=1&sortBy=d,creationTimestamp request from 127.0.0.1: 
2022/05/10 12:12:26 [2022-05-10T12:12:26Z] Outcoming response to 127.0.0.1 with 200 status code
- 2022/05/10 12:12:26 No persistentvolumeclaims found related to test-pod pod
2022/05/10 12:12:26 [2022-05-10T12:12:26Z] Outcoming response to 127.0.0.1 with 200 status code
2022/05/10 12:12:26 received 0 resources from sidecar instead of 1
2022/05/10 12:12:26 received 0 resources from sidecar instead of 1
2022/05/10 12:12:26 No persistentvolumeclaims found related to test-pod pod
2022/05/10 12:12:26 [2022-05-10T12:12:26Z] Outcoming response to 127.0.0.1 with 200 status code
2022/05/10 12:12:30 [2022-05-10T12:12:30Z] Incoming HTTP/2.0 GET /api/v1/namespace request from 127.0.0.1: 
2022/05/10 12:12:30 Getting list of namespaces
2022/05/10 12:12:30 [2022-05-10T12:12:30Z] Outcoming response to 127.0.0.1 with 200 status code
︙

Logs from Chrome Console:

Uncaught TypeError: Cannot convert undefined or null to object
    at Function.assign (<anonymous>)
    at PersistentVolumeSource.get source [as source] (main.js:44954:19)
    at VolumeMountComponent.getMountTypeFromVolume (main.js:34144:21)
    at VolumeMountComponent_mat_cell_19_Template (main.js:34036:83)
    at executeTemplate (main.js:175173:5)
    at refreshView (main.js:174982:7)
    at refreshEmbeddedViews (main.js:176351:9)
    at refreshView (main.js:175020:5)
    at refreshComponent (main.js:176411:7)
    at refreshChildComponents (main.js:174729:5)

cshubhamrao avatar May 10 '22 12:05 cshubhamrao

The Kubernetes project currently lacks enough contributors to adequately respond to all issues and PRs.

This bot triages issues and PRs according to the following rules:

  • After 90d of inactivity, lifecycle/stale is applied
  • After 30d of inactivity since lifecycle/stale was applied, lifecycle/rotten is applied
  • After 30d of inactivity since lifecycle/rotten was applied, the issue is closed

You can:

  • Mark this issue or PR as fresh with /remove-lifecycle stale
  • Mark this issue or PR as rotten with /lifecycle rotten
  • Close this issue or PR with /close
  • Offer to help out with Issue Triage

Please send feedback to sig-contributor-experience at kubernetes/community.

/lifecycle stale

k8s-triage-robot avatar Aug 08 '22 15:08 k8s-triage-robot

/remove-lifecycle stale

vaibhav2107 avatar Aug 18 '22 14:08 vaibhav2107

This is actually fixed by #7093 and is available in release v2.6.1

/close

floreks avatar Aug 18 '22 20:08 floreks

@floreks: Closing this issue.

In response to this:

This is actually fixed by #7093 and is be available in release v2.6.1

/close

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

k8s-ci-robot avatar Aug 18 '22 20:08 k8s-ci-robot