在Slurm-GCP中创建计算节点时如何自动添加network tag?
Slurm-GCP自动添加network-tag解决方案
Slurm-GCP默认通过自身配置文件管理计算节点的创建参数,不会主动调用用户手动创建的外部实例模板,因此需要直接修改Slurm的GCP插件配置实现标签自动添加,两种可选方案如下:
方案1:直接在Slurm配置中添加标签参数(无需自定义实例模板)
- 登录Slurm管理节点,使用root权限打开配置文件,默认路径为
/opt/slurm/etc/slurm_gcp.conf,部分版本路径为/etc/slurm/gcloud.conf - 找到全局计算节点参数配置项
compute_node_params,如果该配置不存在就手动新增,在参数值中添加--tags http-server,https-server,原有其他参数保留即可,示例配置:
compute_node_params="--tags http-server,https-server --boot-disk-size 200GB"
- 如果集群有多个分区,且仅需要给特定分区的节点加标签,找到对应分区的参数配置项,格式为
[分区名]_params,在该配置中添加上述tags参数即可 - 配置修改完成后执行
systemctl restart slurmctld重启Slurm控制器服务让配置生效 - 验证:提交测试作业启动新节点后,执行
gcloud compute instances describe <节点名称> --zone <可用区> --format="get(tags.items)"确认标签已自动添加
方案2:让Slurm调用你已创建的自定义实例模板
如果你的实例模板包含除标签之外的其他自定义配置(如自定义镜像、磁盘配置、安全组等),可以直接在Slurm配置中指定调用该模板:
- 打开上述Slurm GCP配置文件,在
compute_node_params或对应分区的参数配置中添加--source-instance-template <你的实例模板完整名称/资源ID> - 如果实例模板和集群不在同一个可用区,需要填写实例模板的全局资源路径,格式为
projects/<项目ID>/global/instanceTemplates/<模板名> - 重启
slurmctld服务生效即可
注意事项
- 配置仅对修改完成后新创建的计算节点生效,已运行的存量节点需要手动补加标签
- 如果集群是通过Terraform部署的,不要直接在管理节点修改配置,需要在Terraform的Slurm模块变量中添加对应的tags/实例模板配置,重新apply后配置会自动同步,避免后续Terraform更新覆盖手动修改的内容
内容的提问来源于stack exchange,提问作者Hyungsik Jo
相关产品推荐
相关产品推荐

