如何通过CloudFormation创建或更新Sagemaker端点?

0

【以下的问题经过翻译处理】 A希望通过CloudFormation来管理Sagemaker资源(例如模型和端点)。作为他们模型部署流程的一部分,他们希望能够使用新的模型数据创建或更新现有的Sagemaker端点。客户希望对于给定的工作负载重复使用相同的端点名称。

问题:

如何在CF中如何表达以下逻辑:

  1. 如果在客户账户中不存在名称为“XYZ”的Sagemaker端点,则创建一个新的端点;
  2. 如果名称为“XYZ”的Sagemaker端点已经存在,则使用新的模型数据更新现有的端点。
profile picture
专家
已提问 8 个月前6 查看次数
1 回答
0

【以下的回答经过翻译处理】 CFn本身没有“UPSERT”类型的功能。您需要使用自定义资源来处理此逻辑。 一个不一定完全符合您需求但可能是一个不错的折衷方案是使用参数来提供端点(如果它存在)。然后使用条件来检查该值。如果参数为空,则创建端点,否则使用提供的值。 我知道这不能完全满足您的需求,但它可以避免使用自定义资源解决方案。

示例:与VPC类似的UPSERT示例:

参数:

Vpc:
	Type:AWS :: EC2 :: VPC :: Id

条件:

VpcNotSupplied:!等于[!Ref Vpc,'']

资源:

NewVpc:
	Type:AWS :: EC2 :: VPC
	Condition:VpcNotSupplied
	属性:
		CidrBlock:10.0.0.0/16

SecurityGroup:
	Type:AWS :: EC2 :: SecurityGroup
	属性:
		GroupDescription:示例
		GroupName:示例
		VpcId:!如果[VpcNotSupplied,!Ref NewVpc,!Ref Vpc]

在这里,“Vpc”输入参数可以提供,如果您希望使用的VPC已经存在,则留空,如果要创建新的VPC,则留空。NewVPC资源使用Condition仅在提供的Vpc参数值为空时创建。然后,安全组使用相同的条件来决定是否使用现有的VPC还是新创建的VPC。

希望这有意义。

profile picture
专家
已回答 8 个月前

您未登录。 登录 发布回答。

一个好的回答可以清楚地解答问题和提供建设性反馈,并能促进提问者的职业发展。

回答问题的准则