yandex-cloud / geesefs

Finally, a good FUSE FS implementation over S3
Other
691 stars 45 forks source link

Failed to locate executable #93

Closed sergeykorablin closed 11 months ago

sergeykorablin commented 1 year ago

Strange problem. The bucket was dynamical created, but is not mounted and pod stuck in ContainerCreating state

(geesefs)[523366]: geesefs-pvc_2dab208466_2d1edd_2d4aad_2d950c_2de037510a1800.service: Failed to locate executable /var/lib/kubelet/plugins/ru.yandex.s3.csi/geesefs: Permission denied
(geesefs)[523366]: geesefs-pvc_2dab208466_2d1edd_2d4aad_2d950c_2de037510a1800.service: Failed at step EXEC spawning /var/lib/kubelet/plugins/ru.yandex.s3.csi/geesefs: Permission denied

but at the same time:

ls -la /var/lib/kubelet/plugins/ru.yandex.s3.csi/                         
total 30280
drwxr-xr-x. 1 root root       30 окт 10 02:00 .
drwxr-x---. 1 root root       58 окт 10 01:53 ..
srwxr-xr-x. 1 root root        0 окт 10 01:53 csi.sock
-rwxr-xr-x. 1 root root 31003423 сен 28 00:07 geesefs

What I'm doing wrong?

sergeykorablin commented 1 year ago

sorry, looks like it's selinux configuration problem not sure it's correct or not but problem solved by:

sudo chcon -t container_runtime_exec_t /var/lib/kubelet/plugins/ru.yandex.s3.csi/geesefs
vitalif commented 11 months ago

It's correct, csi-s3 uses a hack to escape the container and start geesefs on the host to survive csi-s3 pod restarts/upgrades :)