开发者
资源
[object Object][object Object][object Object]

问题描述[object Object][object Object]

在Windows系统上使用MindCluster Ascend Deployer工具在线下载OS依赖和软件包,并将软件包上传至待安装环境,在执行安装校验或者安装命令时报错提示“[ERROR]Resources missing detected,please run download operation firstly”或“ERROR: No matching distribution found for ansible-core”。

图 1 报错提示信息1[object Object][object Object]

图 2 报错提示信息2[object Object][object Object]

原因分析[object Object][object Object]

使用[object Object]--os-list[object Object]参数执行下载操作,会自动下载好CANN软件包所需OS依赖,以及Docker软件等,并存放于ascend-deployer/ascend_deployer/resources目录下,但在执行安装命令前,依赖所在文件夹(例如sources、pylibs等)未一同上传至待安装环境。

解决方法[object Object][object Object]

执行安装部署前,需将ascend-deployer整个目录上传到待安装设备的用户家目录。

[object Object]

问题描述[object Object][object Object]

使用MindCluster Ascend Deployer工具安装PyTorch后,执行如下安装后检查命令,报错“ERROR”

[object Object]

报错截图示例:

原因分析[object Object][object Object]

可能原因:模型运行时依赖三方库文件的实际加载顺序受环境中glibc版本、三方库加载时机以及实际依赖库版本等因素影响,部分场景下生成的加载顺序无法顺利触发DTV表(动态线程向量表)的扩容机制,导致DTV表耗尽,触发该问题。

问题定位:

  1. 进入/usr/local目录,执行如下命令配置Python环境变量。

    [object Object]
  2. 进入已安装CANN软件包所在目录,执行如下命令配置环境变量,以ascend-toolkit为例。

    [object Object]
  3. 执行如下命令,查看回显。

    [object Object]
  4. 报错“cannot allocate memory in static TLS block”则参考处理。若不是请参考实际报错信息定位解决。

解决方法[object Object][object Object]

使用LD_PRELOAD环境变量指定对报错的单个或多个库文件进行优先加载,并写入~/.bashrc文件。

  1. 以运行用户在任意目录下执行vi ~/.bashrc命令,打开[object Object].bashrc[object Object]文件,在文件最后一行后面添加以下内容。

    [object Object]
  2. 执行[object Object]:wq![object Object]命令保存文件并退出。

  3. 执行source ~/.bashrc命令使其立即生效。

[object Object]

问题描述[object Object][object Object]

使用MindCluster Ascend Deployer工具在Debian 10操作系统上安装软件包,安装时报错:file docker.service does not exist或docker.service failed because the control process exited。

原因分析[object Object][object Object]

docker安装时异常终止导致安装残留。

解决办法[object Object][object Object]

  1. [object Object][object Object]执行which docker查看二进制目录。如下图,查询到的结果为/usr/bin/docker。

    图 1 查看二进制目录[object Object][object Object]

  2. 根据查询到的二进制目录,执行以下命令

    [object Object]
  3. 再次执行安装步骤。

[object Object][object Object]

问题描述[object Object][object Object]

使用工具执行下载命令,报错提示“download failed with error url open failed, please check the network ,please retry”。

解决方法[object Object][object Object]

下载失败时,请先检查当前环境的网络连接是否正常。

如果网络正常,可能是由于网络不稳定或者服务器异常断连,建议用户重新执行下载命令。若再出现同样的报错信息,用户可修改ascend-deployer/ascend_deployer/downloader/config.ini文件中的pypi项定义的源,替换成其他可用源,再重新执行下载命令。

[object Object]

问题描述[object Object][object Object]

在Windows上使用MindCluster Ascend Deployer工具下载软件包时,下载界面勾选启用代理后使用默认系统代理,下载成功。取消勾选代理后下载失败。

原因分析[object Object][object Object]

可能是Windows代理设置的屏蔽规则有问题,导致所有网址被屏蔽。

Python的urllib组件解析屏蔽规则时,会使用";"号对屏蔽规则进行分割,若出现";"缺失或多余,可能导致分割异常,进而导致所有网址都被屏蔽。

解决办法[object Object][object Object]

