文档
注册

安装HCCL-Controller

HCCL-Controller配合Volcano、Ascend Device Plugin(启动参数volcanoType设置为true)一起使用,按照训练任务章节下各训练框架“创建yaml文件”章节中获取的训练任务yaml模板下发NPU训练任务时,会默认生成格式为“模板一”的昇腾AI处理器资源配置文件(即Rank table文件)。模板格式详见CANN TensorFlow 1.15网络模型迁移和训练指南中“手工迁移和训练 > 分布式并行训练 > 准备昇腾AI处理器资源配置文件 > 模板一”。

前提条件

已完成安装前准备,具体操作请参见安装前准备

操作步骤

  1. 以root用户登录K8s管理节点,并执行以下命令,查看HCCL-Controller镜像和版本号是否正确。
    docker images | grep hccl-controller
    示例如下:
    root@ubuntu:# docker images | grep hccl-controller
    hccl-controller                      v3.0.RC3              f78993dcf54f        About an hour ago         143MB
  2. 将HCCL-Controller软件包解压目录(以“/home/ascend-hccl-controller”为例)下的yaml文件拷贝到K8s管理节点上任意目录(以“/home/ascend-hccl-controller”为例)。如果HCCL-Controller软件包在K8s管理节点上解压,可以不用进行拷贝操作。
    cd /home/ascend-hccl-controller
    scp root@{软件包解压节点IP地址}:/home/ascend-hccl-controller/hccl-controller-*.yaml ./
  3. 由于K8s自带的ServerAccount的token文件会挂载到物理机上,有暴露风险,可通过外部导入加密的KubeConfig文件替换ServerAccount进行安全加固。根据kubectl相关指导,参考hccl-controller-{version}.yaml中ClusterRole配置的资源权限,自行生成KubeConfig文件并导入(也可以参见导入KubeConfig文件制作、导入KubeConfig文件)。
  4. 如不修改组件启动参数,可跳过本步骤。否则,请根据实际情况修改对应启动yaml文件中HCCL-Controller的启动参数。启动参数请参见表1,可执行./hccl-controller -h查看参数说明。
  5. 执行以下命令,启动HCCL-Controller。
    • 如果导入了KubeConfig证书,执行如下命令。
      kubectl apply -f hccl-controller-without-token-{version}.yaml
    • 如果没有导入KubeConfig证书,执行如下命令。
      kubectl apply -f hccl-controller-{version}.yaml

    启动示例如下所示:

    root@ubuntu:/home/ascend-hccl-controller# kubectl apply -f hccl-controller-without-token-v3.0.RC3.yaml 
    deployment.apps/hccl-controller created
    root@ubuntu:/home/ascend-hccl-controller# kubectl get pod -n mindx-dl
    NAME                               READY   STATUS    RESTARTS   AGE
    ...
    hccl-controller-5d484dcc68-wfvrr   1/1    Running   0          11s
    ...

参数说明

表1 HCCL-Controller启动参数

参数

类型

默认值

说明

-jobParallelism

int

1

job任务的并发数。范围:[1,32]。

-podParallelism

int

1

pod任务的并发数。范围:[1,32]。

-version

bool

false

HCCL-Controller二进制版本号。

-json

string

v2

HCCL-Controller生成的ranktable文件模板。

  • v1:表示模板二
  • v2:表示模板一

-logLevel

int

0

日志级别:

  • -1:debug
  • 0:info
  • 1:warning
  • 2:error
  • 3:critical

-maxAge

int

7

日志备份时间限制,范围:[7, 700],单位:天。

-logFile

string

/var/log/mindx-dl/hccl-controller/hccl-controller.log

日志文件。

说明:

单个日志文件超过20 MB时会触发自动转储功能,文件大小上限不支持修改。

-maxBackups

int

30

转储后日志文件保留个数上限,范围:(0,30],单位:个。

-kubeConfig

string

/etc/mindx-dl/hccl-controller/.config/config6

默认为导入的加密kubeConfig文件路径,也可支持用户自定义路径下的kubeConfig文件,如果默认路径不存在配置文件,才启用InClusterConfig。

说明:

该文件必须使用证书导入工具进行加密,不支持明文文件。

-h

不涉及

显示帮助信息

搜索结果
找到“0”个结果

当前产品无相关内容

未找到相关内容,请尝试其他搜索词