AWS开发工具包如何在不自动扩展的情况下增加ECS集群ec2实例

时间:2019-08-02 06:00:10

标签: aws-sdk amazon-ecs

我在ECS群集中使用Demon服务。恶魔服务无法使用自动缩放。

我想通过aws ecs sdk增加集群ec2实例数。

但是我找不到执行此操作的函数。

有人知道吗?

1 个答案:

答案 0 :(得分:0)

我在aws cli sdk中找到了解决方案。通过更改AsgMaxSize

    import "github.com/aws/amazon-ecs-cli/ecs-cli/modules/clients/aws/cloudformation"
    ...

    sess, err := session.NewSession(&aws.Config{
        Region: aws.String("us-west-2"),
        Credentials: credentials.NewStaticCredentials("AKID", "Secret", ""),
    })

    cloudClient := cloudformation.NewCloudformationClient(&config.CommandConfig{
        Session:sess,
    })

    stackName := "EC2ContainerService-name"
    params, err := cloudClient.GetStackParameters(stackName)
    if err != nil {
        log.Println(err)
        return nil
    }
    log.Println(params)
    newParams, err := cloudformation.NewCfnStackParamsForUpdate([]string{"AsgMaxSize"}, params)
    if err != nil {
        return nil
    }
    newParams.Add("AsgMaxSize", "3")

    out, err := cloudClient.UpdateStack(stackName, newParams)
    if err != nil {
        log.Println(err)
        return nil
    }