AutoScaling 弹性伸缩配置重大升级

弹性伸缩配置支持修改之前,如果用户想要变更伸缩配置,只能通过新创建伸缩配置替换现有伸缩配置的方式实现,现在只需要修改原有配置即可。弹性伸缩配置新增了主机名称、镜像预设密码两大特性,更加全面地满足了用户的业务需求,如为伸缩组创建的 ECS 实例提前设置主机名称、为伸缩组创建的 ECS 实例提前设置登录密码。

本文主要分为以下两个方面:

  1. 弹性伸缩配置修改功能
  2. 弹性伸缩配置新特性

弹性伸缩配置修改功能

弹性伸缩配置支持修改以下参数:

  • imageId
  • instanceTypes
  • internetMaxBandwidthOut
  • ramRoleName
  • keyPairName
  • systemDiskCategory
  • scalingConfigurationName
  • tags
  • userData
  • instanceName
  • loadBalancerWeight
  • systemDiskSize
  • internetChargeType
  • passwordInherit(镜像预设密码)
  • hostName(主机名称)

您可以参考 ModifyScalingConfiguration 对上述参数进行详细地了解。目前您可以使用 OpenAPI 对伸缩配置进行修改,代码如下:

public class Test {

    public static final String AK        = "xxxxxxx";

    public static final String AKS       = "xxxxxxx";

    public static final String REGION_ID = "cn-hangzhou";

    public static void main(String[] args) throws Exception {

        IClientProfile clientProfile = DefaultProfile.getProfile(REGION_ID, AK, AKS);
        IAcsClient client = new DefaultAcsClient(clientProfile);
        modifyScalingConf(client);
    }

    public static ModifyScalingConfigurationResponse modifyScalingConf(IAcsClient client)
            throws Exception {
        ModifyScalingConfigurationRequest request = new ModifyScalingConfigurationRequest();
        request.setScalingConfigurationId("asc-xxxxxxxxxxxxx");
        request.setScalingConfigurationName("test-modify-scaling-conf");
        request.setInstanceName("test");
        request.setImageId("ubuntu_16_0402_64_20G_alibase_20180409.vhd");
        List<String> instanceTypes = Lists.newArrayList();
        instanceTypes.add("ecs.n1.tiny");
        request.setInstanceTypess(instanceTypes);
        request.setInternetChargeType("PayByBandWidth");
        request.setInternetMaxBandwidthOut(10);
        request.setSystemDiskCategory("cloud_ssd");
        request.setLoadBalancerWeight(60);
        request.setPasswordInherit(false);
        request.setHostName("ubuntu");
        request.setTags("{\"test-key\": \"test-value\",\"test-key1\": \"test-value1\"}");
        ModifyScalingConfigurationResponse response = client.getAcsResponse(request);
        return response;
    }
}

在使用上述代码修改弹性伸缩配置前,您需要先导入 aliyun-java-sdk-corealiyun-java-sdk-ess 两个 jar 包,具体的导入方法可以参考 使用 ESS SDK 快速创建多可用区伸缩组 中的 导入 ESS Java SDK 章节。 aliyun-java-sdk-ess 版本要求是 2.2.0 及以上版本。

弹性伸缩配置新特性

弹性伸缩配置新增主机名称(HostName)、镜像预设密码(PasswordInherit)两大特性。如果您希望伸缩组创建出来的 ECS 实例主机名称是您预先定义好的名称,那么您可以在创建伸缩配置时设置 HostName 参数,指定 ECS 实例主机名称,基于当前伸缩配置创建出来的 ECS 实例会使用您设置的 HostName 参数值作为主机名称。如果您希望为弹性伸缩组创建出来的 ECS 实例提前设置登录密码,那么您在创建伸缩配置的时候镜像参数需要选择带有密码的自定义镜像,并且 PasswordInherit 参数设置为 true,基于当前伸缩配置创建出来的 ECS 实例便会使用自定义镜像的预设密码作为实例登录密码。

写在最后

AutoScaling 弹性伸缩配置支持修改以后,你可以更加便捷高效地管理您的弹性伸缩配置,本次升级,弹性伸缩配置还新增了主机名称、镜像预设密码两大特性,满足您不同的业务需求。

弹性伸缩服务正在快速地发展,后续会有更多的新功能新特性推出,感谢您的一路陪伴。

上一篇:用好阿里云分析型数据库大存储实例,大幅降低大数据应用成本


下一篇:AutoScaling 生命周期挂钩功能