华为云Stack 8.2.1 资源发放指南 03

AI加速型云服务器配置方案

AI加速型云服务器配置方案

简介

该配置方案针对虚拟化类型为KVM的场景下,如果使用HCC Turnkey搭建环境时,未规划AI加速型主机组,在申请此种类型的ECS之前,需要完成的配置操作。

AI加速型云服务器

华为昇腾芯片能够提供强大的计算能力,同时内置硬件视频编解码引擎,支持16路全高清视频解码器。AI加速型云服务器以华为昇腾芯片为加速核心基于芯片低功耗、高计算能力的特性,实现了能效比的大幅提升。

应用场景

AI加速型云服务器适用于高实时、高并发的海量计算场景,如AI推理、机器学习、视频编解码等;结合用于机器视觉、语音识别、自然语言处理通用技术,可以支撑智能零售、智能园区、机器人云大脑、平安城市等。

方案概述

本配置方案描述虚拟化类型为KVM的场景下,AI加速型云服务器完整的手动配置过程,具体的内容如下:

  1. 支持的NPU芯片型号、操作系统信息及AI加速型云服务器常见功能的支持范围请参见AI加速型云服务器支持范围
  2. 如果需要扩容计算节点,请参考扩容计算节点(可选)完成计算节点扩容及网络配置。
  3. 为主机安装NPU芯片的驱动,详细的操作步骤请参见为主机安装驱动
  4. 开启物理机上的直通设备运行参数(X86:intel_iommu;ARM:Support Smmu),重启物理机后配置生效。详细的操作步骤请参见开启运行参数
    • 如果用HCC Turnkey搭建环境时,已经规划了AI加速型主机组,环境搭建完成后,该参数已经完成配置,无需执行此任务。
    • 修改参数的配置值后,物理机需要重启生效。如果物理机上有正在运行的云服务器或其他应用,请选择合适的时间点或将云服务器迁移后再重启,避免对您的业务造成影响。
  1. 主机组及规格的创建。详细的操作步骤请参见创建AI加速型主机组创建AI加速型规格
  2. 制作镜像步骤参见制作镜像
  3. 创建弹性云服务器参见创建AI加速型弹性云服务器

AI加速型云服务器支持范围

  • 支持的物理服务器和操作系统
    • 单击兼容性查询工具页面,选择所需的版本号,进入兼容性查询页面。
    • 勾选查询条件,单击“查询”,选择关注的查询结果。单击“下载兼容性查询结果”,获取兼容性列表。
  • 常见功能支持范围
    表4-66 常见功能支持情况

    功能

    是否支持

    离线变更规格

    在线变更规格

    冷迁移

    热迁移

    HA

    整机快照

    克隆

    CPU QoS

    内存复用

创建前配置

扩容计算节点(可选)

建议参考《华为云Stack 8.2.1 扩容指南》的“AZ内新增KVM计算节点”章节,使用工具进行扩容。若工具不可用,可参考本章节进行扩容。

如果需要扩容计算节点,请参考《华为云Stack 8.2.1 软件安装指南》“附录 > 安装过程中手工操作(非标准化部署方案)> 手动PXE方式扩容KVM计算节点”。

扩容后请参考《华为云Stack 8.2.1 软件安装指南》“附录 > 安装过程中手工操作(非标准化部署方案)> 手动调整网络配置”配置网络。

为主机安装驱动

