创建训练作业时出现“实例挂卷失败”的事件
问题现象
训练作业的状态一直在“创建中”,查看训练作业的“事件”,有异常信息“实例挂卷失败”,详情为“Unable to mount volumes for pod xxx ... list of unmounted volumes=[nfs-x]”。
原因分析
用户账号下的SFS Turbo所在的VPC网络需要与专属资源池所在的网络打通,运行于该专属资源池的训练作业才能正常挂载SFS。因此,当训练作业挂载SFS失败时,可能是网络不通导致的。
处理步骤
- 进入训练作业详情页,在左侧获取SFS Turbo的名称。
图1 获取SFS Turbo的名称
- 登录弹性文件服务SFS控制台,在SFS Turbo列表找到训练作业挂载的SFS Turbo,单击名称进入详情页。获取VPC信息、安全组信息和endpoint信息。
- VPC信息:SFS Turbo详情页的“虚拟私有云”。
- 安全组信息:SFS Turbo详情页的“安全组”。
- endpoint信息:SFS Turbo详情页的“共享路径”,去除“:/”即为sfs-turbo-endpoint。例如共享路径为“4ab556b5-d689-44f1-9302-24c09daxxxxc.sfsturbo.internal:/”,则sfs-turbo-endpoint为“4ab556b5-d689-44f1-9302-24c09daxxxxc.sfsturbo.internal”。
- 查看SFS Turbo的VPC网段是否满足如下2个条件。
条件一:SFS Turbo网段不能与192.168.20.0/24重叠,否则会和专属资源池的网段发生冲突,因为专属资源池的默认网段为192.168.20.0/24。专属资源池实际使用的网段可以在资源池的详情页面查看“网络”获取。
条件二:SFS Turbo网段不能与172网段重叠,否则会和容器网络发生冲突,因为容器网络使用的是172网段。
- 如果不满足条件,则修改SFS Turbo的VPC网段,推荐网段为10.X.X.X。具体操作请参见修改虚拟私有云网段。
- 如果满足条件,则继续下一步。
- 查看SFS Turbo的VPC网段的安全组是否被限制了。
在所选专属资源池中新建一个未挂载的SFS Turbo的训练作业,当训练作业处于“运行中”时,通过Cloud Shell功能登录训练作业worker-0实例,使用curl {sfs-turbo-endpoint}:{port}命令检查port是否正常打开,SFS Turbo所需要入方向的端口号为111、445、2049、2051、2052、20048,具体请参见创建文件系统的“安全组”参数。Cloud Shell功能的操作指导请参见使用CloudShell登录训练容器。
- 是,则修改安全组的配置,具体操作请参见修改安全组规则。
- 否,则继续下一步。
- 确认SFS Turbo是否存在异常。