手动修改Windows上代理的设置,方法如下。

  1. 单击电脑左下角的图标,单击,进入Windows设置页面。

  2. 单击“网络和Internet”>“代理”,进入代理设置页面。

  3. 在代理地址末尾添加";"符号,或者移除";"符号。

  4. 单击“保存”后,重新进入MindCluster Ascend Deployer工具的下载界面,启用代理后尝试重新下载。

    [object Object]
[object Object]

问题描述[object Object][object Object]

批量安装时,已通过inventory_file文件中的ansible_ssh_pass字段配置了远端服务器账号的密码,但在安装过程中仍提示需输入远端服务器的密码。

图 1 提示输入密码[object Object][object Object]

解决方法[object Object][object Object]

远端服务器的操作系统为openEuler 20.03LTS、openEuler 22.03LTS和CentOS 7.6时,不支持通过配置ansible_ssh_pass字段连接远端服务器。请参考使用SSH密钥认证方式连接。

[object Object]

问题描述[object Object][object Object]

Euler系统作为work节点,安装TensorFlow2.6.5时报错提示“Failed to connect to the host via ssh: Shared connection to XX closed”信息。

原因分析[object Object][object Object]

主机中设置了SSH连接会话超时时间,部署任务的时间若超过了设置的SSH连接会话超时时间,则会报错。

解决方法[object Object][object Object]

修改“/etc/ssh/sshd_config”文件中“ClientAliveInterval”的值为“1800”(超时时间为30分钟),并执行如下命令重启sshd服务。

[object Object]
[object Object][object Object]

问题描述[object Object][object Object]

如果系统安装torch后,在导入torch时出现“ImportError: libblas.so.3: cannot open shared object file: No such file or directory”提示信息。

原因分析[object Object][object Object]

系统未安装OpenBLAS依赖,导致这个库不存在。

解决方法[object Object][object Object]

  1. 执行如下安装系统依赖。

    [object Object]
  2. 创建软链接(请以具体的库版本为准)。

    1. 执行如下命令查找libopenblas-r0.3.9.so文件(具体显示的版本以实际为准)。

      [object Object]
    2. 执行如下命令创建软链接。

      [object Object]
[object Object]

问题描述[object Object][object Object]

如果系统安装torch后,在导入torch时出现“ImportError: libquadmath.so.0: cannot open shared object file: No such file or directory”等提示信息。

原因分析[object Object][object Object]

缺少系统依赖。

解决方法[object Object][object Object]

执行以下命令安装系统依赖。

[object Object]
[object Object]

问题描述[object Object][object Object]

CentOS7.6场景下,自行安装的Python3不完整,导致安装部署失败。

原因分析[object Object][object Object]

CentOS7.6_aarch64操作系统下,用户自行安装的Python3功能不完整,libselinux未安装。MindCluster Ascend Deployer工具进行安装时会优先使用Python3,导致安装失败。

解决办法[object Object][object Object]

重新安装libselinux,完成后在MindCluster Ascend Deployer上执行安装命令,安装成功。

[object Object]

问题描述[object Object][object Object]

使用MindCluster Ascend Deployer工具执行完安装或升级后,执行apt-get checkyum check,报错提示:Error:Check discovered 3 problems或The following packages have unmet dependencies:Depends: gcc-11(=11.2.0-19ubuntu1)but 11.4.0-1ubuntu1~22.04 is to be installed.

原因分析[object Object][object Object]

已安装的软件包存在不同的依赖,且这些依赖关系存在冲突。

解决办法[object Object][object Object]

请勿执行fix_broken类操作,联系华为技术支持定位解决依赖冲突。

[object Object][object Object]

问题描述[object Object][object Object]

如果在安装了run包的环境直接升级内核,再次重启时环境会出现启动异常,如所示。如果后续在该环境上再安装run包也无法使用。这是由于安装run包时驱动ko加载到内核,而升级内核版本会触发根文件系统打包,会将原来环境中ko打包到根文件系统,导致启动异常。

图 1 run包不可用[object Object][object Object]

解决方案[object Object][object Object]

  1. 手动卸载ko。

    1. 查询当前系统存在ko列表。

      lsmod|grep drv

    2. 将查询到的ko全部卸载,多个ko名字之间需要加空格。两个ko的示例如下(ko1,ko2请用实际ko名称替换)。

      rmmod ko1 ko2

  2. 打包根文件系统。

    dracut --force

  3. 重启环境。

    reboot