要创建并使用AI加速型云服务器,您需要确保插入NPU芯片的计算节点,已经安装了对应的驱动。安装过程请参考本章节。

  1. 参考《华为云Stack 8.2.1 版本配套表》获取配套的软件包。

    • ARM场景:
      • 华为昇腾310(A300-3000),获取驱动和固件的rpm包。

        A300-3000-npu-driver_xxx_linux-aarch64.rpm

        A300-3000-npu-firmware_xxx.rpm

      • 华为昇腾310p(Atlas 300V Pro),获取驱动和固件的rpm包。

        Ascend-hdk-310p-npu-driver-xxx.aarch64.rpm

        Ascend-hdk-310p-npu-firmware-xxx.noarch.rpm

      • 华为昇腾310p(Atlas 300I Pro),获取驱动和固件的rpm包。

        Ascend-hdk-310p-npu-driver-xxx.aarch64.rpm

        Ascend-hdk-310p-npu-firmware-xxx.noarch.rpm

    • X86场景:
      • 华为昇腾310(A300-3010),获取驱动和固件的rpm包。

        A300-3010-npu-driver_xxx_linux-x86_64.rpm

        A300-3010-npu-firmware_xxx.rpm

      • 华为昇腾310pAtlas 300V Pro,获取驱动和固件的rpm包。

        Ascend-hdk-310p-npu-driver-xxx.x86-64.rpm

        Ascend-hdk-310p-npu-firmware-xxx.noarch.rpm

      • 华为昇腾310pAtlas 300I Pro,获取驱动和固件的rpm包。

        Ascend-hdk-310p-npu-driver-xxx.x86-64.rpm

        Ascend-hdk-310p-npu-firmware-xxx.noarch.rpm

  2. 登录CPS,选择“运维 >第三方包管理”,上传1中获取的rpm安装文件。
  3. 选择“配置 > 角色”。

    • ARM场景
      • 华为昇腾310(A300-3000),查看系统角色是否包含“a300-3000-npu-driver_aarch64”和“a300-3000-npu-firmware”。
      • 华为昇腾310pAtlas 300V Pro,查看系统角色是否包含“ascend310p-driver_aarch64”和“ascend310p-firmware”。
      • 华为昇腾310pAtlas 300I Pro,查看系统角色是否包含“ascend310p-driver_aarch64”和“ascend310p-firmware”。
    • X86场景
      • 华为昇腾310(A300-3010),查看系统角色是否包含“a300-3010-npu-driver”和“a300-3010-npu-firmware”。
      • 华为昇腾310pAtlas 300V Pro,查看系统角色是否包含“ascend310p-driver”和“ascend310p-firmware”。
      • 华为昇腾310pAtlas 300I Pro,查看系统角色是否包含“ascend310p-driver”和“ascend310p-firmware”。

  4. 勾选所有的NPU计算节点,将3的角色拖拽到每个计算节点。

  5. 单击按钮,执行安装。

开启运行参数

创建AI加速型云服务器前,需要将NPU芯片插入计算节点物理主机,并确认NPU芯片所在的所有物理主机的如下参数已完成配置,否则会导致云服务器下发失败。

  • X86场景下,“intel_iommu”配置为“on”。
  • ARM场景下,Support Smmu”配置为“Enabled”。

X86场景下,“intel_iommu”配置为“on”

前提条件

  • 已完成FusionSphere OpenStack计算节点主机的安装。
  • 已获取登录主机的IP地址、root用户密码。
  • 已将NPU设备插入计算节点物理主机。

    必须在NPU设备插入计算节点物理主机后,再配置“intel_iommu”参数为“on”。

