为自动缩放添加计算概要文件类型
完成以下步骤以在资源连接器自动添加工作程序节点时添加计算概要文件类型。
对于只需要添加多个概要文件的用户,步骤 1 已足够并且重新启动 mbatchd 已足够,其余步骤用于通过将 templateID 标记为字符串资源来将作业提交到特定作业。
(1)向模板列表添加新的模板部分。 查看所有属性的值,以确保它们映射到正确的 VPC 配置。 更新 $LSF_ENDIR/resource_connector/ibmcloudgen2/conf中的文件 ibmcloudgen2_templates.json 。 安装在 IBM Cloud 上的典型 HPC 集群将在 /opt/ibm/lsf/conf/resource_connector/ibmcloudgen2/conf中具有此文件。 请参阅以下样本内容以获取示例:
{
"templates": [
{
"templateId": "<TemplateID>",
"maxNumber": 200,
"attributes": {
"type": ["String", "X86_64"],
"ncores": ["Numeric", "1"],
"ncpus": ["Numeric", "1"],
"mem": ["Numeric", "1024"],
"icgen2host": ["Boolean", "1"],
"templateID": ["String", "<TemplateID>"]
},
"imageId": "<IMAGE_ID>",
"subnetId": "<SUBNET_ID>",
"vpcId": "<SUBNET_ID>",
"vmType": "cx2-2x4",
"securityGroupIds": ["<SECURITY_GROUP_ID>"],
"sshkey_id": "<SSH_KEY_ID>",
"region": "us-south",
"zone": "us-south-1",
"userData": "<TemplateID>"
}
]
}
请对模板标识使用有效值。 将 "-" (连字符) 用作字符串资源时,将在 templateId 中使用 "-" (连字符)。 用户可能会看到以下错误: 选择部分中出错: 不能将运算符 "-" 与类型配合使用,以获取类型。 未提交作业。
1)添加模板时,可以使用 lsf.shared 文件将新模板映射到特定作业。 lsf.shared 文件位于 $LSF_ENVDIR 中 (与 lsf.conf位置相同)。 在典型安装中,这可在 /opt/ibm/lsf/conf 文件夹中找到。 在 lsf.shared 文件的资源部分中添加 templateId 作为资源。 例如, templateID String () () (外部主机的模板标识)。
2)将以下部分添加到 user_data.sh ,以使虚拟机将 templateId 添加为 LSF_LOCAL_RESOURCES。
user_data.sh 由 ibmcloudgen2_config.json 文件中的 IBMCLOUDGEN2_PROVISION_FILE 变量指定。 ibmcloudgen2_config.json 位于 /opt/ibm/lsf/conf/resource_connector/ibmcloudgen2/conf中。 请参阅以下样本文件内容以获取示例:
if [ -n "$template_id" ]; then
sed -i "s/\(LSF_LOCAL_RESOURCES=.*\)\"/\1 [resourcemap $template_id*templateID]\"/" $LSF_CONF_FILE
echo "update LSF_LOCAL_RESOURCES in $LSF_CONF_FILE successfully, add [resourcemap
${template_id}*templateID]" >> $logfile
else
echo "templateID doesn't exist in environment variable" >> $logfile
fi
(3)运行以下命令以重新启动进程并应用更改:
$lsadmin reconfig
$badmin mbdrestart
(4)您可以使用 -R 选项提交更改。 请参阅以下示例,其中 "Template2" 是模板标识的示例值:
bsub -R “templateId=Template2” sleep 1000