Skip to content

CSI not sending secrets as part of NodeStageVolume call #26766

@Lol3rrr

Description

@Lol3rrr

Nomad version

Nomad v1.10.5
BuildDate 2025-09-09T14:36:45Z
Revision a3b86c697f38ab032e1acaae8503ed10815bc4a2

Operating system and Environment details

Nodes are running Ubuntu Server 22.04
3x Clients and 3x Servers collocated on the same servers

Issue

I am using the ceph-csi plugin to provision CSI volumes, recently it started that the NodeStageVolume grpc call failed. The ceph-csi plugin claims to not receive the configured secrets and therefore cannot perform the operation.

For this I also forked the ceph-csi plugin to add more logging, which seems to confirm this idea.

Reproduction steps

  1. Setup the ceph-csi plugin
  2. Create a CSI volume using the provided file
  3. Try to use it as part of a job

Expected Result

The CSI volume should mount normally

Actual Result

The CSI pre_hook fails

Log output from my modified ceph-csi version showing that there is no Secret send as part of the request

I0914 15:32:29.218823       1 utils.go:347] ID: 8 Req-ID: 0001-0024-8b83d68a-0635-11ee-94c5-29c911c40e53-0000000000000004-f1f1f6b8-4f43-4a7a-979a-f8b500718107 GRPC call: /csi.v1.Node/NodeStageVolume
I0914 15:32:29.220128       1 utils.go:348] ID: 8 Req-ID: 0001-0024-8b83d68a-0635-11ee-94c5-29c911c40e53-0000000000000004-f1f1f6b8-4f43-4a7a-979a-f8b500718107 GRPC request: {"staging_target_path":"/local/csi/staging/default/mc-volume-claudios/rw-file-system-single-node-writer","volume_capability":{"access_mode":{"mode":"SINGLE_NODE_WRITER"},"mount":{"fs_type":"ext4"}},"volume_context":{"clusterID":"8b83d68a-0635-11ee-94c5-29c911c40e53","imageFeatures":"layering","imageName":"csi-vol-f1f1f6b8-4f43-4a7a-979a-f8b500718107","journalPool":"test-rbd","pool":"test-rbd"},"volume_id":"0001-0024-8b83d68a-0635-11ee-94c5-29c911c40e53-0000000000000004-f1f1f6b8-4f43-4a7a-979a-f8b500718107"}
E0914 15:32:29.220383       1 nodeserver.go:350] ID: 8 Req-ID: 0001-0024-8b83d68a-0635-11ee-94c5-29c911c40e53-0000000000000004-f1f1f6b8-4f43-4a7a-979a-f8b500718107 Entered NodeStageVolume Handler with request: volume_id:"0001-0024-8b83d68a-0635-11ee-94c5-29c911c40e53-0000000000000004-f1f1f6b8-4f43-4a7a-979a-f8b500718107" staging_target_path:"/local/csi/staging/default/mc-volume-claudios/rw-file-system-single-node-writer" volume_capability:{mount:{fs_type:"ext4"} access_mode:{mode:SINGLE_NODE_WRITER}} volume_context:{key:"clusterID" value:"8b83d68a-0635-11ee-94c5-29c911c40e53"} volume_context:{key:"imageFeatures" value:"layering"} volume_context:{key:"imageName" value:"csi-vol-f1f1f6b8-4f43-4a7a-979a-f8b500718107"} volume_context:{key:"journalPool" value:"test-rbd"} volume_context:{key:"pool" value:"test-rbd"}
E0914 15:32:29.220420       1 nodeserver.go:354] ID: 8 Req-ID: 0001-0024-8b83d68a-0635-11ee-94c5-29c911c40e53-0000000000000004-f1f1f6b8-4f43-4a7a-979a-f8b500718107 Failed to validate Request
E0914 15:32:29.220445       1 utils.go:352] ID: 8 Req-ID: 0001-0024-8b83d68a-0635-11ee-94c5-29c911c40e53-0000000000000004-f1f1f6b8-4f43-4a7a-979a-f8b500718107 GRPC error: rpc error: code = InvalidArgument desc = stage secrets cannot be nil or empty

Volume File

id           = "traefik"
name         = "traefik"
type         = "csi"
plugin_id    = "ceph-csi"
capacity_max = "10G"
capacity_min = "1G"

capability {
  access_mode     = "single-node-writer"
  attachment_mode = "file-system"
}

secrets {
  userID  = "--REDACTED--"
  userKey = "--REDACTED--"
}

parameters {
  clusterID     = "8b83d68a-0635-11ee-94c5-29c911c40e53"
  pool          = "test-rbd"
  imageFeatures = "layering"
}

Metadata

Metadata

Assignees

Type

No type

Projects

Status

Done

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions