下载
中文
注册
我要评分
文档获取效率
文档正确性
内容完整性
文档易理解
在线提单
论坛求助
昇腾小AI

配置组件

用户需要对断点续训的Ascend Device PluginNodeD进行相关配置。

配置Ascend Device Plugin

只支持以容器化方式启动Ascend Device Plugin

  1. 根据所使用的故障处理模式,修改Ascend Device Plugin组件的启动yaml,修改如下所示加粗部分。
    1. 重调度模式

      在重调度模式下,Ascend Device Plugin的异常也会触发故障重调度。

      ...
            containers:
            - image: ascend-k8sdeviceplugin:v5.0.0.2
              name: device-plugin-01
              resources:
                requests:
                  memory: 500Mi
                  cpu: 500m
                limits:
                  memory: 500Mi
                  cpu: 500m
              command: [ "/bin/bash", "-c", "--"]
              args: [ "device-plugin  
                       -useAscendDocker=true 
                       -volcanoType=true                    # 重调度场景下必须使用Volcano
                       -autoStowing=true                    # 是否开启自动纳管开关,默认为true;设置为false代表关闭自动纳管,当芯片健康状态由unhealth变为health后,不会自动加入到可调度资源池中;关闭自动纳管,当芯片参数面网络故障恢复后,不会自动加入到可调度资源池中。该特性仅适用于Atlas 训练系列产品
                       -listWatchPeriod=5                   # 健康状态检查周期,范围[3,60];默认5秒
                       -logFile=/var/log/mindx-dl/devicePlugin/devicePlugin.log 
                       -logLevel=0" ]
              securityContext:
                privileged: true
                readOnlyRootFilesystem: true
      ...
    2. (可选)优雅容错模式:在重调度配置的基础上,新增“-hotReset”字段。
      ...
            containers:
            - image: ascend-k8sdeviceplugin:v5.0.0.2
              name: device-plugin-01
              resources:
                requests:
                  memory: 500Mi
                  cpu: 500m
                limits:
                  memory: 500Mi
                  cpu: 500m
              command: [ "/bin/bash", "-c", "--"]
              args: [ "device-plugin  
                       -useAscendDocker=true 
                       -volcanoType=true                    # 重调度场景下必须使用Volcano
                       -autoStowing=true                    # 是否开启自动纳管开关,默认为true;设置为false代表关闭自动纳管,当芯片健康状态由unhealth变为health后,不会自动加入到可调度资源池中;关闭自动纳管,当芯片参数面网络故障恢复后,不会自动加入到可调度资源池中。该特性仅适用于Atlas 训练系列产品
                       -hotReset=1 # 开启优雅容错模式
                       -listWatchPeriod=5                   # 健康状态检查周期,范围[3,60];默认5秒
                       -logFile=/var/log/mindx-dl/devicePlugin/devicePlugin.log 
                       -logLevel=0" ]
              securityContext:
                privileged: true
                readOnlyRootFilesystem: true
      ...
  2. K8s管理节点执行以下命令,启动Ascend Device Plugin
    kubectl apply -f device-plugin-xxx-v{version}.yaml
    如在Atlas 训练系列产品环境下启动该组件,示例如下。
    kubectl apply -f device-plugin-volcano-v5.0.0.2.yaml

配置NodeD

  1. 配置标签。

    NodeD需要安装到所有的计算节点,因此在安装NodeD之前需要给所有计算节点打上标签workerselector=dls-worker-node,命令如下所示。其中“nodeName”表示K8s集群中节点的名称。

    kubectl label node nodename workerselector=dls-worker-node --overwrite
  2. (可选)配置心跳发送间隔。用户可以通过手动修改NodeD的启动yaml,配置发送心跳的间隔时间。
    • K8s默认40秒未收到节点响应时将该节点置为NotReady,如未修改K8s的该配置,NodeD的“心跳发送间隔”使用默认值“5”即可,无需修改。
    • 当K8s APIServer请求压力变大时,可根据实际情况增大间隔时间,以减轻APIServer压力。
    1. 进入组件解压目录,执行以下命令,打开NodeD组件的启动yaml文件。
      vi noded-v{version}.yaml
    2. 在yaml文件的“args”行增加“-heartbeatInterval”参数,如下所示:
      ...
                env:
                  - name: NODE_NAME
                    valueFrom:
                      fieldRef:
                        fieldPath: spec.nodeName
                imagePullPolicy: Never
                command: [ "/bin/bash", "-c", "--"]
                args: [ "/home/hwMindX/noded -logFile=/var/log/mindx-dl/noded/noded.log -logLevel=0 -heartbeatInterval=5" ]
                securityContext:
                  readOnlyRootFilesystem: true
                  allowPrivilegeEscalation: false
                  capabilities:
                    drop: [ "ALL" ]
                  runAsUser: 9000
                  runAsGroup: 9000
                volumeMounts:
                  - name: log-noded
      ...
  3. 配置节点使用NodeD的监测开关。

    NodeD组件会定期上报节点状态。通过配置“nodeDEnable=on/off”参数开关来控制是否获取节点的状态信息并用于判断节点故障(获取信息需先安装NodeD)。在管理节点上执行命令如下:

    kubectl label nodes nodeName nodeDEnable=on --overwrite

    其中“nodeName”表示需要使用NodeD上报信息的节点。“on”表示开启NodeD对本节点的信息获取,使用获取的信息判断节点是否故障,“off”或无该参数表示仅上报节点信息但不判断节点故障。

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

当前产品无相关内容

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