我曾尝试连接未加密的EFS,但工作正常,但是使用加密的EFS,吊舱抛出以下错误:
Normal Scheduled 10m default-scheduler Successfully assigned default/jenkins-efs-test-8ffb4dc86-xnjdj to ip-10-100-4-249.ap-south-1.compute.internal
Warning FailedMount 6m33s (x2 over 8m49s) kubelet, ip-10-100-4-249.ap-south-1.compute.internal Unable to attach or mount volumes: unmounted volumes=[jenkins-home], unattached volumes=[sc-config-volume tmp jenkins-home jenkins-config secrets-dir plugins plugin-dir jenkins-efs-test-token-7nmkz]: timed out waiting for the condition
Warning FailedMount 4m19s kubelet, ip-10-100-4-249.ap-south-1.compute.internal Unable to attach or mount volumes: unmounted volumes=[jenkins-home], unattached volumes=[plugins plugin-dir jenkins-efs-test-token-7nmkz sc-config-volume tmp jenkins-home jenkins-config secrets-dir]: timed out waiting for the condition
Warning FailedMount 2m2s kubelet, ip-10-100-4-249.ap-south-1.compute.internal Unable to attach or mount volumes: unmounted volumes=[jenkins-home], unattached volumes=[tmp jenkins-home jenkins-config secrets-dir plugins plugin-dir jenkins-efs-test-token-7nmkz sc-config-volume]: timed out waiting for the condition
Warning FailedMount 35s (x13 over 10m) kubelet, ip-10-100-4-249.ap-south-1.compute.internal MountVolume.SetUp failed for volume "efs-pv" : kubernetes.io/csi: mounter.SetupAt failed: rpc error: code = Internal desc = Could not mount "" at "/var/lib/kubelet/pods/354800a1-dcf5-4812-aa91-0e84ca6fba59/volumes/kubernetes.io~csi/efs-pv/mount": mount failed: exit status 1
Mounting command: mount
Mounting arguments: -t efs /var/lib/kubelet/pods/354800a1-dcf5-4812-aa91-0e84ca6fba59/volumes/kubernetes.io~csi/efs-pv/mount
Output: mount: /var/lib/kubelet/pods/354800a1-dcf5-4812-aa91-0e84ca6fba59/volumes/kubernetes.io~csi/efs-pv/mount: can't find in /etc/fstab.
我在这里想念什么?
答案 0 :(得分:1)
您没有指定K8s清单是什么或任何配置。 There shouldn't be any difference between encrypted and non-encrypted volumes when it comes to mounting from the client-side。本质上,AWS使用KMS为您管理加密密钥。
您看到的错误基本上是由于the mount command is not specifying the mount point,因此在使用未加密的EFS卷时,您必须更改K8s方面的其他默认配置。另外,您要尝试挂载EFS卷的Kubernetes节点上的EFS Mount helper是否可用?
✌️</ p>
答案 1 :(得分:0)
如果EFS文件系统安装未按预期工作,请检查云初始化代理(/var/logs/cloud-init.log
和/var/logs/cloud-init-output.log
)的日志。检查/etc/fstab文件。
尝试将efs-csi-node守护程序集从amazon/aws-efs-csi-driver:v0.3.0
映像更新为amazon/aws-efs-csi-driver:latest
。
这里是示例安装EFS script。与您的比较,并注意:
此脚本的依赖性:
此脚本的注意事项:
/etc/fstab
,以便重新启动ECS实例时,将重新创建挂载点。使用命令$ service docker restart
挂载EFS后重新启动docker。最后,尝试重新启动EKS工作节点。
看看:mounting-efs-in-eks-cluster-example-deployment-fails,efs-provisioner,dynamic-ip-in-etc-fstab。