操作步骤

  1. 登录ManageOne运维面,跳转至FusionSphere OpenStack安装部署界面(CPS),在概要界面查看计划用于创建AI加速型云服务器的主机的“管理IP地址”。
  2. 使用fsp帐号,通过主机的管理IP地址,登录主机,具体操作请参考《华为云Stack 8.2.1 运维指南》的“常见问题 > 资源池 > 登录后台节点”章节。

    默认帐号:fsp

  3. 执行以下命令切换到root用户。

    su - root

    • 使用ssh方式登录时的默认密码:请参见《华为云Stack 8.2.1 帐户一览表》中的“A类(后台)”页签中,产品名称为“FusionSphere OpenStack”,帐户名称为“root”对应的默认密码。
    • 帐号为“已回收”状态时,有如下两种方式登录。
      • 若使用ssh方式登录节点,需要申请“帐号密码”权限,具体请参见 《华为云Stack 8.2.1 运维指南》的“帐号申请 > 创建密码获取申请”章节,获取帐号密码。
      • 在ManageOne运维面的“命令行终端”页面,已获取“一键登录”权限后可免密登录。

  1. 执行以下命令,防止系统超时退出。

    TMOUT=0

  2. 执行以下命令,查询当前单板NPU芯片是否存在。

    lspci -Dnn | grep -E 'd100|d500'

    • 是,执行6
    • 否,NPU芯片未插入主机。请将芯片插入主机后,重复1~5

  1. 执行以下命令,导入环境变量。

    source set_env

  1. 输入“1”,按“Enter”,并按提示输入“OS_USERNAME”的密码。

    默认密码:请参见《华为云Stack 8.2.1 帐户一览表》的“B类(FusionSphere OpenStack)”页签中,“dc_admin”帐户对应的默认密码。

  1. 执行以下命令,查看“intel_iommu”是否打开。

    cat /proc/cmdline |grep iommu

    回显类似如下信息:

    BOOT_IMAGE=/vmlinuz-3.10.0-327.55.58.94_14.x86_64 root=/dev/cpsVG/rootfs
    oops=panic net.ifnames=0 biosdevname=0 noexec=on 8250.nr_uarts=8 efi=old_map
    nmi_watchdog=1 intel_iommu=off selinux=0 pci=realloc console=tty0
    console=ttyS0,115200 nohz=off highres=on hpet=enable reserve_kbox_mem=16M
    crashkernel=334M@48M panic=3 crash_kexec_post_notifiers audit=0
    coredump_filter=0x33f elevator=cfq read_ahead_kb=512 hugepages=0 hugepagesz=2M
    default_hugepagesz=2M
    查看回显中“intel_iommu”的配置值:
    • on,任务结束。
    • off,执行9

  2. 在FusionSphere OpenStack安装部署界面,选择“配置 > 内核参数”,查看主机所在的主机组名称。例如:group2。如果主机不在任何主机组内,请单击右上角的“手动分组”,将主机划分到某个主机组内。
  3. 依次执行以下命令,打开“intel_iommu”配置项。

    cps hostcfg-item-update --item kernel.boot --parameter iommu=pt intel_iommu=1 --type kernel 主机组名称

    cps commit

    主机组名称为9中获取的名称。

  4. 执行以下命令,重启物理主机,使配置生效。

    reboot

    修改intel_iommu的配置值后,物理机需要重启生效。如果物理机上有正在运行的云服务器或其他应用,请选择合适的时间点或将云服务器迁移后再重启,避免对您的业务造成影响。

  1. 重复执行111,完成所有待配置主机的参数确认与修改。

ARM场景下,Support Smmu”配置为“Enabled”

  1. 完成BIOS基础配置,以TaiShan 200 服务器为例,详细操作请参见《TaiShan 200 服务器 用户指南 (型号 2280) 》中的“安装与配置 > 初始配置 > 配置BIOS”章节。
  2. 在主界面中依次进入“Advanced > MISC Config”,将“Support Smmu”状态设置为“Enabled”。

    如果有“Smmu Work Around”选项,也需将状态设置为“Enabled”。

创建AI加速型主机组

操作场景

主机组是虚拟化类型相同的一类主机的组合。本章节描述创建AI加速型主机组的过程。

为了方便管理,不影响后续的使用及维护,无论物理主机是否已加入其他主机组,均建议您创建新的主机组,并将物理主机加入主机组。

