昇腾社区首页
中文
注册

升级MindCluster集群调度前配置

批量升级MindCluster集群调度前需要参考以下操作完成配置。

K8s集群规模比较大的时候,可进行分批部署。分批部署时,除按照本章节进行inventory_file配置外,第二批及以后场景需将SCALE参数设置为true。

MindCluster Ascend Deployer工具支持升级的全部软件包请参见支持安装及升级场景

方式一:配置inventory_file文件

方式二:通过Excel表格配置服务器安装或升级的部署参数

使用约束

  • 使用MindCluster Ascend Deployer升级MindCluster集群调度时,请同样使用MindCluster Ascend Deployer升级其软件依赖。
  • 使用MindCluster Ascend Deployer升级MindCluster集群调度时,建议选择worker节点作为执行机。
  • 升级MindCluster场景时,请确保系统中Docker容器、文件系统或根目录的磁盘空间,在已用空间基础上额外使用18G(MindCluster镜像和训练推理镜像预估值)后,剩余可用空间大于30%。
  • 升级MindCluster时,不同操作系统节点间组建集群可能会导致升级失败。

前提条件

  • 已完成参数面网络配置。执行集群训练前,训练节点须进行hccn_tool网络配置,参考步骤 1仅修改配置hccn变量区域。
  • 请确保集群所有服务器已配置DNS,所有待安装设备DNS建议保持一致。若未配置DNS,请参考配置DNS完成DNS的配置。

配置inventory_file文件

  1. 登录MindCluster Ascend Deployer执行机。
  2. MindCluster Ascend Deployer执行机上配置待升级设备的IP地址、用户名。
    进入ascend-deployer/ascend_deployer目录,编辑inventory_file文件,添加完成后执行:wq保存退出。
    1. 按照表1要求完成master、worker、other_build_image(可选)、npu_node(可选)的变量配置。
      • 如果K8s集群中存在与master节点架构不一致的服务器,并且该节点(或多个异构节点)会部署MindCluster集群调度时,需在inventory_file文件中配置other_build_image。详细配置方法请参见配置other_build_image
      • 在向K8s集群应用MindCluster集群调度配置时,需要关注集群中不同的NPU硬件形态,通过设置npu_node配置不同硬件的特征服务器信息,若不配置npu_node,则默认为inventory_file中worker下面配置的首节点的NPU硬件类型。
      表1 参数说明

      参数

      是否可选

      说明

      IP

      必选

      服务器的IP地址,支持动态输入多个IP地址。参数说明如下:

      • index:服务器在IP段中的序号,Int类型,默认为1,如 1.1.1.1-1.1.1.3 set_hostname="master-{index}",那1.1.1.1对应的set_hostname=master-1。
      • step_len:IP跳位步长,末尾IP若不在步长内也会保留。如设置1.1.1.1-1.1.1.6 step_len=2,则输出1.1.1.1,1.1.1.3,1.1.1.5,1.1.1.6。
      • 在批量输入的配置{}中,支持解析参数,包含数据运算、转型等,解析后输出字符串类型。如1.1.1.1-1.1.1.3 set_hostname="master-{str(index+20)+'x'}",则解析后的主机信息为1.1.1.1 set_hostname="master-21x" ...。
      • IP段输入参数暂仅支持python3。

      ansible_ssh_user

      必选

      ssh登录远程服务器的账号,需要为root账号。

      ansible_ssh_pass

      可选

      ssh登录远程服务器账号的密码。

      如果配置了SSH密钥认证方式且root用户可以登录,则无需配置。

      ansible_ssh_port

      可选

      ssh连接的端口.

      使用默认值22端口时无需配置.

      如果使用了非默认的其他端口,则需要配置。

      set_hostname

      可选。

      设置节点在K8s集群中的节点名,建议用“master-1”或“worker-1”的格式,按照顺序填充。

      如果已有K8s集群,则该名字需要为节点在K8s中的名字,必须配置为小写,不可随意填写。

      说明

      • 配置master节点的主机为K8s的默认控制节点。
      • master个数必须为奇数。
    2. 在[all:vars]配置字段下完成全局变量配置。
      表2 参数说明

      参数

      是否可选

      说明

      SCALE

      可选

      用于决定是否进行分批部署的可选参数。

      默认值为false。

      K8s集群规模比较大的时候,可进行分批部署。第二批及之后场景需设置此参数值为true。

      RUNNER_IP

      可选

      可配置为MindCluster Ascend Deployer执行机的IP地址,请注意该IP需与其他待安装设备互通。

      建议在执行机含有多网段多个本机IP时配置该字段。

      示例如下:

      [master]
      xx.xxx.xx.x1 ansible_ssh_user="root" ansible_ssh_pass="xxxxxxx" set_hostname="master-1"     #请替换为实际待安装设备的IP
      
      [worker]
      xx.xxx.xx.x1-xx.xxx.xx.x3 ansible_ssh_user="root" ansible_ssh_pass="xxxxxxx"
      xx.xxx.xx.x5-xx.xxx.xx.x9 ansible_ssh_user="root" ansible_ssh_pass="xxxxxxx" set_hostname="worker-{ip}-{index}" step_len=2
      
      [npu_node]
      xx.xxx.xx.x3 ansible_ssh_user="root" ansible_ssh_pass="xxxxxxx" set_hostname="worker-1"      #npu_node用以设置不同硬件的特征服务器
      xx.xxx.xx.x4 ansible_ssh_user="root" ansible_ssh_pass="xxxxxxx" set_hostname="worker-2"