I'm trying set up NFS CSI volume on nomad cluster. I successfully configured controller, node jobs and created new volume on Linux nodes. But I cant do it on Windows 2019 nodes.
I catch an error:
Driver Failure failed to create container: API error (400): invalid mount config for type "bind": invalid mount path: '/csi'
The controller job spec:
job "democratic-csi-nfs-controller" {
datacenters = ["dc1"]
type = "system"
namespace = "CSI-Test"
group "controller" {
constraint {
attribute = "${attr.kernel.name}"
value = "windows"
}
task "plugin" {
driver = "docker"
config {
image = "docker.io/democraticcsi/democratic-csi:latest"
args = [
"--csi-version=1.5.0",
"--csi-name=org.democratic-csi.nfs",
"--log-level=info",
"--csi-mode=controller",
"--server-socket=unix:///csi/csi.sock",
"--server-address=172.20.19.52:/Nomad_share",
]
}
csi_plugin {
id = "org.democratic-csi.nfs"
type = "controller"
mount_dir = "/csi"
}
resources {
cpu = 500
memory = 256
}
}
}
}
I tried to specify path in Windows the way (--server-socket=unix:///csi/csi.sock
/--server-socket=/csi/csi.sock
and/or mount_dir = "C:\\csi"
). But I have the same error.
I also tried with mcr.microsoft.com/k8s/csi/smb-csi:v1.7.0
image, but I have the same error.
Config part for smb-csi:v1.7.0
image:
config {
image = "mcr.microsoft.com/k8s/csi/smb-csi:v1.7.0"
args = [
"--v=5",
"--nodeid=${attr.unique.hostname}",
"--endpoint=unix:///csi/csi.sock",
"--drivername=smb.csi.k8s.io"
]
}