操作步骤

  1. 使用浏览器,登录ManageOne运维面,并跳转至Service OM。
  2. 选择“服务列表 > 资源 > 计算资源”。
  3. 单击“创建主机组”,填写相关信息,单击“下一步”。
  1. 在“主机管理”界面勾选已插入NPU芯片的物理主机,单击“>>”,单击“下一步”。

    一台主机只能加入一个主机组。

  2. 在“资源类型”界面选择“AI加速型”。

    • ARM场景下:
      • 如果不叠加“通用计算增强型(ARM-DPDK)”或“通用计算增强型(ARM-硬件加速)”,则表示使用的是内核态OVS网络,即默认的网络类型;如果勾选的资源类型包括“通用计算增强型(ARM-DPDK)”或“通用计算增强型(ARM-硬件加速)”,则表示使用的是DPDK型网络或硬件加速型网络(用户态OVS)。
      • 如果勾选了“通用计算增强型(ARM-DPDK)”或“通用计算增强型(ARM-硬件加速)”,请确保已在CPS上完成网络配置与内核参数配置,详情请参见调整网络配置~内核参数配置

  1. 在“自定义标签”界面单击“下一步”。

    如果需要启用NPU资源告警功能,则在自定义标签页面设置“标签名称”和“标签值”分别为“hw:support_npu_alarm”和“yes ”。

  2. 在“确认信息”界面单击“确认”按钮。

创建AI加速型规格

本章节描述创建AI加速型云服务器的规格。

规格配比

AI加速型云服务器推荐的规格配比如下,实际配置时,请根据使用需求配置。

规格名称

vCPUs

内存(GB)

AI加速卡数量

虚拟化类型

Ai1.large.4

2

8

1

KVM

Ai1.xlarge.4

4

16

2

KVM

Ai1.2xlarge.4

8

32

4

KVM

Ai1.4xlarge.4

16

64

8

KVM

操作步骤

  1. 使用浏览器,登录ManageOne运维面,并跳转至Service OM。
  2. 选择“服务列表 > 资源 > 计算资源”。
  3. 单击“创建规格”,填写各项参数,单击“下一步”。
  4. 在“特性配置”界面,勾选“AI加速型”。
  5. 配置相关参数,单击“下一步”,进入“关联主机组”界面。

    • alias:选择芯片型号。
    • number:选择芯片数量。

    使用此规格创建的弹性云服务器上挂载的NPU芯片的数量等于此处为“number”选择的数量,因此此处的配置值需要小于等于物理主机上可用的NPU芯片数量,否则会导致创建云服务器失败。

  1. 关联主机组选择“是”,并勾选创建AI加速型主机组中创建的AI加速型主机组,单击“下一步”,进入“自定义标签”界面。
  2. 单击“下一步”,进入“确认信息”界面,单击“确认”,完成规格创建。

    • 创建的规格默认在所有VDC可见,如果您要设置规格的可见范围,参考6~12完成。
    • 规格创建完成后,需要等待1~6分钟,才会显示在ECS的申请界面上。

  3. 使用浏览器,以运营管理员登录ManageOne。

    非B2B场景登录地址:https://ManageOne运营面的访问地址。例如,https://console.demo.com。

    B2B场景登录地址:https://ManageOne运营管理面的访问地址。例如,https://admin.demo.com。

    统一用户登录地址:https://ManageOne主门户的访问地址。例如,https://console.demo.com/moserviceaccesswebsite/unifyportal#/home。在首页选择“云服务管理中心”进入运营面。

    登录方式分为“密码认证”和“USB Key认证”。
    • 密码认证:输入帐号和密码。
      • 运营管理员默认帐号为bss_admin。
      • 默认密码:请参见《华为云Stack 8.2.1 帐户一览表》的“A类(Portal)”页签中,“ManageOne运营面/运营管理面/主门户”帐户对应的默认密码。

        首次登录需要修改密码,如果不是首次登录,请获取新密码。

    • USB Key认证:插入已预置用户证书的USB Key,选择设备和用户证书,并输入PIN码。

  4. 在上方导航栏选择“服务”。
  5. 在左侧导航树选择“服务规格”。
  6. 在“规格列表”页签下,对应规格操作列中单击“设置可见范围”。
  7. 勾选所有要使用该规格的VDC后,单击“确定”。

制作镜像

参考创建公共镜像制作镜像。

创建AI加速型弹性云服务器

在ECS的申请界面上,选择创建AI加速型规格中创建的云服务器类型和规格。