Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimanakah cara saya menukar jenis contoh dalam templat pelancaran EC2 menggunakan AWS SDK?

Bagaimanakah cara saya menukar jenis contoh dalam templat pelancaran EC2 menggunakan AWS SDK?

WBOY
WBOYke hadapan
2024-02-05 23:33:12844semak imbas

如何使用 AWS SDK 更改 EC2 启动模板中的实例类型?

Kandungan soalan

Saya ingin menukar sesuatu dalam templat pelancaran, seperti jenis contoh. Ini bermakna mencipta versi baharu semasa berbuat demikian.

Saya telah menyemak imbas dokumentasi SDK untuk Go dan Python. Kedua-duanya nampaknya tidak mempunyai parameter yang membolehkan saya mencapai matlamat yang sama.

Saya merujuk kepada ini: Fungsi Pergi, Fungsi Python

Tolong bantu saya...


Jawapan betul


templat permulaan ec2 tidak boleh diubah. Jika anda perlu mengubah suai versi templat pelancaran semasa, anda mesti mencipta versi baharu.

Berikut ialah contoh menggunakan aws SDK v2 untuk mencipta versi baharu dan menetapkannya sebagai versi lalai.

Pasang dua pakej ini:

"github.com/aws/aws-sdk-go-v2/service/ec2"
ec2types "github.com/aws/aws-sdk-go-v2/service/ec2/types"

Andaikan anda telah mencipta konfigurasi 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)
}

Atas ialah kandungan terperinci Bagaimanakah cara saya menukar jenis contoh dalam templat pelancaran EC2 menggunakan AWS SDK?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:stackoverflow.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam