如何使用 AWS SDK 更改 EC2 启动模板中的实例类型?
短信预约 -IT技能 免费直播动态提醒
问题内容
我希望更改启动模板中的某些内容,例如实例类型。这意味着在这样做的同时创建一个新版本。
我已经浏览了 Go 和 Python 的 SDK 文档。似乎都没有让我实现相同目标的参数。
我指的是这些: Go 的函数, Python的函数
请帮帮我...
正确答案
ec2 启动模板是不可变的。如果需要修改当前启动模板版本,则必须创建新版本。
以下是使用 aws 开发工具包 v2 创建新版本并将其设为默认版本的示例。
安装这两个包:
"github.com/aws/aws-sdk-go-v2/service/ec2"
ec2types "github.com/aws/aws-sdk-go-v2/service/ec2/types"
假设您创建了 aws 配置:
func createLaunchTemplateVersion(cfg aws.Config) {
ec2client := ec2.NewFromConfig(cfg)
template := ec2types.RequestLaunchTemplateData{
InstanceType: ec2types.InstanceTypeT2Medium}
createParams := ec2.CreateLaunchTemplateVersionInput{
LaunchTemplateData: &template,
LaunchTemplateName: aws.String("MyTemplate"),
SourceVersion: aws.String("1"),
}
outputCreate, err := ec2client.CreateLaunchTemplateVersion(context.Background(), &createParams)
if err != nil {
log.Fatal(err)
}
if outputCreate.Warning != nil {
log.Fatalf("%v\n", outputCreate.Warning.Errors)
}
// set the new launch type version as the default version
modifyParams := ec2.ModifyLaunchTemplateInput{
DefaultVersion: aws.String(strconv.FormatInt(*outputCreate.LaunchTemplateVersion.VersionNumber, 10)),
LaunchTemplateName: outputCreate.LaunchTemplateVersion.LaunchTemplateName,
}
outputModify, err := ec2client.ModifyLaunchTemplate(context.Background(), &modifyParams)
if err != nil {
log.Fatal(err)
}
fmt.Printf("default version %d\n", *outputModify.LaunchTemplate.DefaultVersionNumber)
}
以上就是如何使用 AWS SDK 更改 EC2 启动模板中的实例类型?的详细内容,更多请关注编程网其它相关文章!
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
如何使用 AWS SDK 更改 EC2 启动模板中的实例类型?
下载Word文档到电脑,方便收藏和打印~
下载Word文档
猜你喜欢
如何使用 AWS SDK 更改 EC2 启动模板中的实例类型?
问题内容我希望更改启动模板中的某些内容,例如实例类型。这意味着在这样做的同时创建一个新版本。我已经浏览了 Go 和 Python 的 SDK 文档。似乎都没有让我实现相同目标的参数。我指的是这些:Go 的函数,Python的函数
2024-02-06