![gcsfuse 在 GKE Autopilot 上因错误 1 而终止](https://linux22.com/image/779536/gcsfuse%20%E5%9C%A8%20GKE%20Autopilot%20%E4%B8%8A%E5%9B%A0%E9%94%99%E8%AF%AF%201%20%E2%80%8B%E2%80%8B%E8%80%8C%E7%BB%88%E6%AD%A2.png)
我正在尝试从在 GKE Autopilot 中运行的 kubernetes pod 使用 gcsfuse。我了解到 GKE autopilot 可能存在问题,但我收到的错误与通常报告的错误不同。
gcsfuse 现在可以与 Autopilot 配合使用吗?还是没有希望了?csi-fuse 驱动程序是 GKE Autopilot 上的一个可能选项?
这是我看到的错误:
root@gcs-k8s-test:/mnt# gcsfuse gs://bucketXXXX /mnt/fuse
2022/08/16 01:32:17.656053 Start gcsfuse/0.41.5 (Go version go1.18.4) for app "" using mount point: /mnt/fuse
2022/08/16 01:32:17.781937 Opening GCS connection...
2022/08/16 01:32:18.164009 Mounting file system "gs://bucketXXXX"...
daemonize.Run: readFromProcess: sub-process: mountWithArgs: mountWithConn: Mount: mount: running /bin/fusermount: exit status 1
谢谢你的帮助。
答案1
如果您尝试启用 gcsfuse 调试( gcsfuse --foreground --debug_fuse --debug_fs --debug_gcs --debug_http bucket_name /local/mount/folder ),它可能会显示有关“/usr/bin/fusermount:未找到 fuse 设备,请先尝试‘modprobe fuse’”的错误。似乎 gcsfuse pod 需要特权模式以及“SYS_ADMIN”功能。但是,GKE Autopilot 不允许此类功能。(https://github.com/GoogleCloudPlatform/gcsfuse/issues/497)