文档首页> AI开发平台ModelArts> 故障排除> 通用问题> ModelArts中提示OBS路径错误
更新时间:2024-04-11 GMT+08:00

ModelArts中提示OBS路径错误

问题现象

  • 在ModelArts中引用OBS桶路径时,提示找不到用户创建的OBS桶或提示ModelArts.2791:非法的OBS路径。
  • 在对OBS桶操作时,出现Error: stat:403错误。
  • Notebook中下载OBS文件时提示Permission denied。

原因分析

  • OBS桶与ModelArts不在同一个区域导致。
  • 没有他人OBS桶的访问权限。
  • ModelArts上没有配置委托授权。
  • OBS文件加密上传导致。ModelArts不支持OBS加密文件。
  • OBS桶的权限和访问ACL设置不正确导致。
  • 创建训练作业时,代码目录和启动文件设置有误。

处理办法

查看OBS桶与ModelArts是否在同一个区域

  1. 查看创建的OBS桶所在区域。
    1. 登录OBS管理控制台
    2. 进入“对象存储”界面,可在搜索框中输入已经创建的桶名称或者桶名称列表栏,找到您创建的OBS桶。

      “区域栏”可查看创建的OBS桶的所在区域。

      图1 OBS桶所在区域
  2. 查看ModelArts所在区域。

    登录ModelArts控制台,在控制台左上角可查看ModelArts所在区域。

  3. 比对您创建的OBS桶所在区域与ModelArts所在区域是否一致。务必保证OBS桶与ModelArts所在区域一致。

检查您的账号是否有该OBS桶的访问权限

如果在使用Notebook时,需要访问其他账号的OBS桶,请查看您的账号是否有该OBS桶的访问权限。

检查委托授权

请前往全局配置,查看是否具有OBS访问授权。如果没有,请参考配置访问授权(全局配置)

检查OBS桶是否为非加密桶

  1. 进入OBS管理控制台,单击桶名称进入概览页。
  2. 确保此OBS桶的加密功能关闭。如果此OBS桶为加密桶,可单击“默认加密”选项进行修改。

    创建OBS桶时,桶的存储类别请勿选择“归档存储”“深度归档存储”,归档存储的OBS桶会导致模型训练失败。

    图2 查看OBS桶是否加密

检查OBS文件是否为加密文件

  1. 进入OBS管理控制台,单击桶名称进入概览页。
  2. 单击左侧菜单栏对象,进入对象列表。单击存放文件的对象名称,并找到具体的文件,可在文件列表中查看文件是否加密。文件加密无法取消,请先解除桶加密,重新上传图片或文件。
    图3 查看文件是否加密

检查OBS桶的ACLs设置

  1. 进入OBS管理控制台,查找对应的OBS桶,单击桶名称进入概览页。
  2. 在左侧菜单栏选择“访问权限控制>桶ACLs”,检查当前账号是否具备读写权限,如果没有权限,请联系桶的拥有者配置权限。
    图4 桶ACLs
  3. 在左侧菜单栏选择“访问权限控制>桶策略”,检查当前OBS桶是否允许子用户访问。

检查训练作业的代码目录和启动文件地址

  1. 进入ModelArts管理控制台,在“作业管理 > 训练作业”中查找到对应的“运行失败”的训练作业,单击作业“名称/ID”进入详情页。
  2. 在详情页左侧栏中,查看代码目录和启动文件选择是否正确,且OBS文件名称中不能有空格。
    • 代码目录:需要选择到OBS目录。如果选择了文件,会提示非法的OBS路径。
    • 启动文件:需要选择以“.py”结尾的文件。如果选择的文件不是以“.py”结尾,会提示非法的OBS路径。
    图5 查看训练作业的代码目录和启动文件

如果还不能解决问题,请参考案例已配置OBS权限,仍然无法访问OBS(403 AccessDenied)进行进一步排查。