华为云用户手册

  • 环境准备 在华为云ModelArts Server预购相关超强算力的GPU裸金属服务器,并选择AIGC场景通用的镜像,完成使用Megatron-Deepspeed训练GPT2模型。本最佳实践使用以下镜像和规格: 镜像选择:Ubuntu 20.04 x86 64bit SDI3 for Ant8 BareMetal with RoCE and NVIDIA-525 CUDA-12.0。 裸金属规格选择: GP Ant8,包含8张GPU卡以及8张RoCE网卡。 关于Ant8裸金属服务器的购买,可以在华为云官网提工单至ModelArts云服务, 完成资源的申请。
  • 背景信息 Megatron-Deepspeed Megatron-Deepspeed是一个由NVIDIA开发的基于PyTorch的深度学习模型训练框架。它结合了两个强大的工具:Megatron-LM和DeepSpeed,可在具有分布式计算能力的系统上进行训练,并且充分利用了多个GPU和深度学习加速器的并行处理能力。可以高效地训练大规模的语言模型。 Megatron-LM是一个用于大规模语言建模的模型。它基于GPT(Generative Pre-trained Transformer)架构,这是一种基于自注意力机制的神经网络模型,广泛用于 自然语言处理 任务,如文本生成、 机器翻译 和对话系统等。 DeepSpeed是NVIDIA开源的加速深度学习训练的库。它针对大规模的模型和分布式训练进行了优化,可以显著提高训练速度和效率。DeepSpeed提供了各种技术和优化策略,包括分布式梯度下降、模型并行化、梯度累积和动态精度缩放等。它还支持优化大模型的内存使用和计算资源分配。 GPT2 GPT2(Generative Pre-trained Transformer 2),是OpenAI组织在2018年于GPT模型的基础上发布的新预训练模型,是一个基于Transformer且非常庞大的语言模型。它在大量数据集上进行了训练,直接运行一个预训练好的GPT-2模型:给定一个预定好的起始单词或者句子,可以让它自行地随机生成后续的文本。
  • 监控插件安装步骤 当前账户需要给 CES 授权委托,请参考创建用户并授权使用 云监控服务 。 当前还不支持在CES界面直接一键安装监控,需要登录到服务器上执行以下命令安装配置Agent。其它region的安装请参考单台主机下安装Agent。 cd /usr/local && curl -k -O https://obs.cn-north-4.myhuaweicloud.com/uniagent-cn-north-4/script/agent_install.sh && bash agent_install.sh 安装成功的标志如下: 图1 安装成功提示 在CES界面查看具体的监控项,加速卡类的监控项必须在主机安装加速卡驱动后才会有相关指标。 图2 监控界面 至此,监控插件已经安装完成,相关指标的采集可以在UI界面直接查看或者根据指标值配置相关告警。
  • 裸金属服务器监控介绍 监控概述请参考BMS官方文档。除文档所列支持的镜像之外,目前还支持Ubuntu20.04。 监控指标采样周期1分钟。当前监控指标项已经包含CPU、内存、磁盘、网络。在主机上安装加速卡驱动后,可以自动采集的如下指标: 表1 指标列表 指标英文名 指标中文名 说明 单位 维度 gpu_status gpu健康状态。 BMS上GPU健康状态,是一个综合指标,0代表健康,1代表亚健康,2代表故障。 - instance_id,gpu gpu_utilization gpu使用率。 该GPU的算力使用率。 % instance_id,gpu memory_utilization 显存使用率。 该GPU的显存使用率。 % instance_id,gpu gpu_performance gpu性能状态。 该GPU的性能状态。 - instance_id,gpu encoder_utilization 编码使用率。 该GPU的编码能力使用率。 % instance_id,gpu decoder_utilization 解码使用率。 该GPU的解码能力使用率。 % instance_id,gpu volatile_correctable 短期可纠正ECC错误数量。 该GPU重置以来可纠正的ECC错误数量,每次重置后归0。 个 instance_id,gpu volatile_uncorrectable 短期不可纠正ECC错误数量。 该GPU重置以来不可纠正的ECC错误数量,每次重置后归0。 个 instance_id,gpu aggregate_correctable 累计可纠正ECC错误数量。 该GPU累计的可纠正ECC错误数量。 个 instance_id,gpu aggregate_uncorrectable 累计不可纠正ECC错误数量。 该GPU累计的不可纠正ECC错误数量。 个 instance_id,gpu retired_page_single_bit retired page single bit错误数量。 retired page single bit错误数量,表示当前卡隔离的单比特页数。 个 instance_id,gpu retired_page_double_bit retired page double bit错误数量。 retired page double bit错误数量,表示当前卡隔离的双比特页的数量。 个 instance_id,gpu
  • 1、安装NVIDIA驱动 打开NVIDIA官方网站。 根据Ant8的详细信息和您所需的cuda版本选择驱动 图1 驱动选择 选择后会自动出现Driver版本并下载,或者直接。 wget https://cn.download.nvidia.com/tesla/470.182.03/NVIDIA-Linux-x86_64-470.182.03.run 添加权限。 chmod +x NVIDIA-Linux-x86_64-470.182.03.run 运行安装文件。 ./NVIDIA-Linux-x86_64-470.182.03.run 至此NVIDIA-DRIVER驱动安装完成。
  • 操作步骤 卸载原有版本的NVIDIA和CUDA。 查看使用apt包管理方式安装的nvidia软件包, 执行如下命令实现查看和卸载。 dpkg -l | grep nvidia dpkg -l | grep cuda sudo apt-get autoremove --purge nvidia-* sudo apt-get autoremove --purge cuda-* 以上命令可以卸载nvidia-driver、cuda、nvidia-fabricmanager、nvidia-peer-memory四个软件。 但是如果nvidia和cuda是使用runfile(local)方式安装的,那么需要在下一步中再次卸载。 若使用nvidia run包直接安装的驱动,需要找到对应的卸载命令。 sudo /usr/bin/nvidia-uninstall sudo /usr/local/cuda-11.7/bin/cuda-uninstaller 验证是否卸载完成。 nvidia-smi nvcc -V dpkg -l | grep peer dpkg -l | grep fabricmanager dpkg -l | grep nvidia 卸载nccl相关软件。 由于nccl和cuda是配套关系, 当cuda版本从12.0更换为11.7的时候,libnccl和libnccl-dev都需要更换为和cuda11.7匹配的版本。因此必须卸载掉原版本。 sudo apt-get autoremove --purge *nccl* 删除原nccl-test的编译后文件。 由于nccl-test make编译也是基于当前cuda12.0版本的。 当cuda版本更换后,需要重新编译, 因此删除它。默认该文件在/root/nccl-tests直接删除即可。 从内核中卸载nvidia相关的所有进程。 在安装nvidia驱动时,必须把内核中加载nvidia相关的进程卸载,否则会失败。具体操作请参考GPU裸金属服务器更换NVIDIA驱动后执行nvidia-smi提示Failed to initialize NVML。 若遇到加载到内核的nvidia进程循环依赖,无法从内核中卸载nvidia,此时执行reboot命令重启服务器即可。 安装NVIDIA-515和CUDA-11.7配套软件环境。具体步骤请参考GP Ant8裸金属服务器Ubuntu 20.04安装NVIDIA 515+CUDA 11.7。
  • 1、GPU环境安装指南 安装NVIDIA驱动。 wget https://us.download.nvidia.cn/XFree86/Linux-x86_64/470.182.03/NVIDIA-Linux-x86_64-470.182.03.run chmod +x NVIDIA-Linux-x86_64-470.182.03.run ./NVIDIA-Linux-x86_64-470.182.03.run 安装CUDA。 不能选择Driver,否则会覆盖已安装的NVIDIA驱动。 wget https://developer.download.nvidia.com/compute/cuda/11.3.1/local_installers/cuda_11.3.1_465.19.01_linux.run chmod +x cuda_11.3.1_465.19.01_linux.run ./cuda_11.3.1_465.19.01_linux.run --toolkit --samples --silent 安装nvidia-fabricmanager。 Ant系列GPU支持NvLink & NvSwitch,若您使用多GPU卡的机型,需额外安装与驱动版本对应的nvidia-fabricmanager服务使GPU卡间能够互联,否则可能无法正常使用GPU实例。 fabricmanager版本一定要和nvidia驱动版本必须保持一致。 wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/nvidia-fabricmanager-470_470.182.03-1_amd64.deb sudo dpkg -i ./nvidia-fabricmanager-470_470.182.03-1_amd64.deb 验证fabricmanager安装结果。 验证驱动安装结果、启动fabricmanager服务并查看状态。 nvidia-smi -pm 1 nvidia-smi systemctl enable nvidia-fabricmanager systemctl start nvidia-fabricmanager systemctl status nvidia-fabricmanager 汇总安装脚本。 在GP Ant8型实例中, 使用bash一键执行如下脚本,实现快速安装GPU环境。 wget https://us.download.nvidia.cn/XFree86/Linux-x86_64/470.182.03/NVIDIA-Linux-x86_64-470.182.03.run chmod +x NVIDIA-Linux-x86_64-470.182.03.run ./NVIDIA-Linux-x86_64-470.182.03.run --silent --no-questions wget https://developer.download.nvidia.com/compute/cuda/11.3.1/local_installers/cuda_11.3.1_465.19.01_linux.run chmod +x cuda_11.3.1_465.19.01_linux.run ./cuda_11.3.1_465.19.01_linux.run --toolkit --samples --silent version=470.182.03 main_version=$(echo $version | awk -F '.' '{print $1}') apt-get update apt-get -y install nvidia-fabricmanager-${main_version}=${version}-*
  • 2、pytorch2.0安装和CUDA验证指南 PyTorch2.0所需环境为Python3.10, 安装配置miniconda环境。 miniconda安装并创建alpha环境。 wget https://repo.anaconda.com/miniconda/Miniconda3-py310_23.1.0-1-Linux-x86_64.sh chmod 750 Miniconda3-py310_23.1.0-1-Linux-x86_64.sh bash Miniconda3-py310_23.1.0-1-Linux-x86_64.sh -b -p /home/miniconda export PATH=/home/miniconda/bin:$PATH conda create --quiet --yes -n alpha python=3.10 安装pytorch2.0并验证cuda状态。 在alpha环境下安装torch2.0,使用清华PIP源完成。 source activate alpha pip install torch==2.0 -i https://pypi.tuna.tsinghua.edu.cn/simple python 验证torch与cuda的安装状态,输出为True即为正常。 import torch print(torch.cuda.is_available())
  • 场景描述 本文旨在指导完成GP Ant8裸金属服务器装机和nccl-test测试。装机软件预览如下: 表1 装机软件 软件类型 版本详情 预置操作系统 Ubuntu 20.04 server 64bit 驱动版本 515.10.01 nvidia-cuda 11.7 nvidia-fabricmanager 515.10.01(必须和驱动版本保持一致) mlnx-ofed-linux 5.8-2.0.3.0/5.4-3.6.8.1(可选) nvidia-peer-memory-dkms 1.2-0 nccl libnccl2=2.14.3-1+cuda11.7 libnccl-dev=2.14.3-1+cuda11.7 nccl-test v.2.13.6
  • 操作步骤 替换apt源。 sudo sed -i "s@http://.*archive.ubuntu.com@http://repo.huaweicloud.com@g" /etc/apt/sources.list sudo sed -i "s@http://.*security.ubuntu.com@http://repo.huaweicloud.com@g" /etc/apt/sources.list sudo apt update 安装nvidia驱动。 wget https://us.download.nvidia.com/tesla/515.105.01/NVIDIA-Linux-x86_64-515.105.01.run chmod +x NVIDIA-Linux-x86_64-515.105.01.run ./NVIDIA-Linux-x86_64-515.105.01.run 安装cuda。 # run包安装 wget https://developer.download.nvidia.com/compute/cuda/11.7.0/local_installers/cuda_11.7.0_515.43.04_linux.run chmod +x cuda_11.7.0_515.43.04_linux.run ./cuda_11.7.0_515.43.04_linux.run --toolkit --samples --silent 安装nccl。 nccl安装可参考NCCL Documentation。 nccl和cuda版本的配套关系和安装方法参考NCL Downloads。 本文使用cuda版本是11.7,因此安装nccl的命令为: wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/cuda-keyring_1.0-1_all.deb sudo dpkg -i cuda-keyring_1.0-1_all.deb sudo apt update sudo apt install libnccl2=2.14.3-1+cuda11.7 libnccl-dev=2.14.3-1+cuda11.7 安装完成后可以查看: 图1 查看nccl 安装nvidia-fabricmanager。 nvidia-fabricmanager必须和nvidia driver版本保持一致 version=515.105.01 main_version=$(echo $version | awk -F '.' '{print $1}') apt-get update apt-get -y install nvidia-fabricmanager-${main_version}=${version}-* 验证驱动安装结果:启动fabricmanager服务并查看状态是否为“RUNNING”。 nvidia-smi -pm 1 nvidia-smi systemctl enable nvidia-fabricmanager systemctl start nvidia-fabricmanager systemctl status nvidia-fabricmanager 安装nv-peer-memory。 git clone https://github.com/Mellanox/nv_peer_memory.git cd ./nv_peer_memory ./build_module.sh cd /tmp tar xzf /tmp/nvidia-peer-memory_1.3.orig.tar.gz cd nvidia-peer-memory-1.3 dpkg-buildpackage -us -uc dpkg -i ../nvidia-peer-memory-dkms_1.2-0_all.deb nv_peer_mem工作在linux内核态,安装完成后需要看是否加载到内核,通过执行“lsmod | grep peer”查看是否加载。 如果git clone拉不下来代码,可能需要先设置下git的配置: git config --global core.compression -1 export GIT_SSL_NO_VERIFY=1 git config --global http.sslVerify false git config --global http.postBuffer 10524288000 git config --global http.lowSpeedLimit 1000 git config --global http.lowSpeedTime 1800 如果安装完成后lsmod看不到nv-peer-memory,可能是由于ib驱动版本过低导致,此时需要升级ib驱动,升级命令: wget https://content.mellanox.com/ofed/MLNX_OFED-5.4-3.6.8.1/MLNX_OFED_LINUX-5.4-3.6.8.1-ubuntu20.04-x86_64.tgz tar -zxvf MLNX_OFED_LINUX-5.4-3.6.8.1-ubuntu20.04-x86_64.tgz cd MLNX_OFED_LINUX-5.4-3.6.8.1-ubuntu20.04-x86_64 apt-get install -y python3 gcc quilt build-essential bzip2 dh-python pkg-config dh-autoreconf python3-distutils debhelper make ./mlnxofedinstall --add-kernel-support 如果想安装其它更高版本的ib驱动,请参考Linux InfiniBand Drivers。比如要安装MLNX_OFED-5.8-2.0.3.0 (当前最新版本),则命令为: wget https://content.mellanox.com/ofed/MLNX_OFED-5.8-2.0.3.0/MLNX_OFED_LINUX-5.8-2.0.3.0-ubuntu20.04-x86_64.tgz tar -zxvf MLNX_OFED_LINUX-5.8-2.0.3.0-ubuntu20.04-x86_64.tgz cd MLNX_OFED_LINUX-5.8-2.0.3.0-ubuntu20.04-x86_64 apt-get install -y python3 gcc quilt build-essential bzip2 dh-python pkg-config dh-autoreconf python3-distutils debhelper make ./mlnxofedinstall --add-kernel-support 安装完nv_peer_mem, 如果想查看其状态可以输入如下指令: /etc/init.d/nv_peer_mem/ status 如果发现没有此文件,则可能安装的时候没有默认拷贝过来,需要拷贝即可: cp /tmp/nvidia-peer-memory-1.3/nv_peer_mem.conf /etc/infiniband/ cp /tmp/nvidia-peer-memory-1.3/debian/tmp/etc/init.d/nv_peer_mem /etc/init.d/ 设置环境变量。 MPI路径版本需要匹配,可以通过“ls /usr/mpi/gcc/”查看openmpi的具体版本。 # 加入到~/.bashrc export LD_LIBRARY_PATH=/usr/local/cuda/lib:usr/local/cuda/lib64:/usr/include/nccl.h:/usr/mpi/gcc/openmpi-4.1.2a1/lib:$LD_LIBRARY_PATH export PATH=$PATH:/usr/local/cuda/bin:/usr/mpi/gcc/openmpi-4.1.2a1/bin 安装编译nccl-test。 cd /root git clone https://github.com/NVIDIA/nccl-tests.git cd ./nccl-tests make MPI=1 MPI_HOME=/usr/mpi/gcc/openmpi-4.1.2a1 -j 8 编译时需要加上MPI=1的参数,否则无法进行多机之间的测试。 MPI路径版本需要匹配,可以通过“ls /usr/mpi/gcc/”查看openmpi的具体版本。 测试。 单机测试: /root/nccl-tests/build/all_reduce_perf -b 8 -e 1024M -f 2 -g 8 多机测试: mpirun --allow-run-as-root --hostfile hostfile -mca btl_tcp_if_include eth0 -mca btl_openib_allow_ib true -x NCCL_DEBUG=INFO -x NCCL_IB_GID_INDEX=3 -x NCCL_IB_TC=128 -x NCCL_ALGO=RING -x NCCL_IB_HCA=^mlx5_bond_0 -x LD_LIBRARY_PATH /root/nccl-tests/build/all_reduce_perf -b 8 -e 11g -f 2 -g 8 hostfile格式: #主机私有IP 单节点进程数 192.168.20.1 slots=1 192.168.20.2 slots=1 需要执行mpirun的节点到hostfile中的节点间有免密登录(如何设置SSH免密登录)。 btl_tcp_if_include后面替换为主网卡名称。 NCCL环境变量: NCCL_IB_GID_INDEX=3 :数据包走交换机的队列4通道,这是RoCE协议标准。 NCCL_IB_TC=128 :使用RoCE v2协议,默认使用RoCE v1,但是v1在交换机上没有拥塞控制,可能丢包,而且后面的交换机不会支持v1,就跑不起来了。 NCCL_ALGO=RING :nccl_test的总线bandwidth是在假定是Ring算法的情况下计算出来的。 计算公式是有假设的: 总线带宽 = 算法带宽 * 2 ( N-1 ) / N ,算法带宽 = 数据量 / 时间 但是这个计算公式的前提是用Ring算法,Tree算法的总线带宽不能这么算。 如果Tree算法算出来的总线带宽相当于是相对Ring算法的性能加速。 算法计算总耗时减少了,所以用公式算出来的总线带宽也增加了。 理论上Tree算法是比Ring算法更优的,但是Tree算法对网络的要求比Ring高,计算可能不太稳定。 Tree算法可以用更少的数据通信量完成all reduce计算,但用来测试性能不太合适。 因此,会出现两节点实际带宽100,但测试出速度110,甚至130GB/s的情况。 加这个参数以后,2节点和2节点以上情况的速度才会稳定一些。
  • 场景描述 本文旨在指导完成GP Ant8裸金属服务器装机和nccl-test测试。装机软件预览如下: 表1 装机软件 软件类型 版本详情 预置操作系统 Ubuntu 20.04 server 64bit 驱动版本 525.105.17 nvidia-cuda 12.0 nvidia-fabricmanager 515.10.17(必须和驱动版本保持一致) mlnx-ofed-linux 5.8-2.0.3.0/5.4-3.6.8.1(可选) nvidia-peer-memory-dkms 1.2-0 nccl libnccl2=2.16.2-1+cuda12.0 libnccl-dev=2.16.2-1+cuda12.0 nccl-test v.2.13.6
  • 操作步骤 替换apt源。 sudo sed -i "s@http://.*archive.ubuntu.com@http://repo.huaweicloud.com@g" /etc/apt/sources.list sudo sed -i "s@http://.*security.ubuntu.com@http://repo.huaweicloud.com@g" /etc/apt/sources.list sudo apt update 安装nvidia驱动。 注意替换驱动版本为自己期望的。 sudo apt install nvidia-driver-525 安装cuda-toolkit,可参考CUDA Toolkit Downloads。 wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/cuda-ubuntu2004.pin sudo mv cuda-ubuntu2004.pin /etc/apt/preferences.d/cuda-repository-pin-600 wget https://developer.download.nvidia.com/compute/cuda/12.0.0/local_installers/cuda-repo-ubuntu2004-12-0-local_12.0.0-525.60.13-1_amd64.deb sudo dpkg -i cuda-repo-ubuntu2004-12-0-local_12.0.0-525.60.13-1_amd64.deb sudo cp /var/cuda-repo-ubuntu2004-12-0-local/cuda-*-keyring.gpg /usr/share/keyrings/ sudo apt-get update sudo apt-get -y install cuda 安装NCCL,可参考NCCL Documentation。 wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/cuda-keyring_1.0-1_all.deb sudo dpkg -i cuda-keyring_1.0-1_all.deb sudo apt update sudo apt install libnccl2 libnccl-dev 安装nvidia-fabricmanager。 sudo apt install nvidia-fabricmanager-525 systemctl enable nvidia-fabricmanager systemctl start nvidia-fabricmanager 安装nv-peer-memory。 git clone https://github.com/Mellanox/nv_peer_memory.git cd ./nv_peer_memory ./build_module.sh cd /tmp tar xzf /tmp/nvidia-peer-memory_1.3.orig.tar.gz cd nvidia-peer-memory-1.3 dpkg-buildpackage -us -uc dpkg -i ../nvidia-peer-memory-dkms_1.2-0_all.deb 如果git clone拉不下来代码,可能需要先设置下git的配置: git config --global core.compression -1 export GIT_SSL_NO_VERIFY=1 git config --global http.sslVerify false git config --global http.postBuffer 10524288000 git config --global http.lowSpeedLimit 1000 git config --global http.lowSpeedTime 1800 如果安装完成后lsmod看不到nv-peer-memory,可能是由于ib驱动版本过低导致,此时需要升级ib驱动,升级命令: wget https://content.mellanox.com/ofed/MLNX_OFED-5.4-3.6.8.1/MLNX_OFED_LINUX-5.4-3.6.8.1-ubuntu20.04-x86_64.tgz tar -zxvf MLNX_OFED_LINUX-5.4-3.6.8.1-ubuntu20.04-x86_64.tgz cd MLNX_OFED_LINUX-5.4-3.6.8.1-ubuntu20.04-x86_64 apt-get install -y python3 gcc quilt build-essential bzip2 dh-python pkg-config dh-autoreconf python3-distutils debhelper make ./mlnxofedinstall --add-kernel-support 如果想安装其它更高版本的ib驱动,请参考Linux InfiniBand Drivers。比如要安装MLNX_OFED-5.8-2.0.3.0 (当前最新版本),则命令为: wget https://content.mellanox.com/ofed/MLNX_OFED-5.8-2.0.3.0/MLNX_OFED_LINUX-5.8-2.0.3.0-ubuntu20.04-x86_64.tgz tar -zxvf MLNX_OFED_LINUX-5.8-2.0.3.0-ubuntu20.04-x86_64.tgz cd MLNX_OFED_LINUX-5.8-2.0.3.0-ubuntu20.04-x86_64 apt-get install -y python3 gcc quilt build-essential bzip2 dh-python pkg-config dh-autoreconf python3-distutils debhelper make ./mlnxofedinstall --add-kernel-support 设置环境变量。 MPI路径版本需要匹配,可以通过“ls /usr/mpi/gcc/”查看openmpi的具体版本。 # 加入到~/.bashrc export LD_LIBRARY_PATH=/usr/local/cuda/lib:usr/local/cuda/lib64:/usr/include/nccl.h:/usr/mpi/gcc/openmpi-4.1.2a1/lib:$LD_LIBRARY_PATH export PATH=$PATH:/usr/local/cuda/bin:/usr/mpi/gcc/openmpi-4.1.2a1/bin 安装编译nccl-test。 cd /root git clone https://github.com/NVIDIA/nccl-tests.git cd ./nccl-tests make MPI=1 MPI_HOME=/usr/mpi/gcc/openmpi-4.1.2a1 -j 8 编译时需要加上MPI=1的参数,否则无法进行多机之间的测试。 MPI路径版本需要匹配,可以通过“ls /usr/mpi/gcc/”查看openmpi的具体版本。 测试。 单机测试: /root/nccl-tests/build/all_reduce_perf -b 8 -e 1024M -f 2 -g 8 多机测试: mpirun --allow-run-as-root --hostfile hostfile -mca btl_tcp_if_include eth0 -mca btl_openib_allow_ib true -x NCCL_DEBUG=INFO -x NCCL_IB_GID_INDEX=3 -x NCCL_IB_TC=128 -x NCCL_ALGO=RING -x NCCL_IB_HCA=^mlx5_bond_0 -x LD_LIBRARY_PATH /root/nccl-tests/build/all_reduce_perf -b 8 -e 11g -f 2 -g 8 hostfile格式: #主机私有IP 单节点进程数 192.168.20.1 slots=1 192.168.20.2 slots=1 需要执行mpirun的节点到hostfile中的节点间有免密登录(如何设置SSH免密登录)。 btl_tcp_if_include后面替换为主网卡名称。 NCCL环境变量: NCCL_IB_GID_INDEX=3 :数据包走交换机的队列4通道,这是RoCE协议标准。 NCCL_IB_TC=128 :使用RoCE v2协议,默认使用RoCE v1,但是v1在交换机上没有拥塞控制,可能丢包,而且后面的交换机不会支持v1,就跑不起来了。 NCCL_ALGO=RING :nccl_test的总线bandwidth是在假定是Ring算法的情况下计算出来的。 计算公式是有假设的: 总线带宽 = 算法带宽 * 2 ( N-1 ) / N ,算法带宽 = 数据量 / 时间 但是这个计算公式的前提是用Ring算法,Tree算法的总线带宽不能这么算。 如果Tree算法算出来的总线带宽相当于是相对Ring算法的性能加速。 算法计算总耗时减少了,所以用公式算出来的总线带宽也增加了。 理论上Tree算法是比Ring算法更优的,但是Tree算法对网络的要求比Ring高,计算可能不太稳定。 Tree算法可以用更少的数据通信量完成all reduce计算,但用来测试性能不太合适。 因此,会出现两节点实际带宽100,但测试出速度110,甚至130GB/s的情况。 加这个参数以后,2节点和2节点以上情况的速度才会稳定一些。
  • 操作步骤 NVIDIA驱动安装。 wget https://us.download.nvidia.com/tesla/515.105.01/NVIDIA-Linux-x86_64-515.105.01.run chmod +x NVIDIA-Linux-x86_64-515.105.01.run ./NVIDIA-Linux-x86_64-515.105.01.run CUDA安装(可选,若在宿主机上不开发,可以忽略此步骤)。 wget https://developer.download.nvidia.com/compute/cuda/11.7.1/local_installers/cuda_11.7.1_515.65.01_linux.run chmod +x cuda_11.7.1_515.65.01_linux.run ./cuda_11.7.1_515.65.01_linux.run --toolkit --samples –silent 安装Docker。 curl https://get.docker.com | sh && sudo systemctl --now enable docker 安装NIVDIA容器插件。 distribution=$(. /etc/os-release;echo $ID$VERSION_ID) && curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg && curl -s -L https://nvidia.github.io/libnvidia-container/$distribution/libnvidia-container.list | sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' | sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list apt-get update apt-get install -y nvidia-container-toolkit nvidia-ctk runtime configure --runtime=docker systemctl restart docker 验证Docker模式环境是否安装成功。 基于PyTorch2.0镜像验证(本案例中镜像较大,拉取时间可能较长)。 docker run -ti --runtime=nvidia --gpus all pytorch/pytorch:2.0.0-cuda11.7-cudnn8-devel bash 图1 成功拉取镜像
  • 操作步骤 安装NVIDIA驱动。 apt-get update sudo apt-get install nvidia-driver-470 安装CUDA。 wget https://developer.download.nvidia.com/compute/cuda/11.4.4/local_installers/cuda_11.4.4_470.82.01_linux.run chmod +x cuda_11.4.4_470.82.01_linux.run ./cuda_11.4.4_470.82.01_linux.run --toolkit --samples --silent 验证NVIDIA安装结果。 nvidia-smi -pm 1 nvidia-smi /usr/local/cuda/bin/nvcc -V 安装Pytorch2.0和验证CUDA验证。 PyTorch2.0所需环境为Python3.10, 安装配置miniconda环境。 miniconda安装并创建alpha环境。 wget https://repo.anaconda.com/miniconda/Miniconda3-py310_23.1.0-1-Linux-x86_64.sh chmod 750 Miniconda3-py310_23.1.0-1-Linux-x86_64.sh bash Miniconda3-py310_23.1.0-1-Linux-x86_64.sh -b -p /home/miniconda export PATH=/home/miniconda/bin:$PATH conda create --quiet --yes -n alpha python=3.10 安装pytorch2.0并验证cuda状态。 在alpha环境下安装torch2.0,使用清华PIP源完成。 source activate alpha conda install pytorch torchvision torchaudio pytorch-cuda=11.7 -c pytorch -c nvidia python 验证torch与cuda的安装状态,输出为True即为正常。 import torch print(torch.cuda.is_available())
  • 操作步骤 安装NVIDIA驱动。 wget https://us.download.nvidia.com/tesla/515.105.01/NVIDIA-Linux-x86_64-515.105.01.run chmod 700 NVIDIA-Linux-x86_64-515.105.01.run yum install -y elfutils-libelf-devel ./NVIDIA-Linux-x86_64-515.105.01.run --kernel-source-path=/usr/src/kernels/4.18.0-147.5.1.6.h998.eulerosv2r9.x86_64 NVIDIA的驱动程序是一个二进制文件,需使用系统中的libelf库(在elfutils-libelf-devel开发包)中。它提供了一组C函数,用于读取、修改和创建ELF文件,而NVIDIA驱动程序需要使用这些函数来解析当前正在运行的内核和其他相关信息。 安装过程中的提示均选OK或YES,安装好后执行reboot重启机器,再次登录后执行命令查看GPU卡信息。 nvidia-smi -pm 1 #该命令执行时间较长,请耐心等待,作用为启用持久模式,可以优化Linux实例上GPU设备的性能 nvidia-smi 安装CUDA。 wget https://developer.download.nvidia.com/compute/cuda/11.7.1/local_installers/cuda_11.7.1_515.65.01_linux.run chmod 700 cuda_11.7.1_515.65.01_linux.run ./cuda_11.7.1_515.65.01_linux.run --toolkit --samples --silent 安装好后执行以下命令检查安装结果: /usr/local/cuda/bin/nvcc -V PyTorch2.0安装和CUDA验证指南。 PyTorch2.0所需环境为Python3.10, 安装配置miniconda环境。 miniconda安装并创建alpha环境 wget https://repo.anaconda.com/miniconda/Miniconda3-py310_23.1.0-1-Linux-x86_64.sh chmod 750 Miniconda3-py310_23.1.0-1-Linux-x86_64.sh bash Miniconda3-py310_23.1.0-1-Linux-x86_64.sh -b -p /home/miniconda export PATH=/home/miniconda/bin:$PATH conda create --quiet --yes -n alpha python=3.10 安装pytorch2.0并验证cuda状态 在alpha环境下安装torch2.0,使用清华PIP源完成。 source activate alpha pip install torch==2.0 -i https://pypi.tuna.tsinghua.edu.cn/simple python 验证torch与cuda的安装状态,输出为True即为正常。 import torch print(torch.cuda.is_available()) 默认场景华为云Vnt1裸金属服务器在euler2.9使用的yum源是“http://repo.huaweicloud.com”,该源可用。若执行“yum update”时报错, 显示有软件包冲突等问题, 可通过“yum remove xxx软件包”解决该问题。
  • 操作步骤 确认裸金属服务器规格支持IPV6。需要确保要购买的华为云裸金属服务器规格支持IPV6,只有当该裸金属服务器规格支持IPV6时,才有必要进行后续IPV6依赖项的操作。 确认镜像支持IPV6。如果未支持,需要更新该镜像属性,以支持IPV6。 查询方式请参考查询镜像列表。 调用API传入镜像ID,若响应体中有“__support_ipv6”: "true"内容,则代表支持,否则代表不支持。 图1 查询镜像是否支持IPV6 更新镜像属性,使得镜像支持IPV6。 更新步骤请参考更新镜像信息,关键代码如下: { "op": "add", "path": "/__support_ipv6", "value": "true" } 子网支持IPV6。 单击子网,进入基本信息,在子网IPV6网段处,单击开启IPV6即可。 图2 子网开启IPV6 安全组支持放开IPV6。 安全组默认不支持IPV6放通,因此需要添加规则,使得IPV6出方向和入方向规则都放通IPV6。 图3 安全组支持放开IPV6 IPV6功能支持验证。 当创建成功后,进入到裸金属机器,通过ping6 IP地址,即该裸金属服务器已支持IPV6。 图4 IPV6功能支持验证
  • Step2:配置SNAT规则 SNAT功能通过绑定弹性公网IP,实现私有IP向公有IP的转换,可实现VPC内跨可用区的多个云主机共享弹性公网IP、安全高效地访问互联网。 公网NAT网关页面,单击创建的NAT网关名称,进入NAT网关详情页。 在SNAT规则页签下,单击“添加SNAT规则”。 在弹出的“添加SNAT规则页面”,配置SNAT规则: 使用场景:选择“虚拟私有云”。 子网:选择“使用已有”,选择子网。 弹性公网IP:勾选创建的弹性公网IP。 图2 配置SNAT参数 单击“确定”。
  • 配置流程 图1 Server资源配置流程图 表1 Server资源配置流程 配置顺序 配置分类 配置任务 使用场景说明 是否必选操作 1 网络 单EIP实现多节点的SSH登录和外网访问 指导一个租户VPC配置一个EIP,通过NAT网关配置进行EIP资源共享,实现该VPC下的所有Server资源均可以通过该EIP进行公网访问和SSH登录。 必选。(二选一) 单EIP绑定裸金属服务器 指导单EIP如何绑定在一台裸金属服务器上实现公网访问和SSH登录。 裸金属服务器支持IPV6解决方案 指导配置裸金属服务器实现支持IPV6。 可选。 2 存储 裸金属服务器存储指南 指导如何选择和使用存储服务。 必选。 3 环境配置 环境配置 指导如何在Snt9b裸金属服务器上,进行磁盘合并挂载、安装docker等环境配置。 必选。 4 监控 华为云CES服务官方监控方案 指导如何使用华为云BMS+CES联合提供的裸金属服务器的指标监控方案。 可选。(二选一) 父主题: Server资源配置
  • NPU Snt9裸金属服务器支持的镜像详情 镜像:EulerOS纯净版 镜像名称:ModelArts-Euler2.8_Aarch64_Snt9_C78 表1 镜像详情 软件类型 版本详情 操作系统 EulerOS 2.0 (SP8) 内核版本 4.19.36-vhulk1907.1.0.h619.eulerosv2r8.aarch64 架构类型 aarch64 mlnx-ofed-linux 21.0.2 父主题: 镜像介绍
  • GP Vnt1裸金属服务器支持的镜像详情 Vnt1规格在北京四、北京一和上海一虽然规格相同,但是产品的配置、发布时间都存在很大差异,因此镜像不能共用。 镜像1:Ubuntu18.04 纯净版(仅限于北京四) 镜像名称:Ubuntu-18.04-server-64bit-for-V100-BareMetal 表1 镜像详情 软件类型 版本详情 操作系统 Ubuntu 18.04 server 64bit 内核版本 4.15.0-45-generic 架构类型 x86 mlnx-ofed-linux 5.7-1.0.2.0 镜像2:Euler 2.3纯净版(仅限于上海一) 镜像名称:ModelArts-Euler2.3_X86_GPU-ROCE-BMS-202211301010 表2 镜像详情 软件类型 版本详情 操作系统 EulerOS 2.0(SP3) 内核版本 3.10.0-514.44.5.10.h254 架构类型 x86 mlnx-ofed-linux 4.3-1.0.1.0 镜像3:Euler 2.9纯净版(仅限于北京四和上海一) 镜像名称:Euler2.9-X86-for-V100-BareMetal 表3 镜像详情 软件类型 版本详情 操作系统 EulerOS 2.9 64bit 架构类型 x86 镜像4:Centos 7.3纯净版(仅限于北京一) 镜像名称:CentOS 7.3 64bit for BareMetal WithIBDriver 表4 镜像详情 软件类型 版本详情 操作系统 CentOS 7.3 64bit 架构类型 x86 镜像5:Ubuntu 16.04纯净版(仅限于北京一) 镜像名称:Ubuntu 16.04 server 64bit for BareMetal 表5 镜像详情 软件类型 版本详情 操作系统 Ubuntu 16.04 64bit 架构类型 x86 镜像6:CentOS 7.4 纯净版(仅限于华南广州) 镜像名称:CentOS 7.4 64bit for BareMetal 表6 镜像详情 软件类型 版本详情 操作系统 CentOS 7.4 64bit 架构类型 x86 父主题: 镜像介绍
  • GP Ant8裸金属服务器支持的镜像详情 镜像1:Ubuntu20.04 With Nvidia Driver 525 镜像名称:Ubuntu 20.04 x86 64bit SDI3 for Ant8 BareMetal with RoCE and NVIDIA-525 CUDA-12.0 表1 镜像详情 软件类型 版本详情 操作系统 Ubuntu 20.04 server 64bit 内核版本 5.4.0-144-generic 架构类型 x86 驱动版本 525.105.17 cuda 12.0 container-toolkit 1.13.3-1 fabricmanager 525.105.17 mlnx-ofed-linux 5.8-2.0.3.0-ubuntu20.04-x86_64 peer-memory-dkms 1.2-0 libnccl2 2.18.1 nccl-test v.2.13.6 docker 20.10.23 RoCE路由配置 支持 镜像2:Ubuntu20.04 With Nvidia Driver 515 镜像名称:Ubuntu 20.04 x86 64bit SDI3 for Ant8 BareMetal with RoCE and NVIDIA-515 CUDA-11.7 表2 镜像详情 软件类型 版本详情 操作系统 Ubuntu 20.04 server 64bit 内核版本 5.4.0-144-generic 架构类型 x86 驱动版本 515.105.01 cuda 11.7 container-toolkit 1.13.3-1 fabricmanager 525.105.17 mlnx-ofed-linux 5.8-2.0.3.0-ubuntu20.04-x86_64 peer-memory-dkms 1.2-0 libnccl2 2.14.3 nccl-test v.2.13.6 docker 20.10.23 RoCE路由配置 支持 镜像3:Ubuntu20.04 纯净版 镜像名称:Ubuntu 20.04 x86 64bit SDI3 for Ant8 BareMetal 表3 镜像详情 软件类型 版本详情 操作系统 Ubuntu 20.04 server 64bit 内核版本 5.4.0-42-generic 架构类型 x86 mlnx-ofed-linux 5.3-1.0.0.1-all RoCE路由配置 不支持自动配置,需创建后手动配置。 镜像4:EulerOS纯净版 镜像名称:EulerOS2.10 x86 64bit sdi3 for Ant1 BareMetal 表4 镜像详情 软件类型 版本详情 操作系统 EulerOS 2.10 64bit 架构类型 x86 RoCE路由配置 不支持自动配置,需创建后手动配置。 父主题: 镜像介绍
  • 处理方法 下文中假设当前服务器的内核版本是为4.18.0-147.5.1.6.h934.eulerosv2r9.x86_64,介绍如何避免操作系统内核自动升级。 操作系统内核升级生效,必然需要服务器重启, 因此重启reboot前需要查看当前默认选择的内核版本: [root@Server-ddff ~]# grub2-editenv list saved_entry=EulerOS (4.18.0-147.5.1.6.h998.eulerosv2r9.x86_64) 2.0 (SP9x86_64) boot_success=0 [root@Server-ddff ~]# 如上发现reboot后内核为4.18.0-147.5.1.6.h998.eulerosv2r9.x86_64,和当前内核版本h934不一致,则需要重新设置内核版本与当前版本一致。 查看当前内核版本,并且锁定reboot后默认启动的内核版本,执行如下命令: grub2-set-default 'EulerOS (4.18.0-147.5.1.6.h934.eulerosv2r9.x86_64) 2.0 (SP9x86_64)' 执行后查看默认启动的内核版本是否和上述设置的相同: [root@Server-ddff ~]# grub2-editenv list saved_entry=EulerOS (4.18.0-147.5.1.6.h934.eulerosv2r9.x86_64) 2.0 (SP9x86_64) boot_success=0 [root@Server-ddff ~]# 发现和当前内核一致,因此即使reboot也不会更改服务器的内核版本。 若希望升级指定的操作系统内核,也可以执行grub2-set-default进行设置默认启动内核版本。但操作系统内核升级可能带来的问题。例如在操作系统内核4.18.0-147.5.1.6.h934.eulerosv2r9.x86_64 下安装的nvidia-driver-515,由于执行了yum update并reboot服务器, 发现再次执行nvidia命令时报错: [root@Server-ddff ~]# nvidia-smi NVIDIA-SMI has failed because it couldn't communicate with the NVIDIA driver. Make sure that the latest NVIDIA driver is installed and running. [root@Server-ddff ~]# 此时只能安裝nvidia-driver-515以及配套的cuda版本,安装方法可以参考GP Vnt1裸金属服务器EulerOS 2.9安装NVIDIA 515+CUDA 11.7。
  • 原因分析 分析EulerOS内核是如何在不知情的情况下升级的: 首先查看当前操作系统内核。 [root@Server-ddff ~]# uname -r 4.18.0-147.5.1.6.h934.eulerosv2r9.x86_64 一般执行如下升级命令,就会导致自动下载和安装高级内核版本。 yum update -y 执行后查看当前可用内核,发现已经新增了内核h998: [root@Server-ddff ~]# [root@Server-ddff ~]# cat /boot/grub2/grub.cfg |grep "menuentry " menuentry 'EulerOS (4.18.0-147.5.1.6.h998.eulerosv2r9.x86_64) 2.0 (SP9x86_64)' --class euleros --class gnu-linux --class gnu --class os --unrestricted $menuentry_id_option 'gnulinux-4.18.0-147.5. 1.6.h934.eulerosv2r9.x86_64-advanced-f6aefacb-f2d3-4809-b708-6ad0357037f5' { menuentry 'EulerOS (4.18.0-147.5.1.6.h934.eulerosv2r9.x86_64) 2.0 (SP9x86_64)' --class euleros --class gnu-linux --class gnu --class os --unrestricted $menuentry_id_option 'gnulinux-4.18.0-147.5. 1.6.h934.eulerosv2r9.x86_64-advanced-f6aefacb-f2d3-4809-b708-6ad0357037f5' { menuentry 'EulerOS (0-rescue) 2.0 (SP9x86_64)' --class euleros --class gnu-linux --class gnu --class os --unrestricted $menuentry_id_option 'gnulinux-0-rescue-advanced-f6aefacb-f2d3-4809-b708-6ad 0357037f5' { [root@Server-ddff ~]# 查看假如reboot(尚未reboot)后默认选择的内核版本: [root@Server-ddff ~]# grub2-editenv list saved_entry=EulerOS (4.18.0-147.5.1.6.h998.eulerosv2r9.x86_64) 2.0 (SP9x86_64) boot_success=0 [root@Server-ddff ~]# 发现默认系统内核已经变为h998,reboot后就会生效。 此时若重启那么内核版本就被升级了。
  • 操作步骤 客户端生成公私钥。 执行如下命令,在本地客户端生成公私钥(一路回车默认即可)。 ssh-keygen 上面这个命令会在用户目录.ssh文件夹下创建“id_rsa.pub”(公钥)和“id_rsa”(私钥),可通过如下命令查看: cd ~/.ssh 上传公钥到服务器。 例如用户名为root,服务器地址为192.168.222.213,则将公钥上传至服务器的命令如下: ssh-copy-id -i ~/.ssh/id_rsa.pub root@192.168.222.213 通过如下命令可以看到客户端写入到服务器的id_rsa.pub (公钥)内容: cd ~/.ssh vim authorized_keys 测试免密登录。 客户端通过ssh连接远程服务器,即可免密登录。 ssh root@192.168.222.213
  • 命令方式采集自定义指标数据 用于创建自定义指标采集POD的YAML文件示例如下。 apiVersion: v1 kind: Pod metadata: name: my-task annotations: ei.huaweicloud.com/metrics: '{"customMetrics":[{"containerName":"my-task","exec":{"command":["cat","/metrics/task.prom"]}}]}' # ModelArts从哪个容器以及使用哪个命令获取指标数据,请根据实际情况替换containerName参数和command参数 spec: containers: - name: my-task image: my-task-image:latest # 替换为实际使用的镜像 备注:业务负载和自定义指标采集可以共用一个容器,也可以由SideCar容器采集指标数据,然后将自定义指标采集容器指定到SideCar容器,这样可以不占用业务负载容器的资源。
  • 操作步骤 单击资源池名称,进入资源池详情。 单击左侧“配置管理”。 图1 配置管理 在镜像预热中单击编辑图标,填写镜像预热信息。 表1 镜像预热参数 参数名称 说明 镜像来源 可选择“预置”或“自定义”的镜像。 预置:可选择SWR服务上自有的或他人共享的镜像。 自定义:可直接填写镜像地址。 添加镜像密钥 若本租户不具有预热的镜像的权限(即非公开/非本租户私有/非他人共享的镜像),此时需要添加镜像密钥。在开启镜像密钥开关后,选择命名空间及对应密钥。创建密钥方法可参考创建密钥,密钥类型须为kubernetes.io/dockerconfigjson类型。 若需添加多个密钥,可以单击“+”新增密钥数。 添加镜像预热配置 若需添加多个镜像,可单击此按键。 图2 预置镜像预热 图3 预置镜像选择 图4 自定义镜像 预热 创建密钥所需的仓库地址、用户名、密码、可以参考对应租户的SWR登录指令。 图5 创建密钥 图6 登录指令 上图中为临时登录指令,若需长期有效登录指令,可单击图中的“如何获取长期有效指令”链接获取指导。 单击“确认”后,在预热信息框中可以看到已成功预热的镜像信息。 图7 镜像预热成功 若镜像预热失败,请检查镜像地址以及密钥是否正确。
  • 配置外网访问(NAT) NAT网关(NAT Gateway)提供公网NAT网关和 私网NAT网关 。公网NAT网关为VPC内的云主机提供SNAT和DNAT功能,可轻松构建VPC的公网出入口。私网NAT网关为VPC内的云主机提供 网络地址转换 服务,使多个云主机可以共享私网IP访问用户本地数据中心或其他VPC,并支持云主机面向私网提供服务。 通过公网NAT访问集群的配置方式,具体请参见公网NAT网关。 父主题: 网络
  • 配置外网访问(EIP) 弹性公网IP(Elastic IP,简称EIP)提供独立的公网IP资源,包括公网IP地址与公网出口带宽服务。可以与弹性云服务器、裸金属服务器、虚拟IP、弹性负载均衡、NAT网关等资源灵活地绑定及解绑。集群资源绑定EIP后,外网用户可以通过EIP访问集群资源中的k8s master。 图1 外网访问(EIP) 为集群资源申请并绑定弹性公网IP(EIP),具体操作请参见为弹性云服务器申请和绑定弹性公网IP。 通过SSH方式远程访问集群资源,包括2种方式,密码方式或密钥方式,二选一即可。 通过SSH密钥方式登录集群资源,具体操作请参见SSH密钥登录方式。 通过SSH密码方式登录集群资源,具体操作请参见SSH密码登录方式。 父主题: 网络
  • 配置流程 图1 k8s Cluster资源配置流程图 表1 k8s Cluster资源配置流程 配置顺序 配置分类 配置任务 使用场景说明 是否必选操作 1 网络 配置外网访问(EIP) 外网用户通过EIP访问集群资源中的k8s master。 必选。(二选一) 配置外网访问(NAT) 外网用户通过公网NAT访问集群资源,入DNAT;集群内的节点通过NAT访问外网,出SNAT。 创建相同帐户下的VPC对等连接 通过对等连接可以实现同一个区域下的不同VPC之间的云上内网通信。 当资源分配在租户名下时,需要参考本章节操作,实现相同帐户下的VPC对等连接。 可选。 2 存储 容器中挂载存储 指导如何选择和使用存储服务。 可选。 3 连接集群 配置kubectl工具 指导如何配置kubectl工具。 必选。 4 容器镜像 容器镜像拉取 介绍如何拉取容器镜像。 必选。(二选一) 镜像预热 介绍如何开启镜像预热功能。 5 日志监控 使用ModelArts监控自定义指标 介绍如何使用ModelArts监控自定义指标。 可选。 使用ModelArts的exporter功能在Prometheus查看监控数据 介绍如何使用ModelArts的exporter功能在Prometheus查看监控数据。 可选。
  • 节点池管理 在资源池详情页,单击“节点池管理”页签,您可以创建、更新和删除节点池。 图1 节点池管理 创建节点池 当您需要更多节点池时,可单击“创建节点池”新增节点池,相关参数请参见Lite Cluster资源开通。 查看节点列表 当您想查看某一节点池下的节点相关信息,可单击操作列的“节点列表”,可查询节点的名称、规格及可用区。 更新节点池 当您想更新节点池配置时,可单击操作列的“更新”,相关参数介绍请参见Lite Cluster资源开通。 需注意,更新节点池配置时,不同参数的作用范围不同,例如K8S标签节点、污点的修改,会同步更新节点池下的存量节点。容器引擎空间大小、节点子网等参数,仅对新增的节点(扩容或重置生效),存量节点配置保持不变。 图2 更新节点池 删除节点池 当有多个节点池时,支持删除节点池,此时在操作列会显示“删除”按钮,单击“删除”后输入“DELETE”并单击“确定”即可。 每个资源池至少需要有一个节点池,当只有一个节点池时不支持删除。 父主题: Lite Cluster资源使用
共100000条