AutoScaling 弹性伸缩附加与分离RDS实例

阿里云弹性伸缩服务(AutoScaling)推出新功能:AttachDBInstances和DetachDBInstances。新功能使得您可以自由的对伸缩组附加和移除Rds实例。

本文将为您介绍如何将 Rds 实例附加到和分离出伸缩组。

RDS
RDS是阿里云提供的一种稳定可靠的在线数据库服务,支持MySQL、SQL Server、PostgreSQL 和 PPAS引擎,并且提供了容灾、备份、恢复、监控、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。RDS 与 弹性伸缩相结合时,通过将伸缩组内的实例自动加入到 RDS 实例的白名单,实现组内实例能够安全访问 RDS实例。

关于 RDS 实例更详细的介绍您可以参考 什么是RDS,访问控制。

将 RDS 实例附加到伸缩组
将 RDS 实例附加到伸缩组时,根据您指定的 forceAttch 参数值,附加过程有以下两种行为:

forceAttach 为true,将 RDS 实例附加到伸缩组时,会把伸缩组中当前拥有的所有实例私网IP都加入到 RDS 实例的IP白名单中。
forceAttach 为false,将 RDS 实例附加到伸缩组时,不会尝试将伸缩组中已有实例私网IP加入到 RDS 实例的IP白名单中。
对于上述 RDS 附加过程,如果您将一个已经存在伸缩组中的 RDS 实例再次附加到伸缩组,此时,组内 RDS 实例数量不会改变,仅会尝试把当前伸缩组内的实例私网IP全部加入其IP白名单中。

您需要注意,将 RDS 实例附加到伸缩组,RDS 实例需要满足一下限制:

RDS 实例必须是用户拥有的未删除实例。
RDS 实例必须为 UNLOCK。
RDS 实例运行状态必须为 RUNNING。
RDS default分组的IP白名单总数在完成添加后不能超过1000个。
将 RDS 实例分离出伸缩组
将 RDS 实例从伸缩组中分离时,根据您指定的forceDetach参数,将有以下两种行为:

forceDetach 为true,将 RDS 实例从伸缩组移除的同时,将把 RDS 白名单中与伸缩组关联的实例IP移除。
forceDetach 为false,将 RDS 实例从伸缩组移除的同时,不会把 RDS 白名单中与伸缩组关联的实例IP移除。
您可以根据您的实际需要确定 forceDetach 的设置,需要注意的是,您无法对同一个 RDS 实例重复执行移除操作。

最佳实践
SDK进行Attach/Detach RDS
AutoScaling 提供了 AttachDBInstances,DetachDBInstances 两个openapi,您可以通过使用 SDK 来进行 RDS 实例附加/移除伸缩组的操作。

此处,以 AutoScaling java SDK 为例,向您介绍了如何使用 openapi 完成 RDS 实例附加与移除伸缩组。

在使用sdk之前,首先需要下载相应的依赖,您可以在阿里云 SDK 中查找 java SDK ,下载所需依赖。如果您使用maven管理您的项目,您只需要在项目中添加如下依赖信息:

      <dependency>
        <groupId>com.aliyun</groupId>
        <artifactId>aliyun-java-sdk-core</artifactId>
        <version>4.0.2</version>
    </dependency>
    <dependency>
        <groupId>com.aliyun</groupId>
        <artifactId>aliyun-java-sdk-ess</artifactId>
        <version>2.2.1</version>
    </dependency>     

AttachDBInstances:

IClientProfile profile = DefaultProfile.getProfile("cn-hangzhou", "yourAk", "yourSecret")
IAcsClient client = new DefaultAcsClient(profile);
AttachDBInstancesRequest request = new AttachDBInstancesRequest();
request.setScalingGroupId(scalingGroupId); // 伸缩组id
request.setDBInstances(Arrays.asList(dBInstanceId));//附加的Rds实例列表
request.setForceAttach(ForceAttach);
AttachDBInstancesResponse response = client.getAcsResponse(request);

DetachDBInstances:

IClientProfile profile = DefaultProfile.getProfile("cn-hangzhou", "yourAk", "yourSecret")
IAcsClient client = new DefaultAcsClient(profile);
DetachDBInstancesRequest request = new DetachDBInstancesRequest();
request.setScalingGroupId(scalingGroupId); // 伸缩组id
request.setDBInstances(Arrays.asList(dBInstanceId));//移除的Rds实例列表
request.setForceDetach(ForceDetach);

DetachDBInstancesResponse response = client.getAcsResponse(request);
通过 openapi 的方式进行 RDS 的附加和移除操作,目前支持一次最多操作5个RDS实例。

写在最后
AttachDBInstances 和 DetachDBInstances 操作,使得 RDS 实例与伸缩组不再强绑定在一起,您可以根据您的需要调整伸缩组内的 RDS 实例,大大增加了您使用上的灵活性与实用性。

http://click.aliyun.com/m/1000007317/http://click.aliyun.com/m/1000007317/
本文为云栖社区原创内容,未经允许不得转载

原文地址:http://blog.51cto.com/13876536/2147234

时间: 2024-11-13 10:34:29

AutoScaling 弹性伸缩附加与分离RDS实例的相关文章

【阿里云产品公测】弹性伸缩服务ESS之试用初体验

T>>c2$ x 弹性伸缩服务ESS之试用初体验 作者:云郎 2014/10/15 阿里云弹性伸缩服务(Elastic Scaling Service)是根据用户的业务需求和策略,自动调整其弹性计算服务器(ECS)的管理服务.其能够在业务增长时自动增加ECS实例,并在业务下降时自动减少ECS实例. 收到ESS开始公测的邀请,马上怕不急待的申请了公测资格,开始体验传说中的ESS云服务了.因为笔者一直在全面的测试阿里云产品,在做压测过程中经常需要动态的调整ECS云主机的数量以确保能够给RDS提供合

阿里云ACP笔记-弹性伸缩

弹性伸缩(Auto Scaling)功能: 1.根据业务需求横向扩展ECS实例的容量,即自动增加和减少ECS实例 1)定时模式 2)动态模式 2.支持SLB负载均衡配置 3.支持RDS访问白名单 Scaling Group伸缩组,是具有相同应用场景的ECS实例的集合. Scaling COnfiguration伸缩配置 Scaling Rule伸缩规则 Scaling Activity伸缩活动 Scaling Trigger Task伸缩触发任务 Cooldown Period冷却时间 伸缩组包

Serverless 与容器决战在即?有了弹性伸缩就不一样了

作者 | 阿里云容器技术专家 莫源?本文整理自莫源于 8 月 31 日?K8s & cloudnative meetup 深圳场的演讲内容.关注"阿里巴巴云原生"公众号,回复关键词 "资料" ,即可获得 2019 全年 meetup 活动 PPT 合集及 K8s 最全知识图谱. 导读:Serverless 和 Autoscaling 是近些年来广大开发者非常关心的内容.有人说 Serverless 是容器 2.0,终有一天容器会和 Serverless 进行

京东618:Docker扛大旗,弹性伸缩成重点

转载:http://www.infoq.com/cn/news/2015/06/jd-618-docker?utm_source=infoq&utm_medium=popular_widget&utm_campaign=popular_content_list&utm_content=homepage 不知不觉中,年中的618和年终的11.11已经成为中国电商的两大促销日,当然,这两天也是一年中系统访问压力最大的两天.对于京东而言,618更是这一年中最大的一次考试,考点是系统的扩展

基于Raft构建弹性伸缩的存储系统的一些实践

基于Raft构建弹性伸缩的存储系统的一些实践 原创 2016-07-18 黄东旭 聊聊架构 最近几年来,越来越多的文章介绍了 Raft 或者 Paxos 这样的分布式一致性算法,但主要集中在算法细节和日志同步方面的应用,但是呢,这些算法的潜力并不仅限于此,基于这样的分布式一致性算法构建一个完整的可弹性伸缩的高可用的大规模存储系统,是一个很新的课题,我结合我们这一年多以来在 TiKV 这样一个大规模分布式数据库的实践上谈谈其中的一些设计和挑战. 本次分享的主要内容是如何使用 Raft 来构建一个可

CSS3弹性伸缩布局(二)——flex布局

上一篇博客<CSS3弹性伸缩布局(一)——box布局>介绍了旧版本的box布局,而这篇博客将主要介绍最新版本的flex布局的基础知识. 新版本简介 新版本的Flexbox模型是2012年9月提出的工作草案,这个草案是由W3C 推出的最新语法.这个版本立志于指定标准,让新式的浏览器全面兼容,在未来浏览器的更新换代中实现统一. 这里我们还是继续上一篇博客中的例子,使用最新版本的flex布局来实现相同的效果. html代码: <div> <p>发生过的空间还是看价格哈健康啊水

京东618:Docker扛大旗,弹性伸缩成重点 (2015-06-23)

不知不觉中,年中的618和年终的11.11已经成为中国电商的两大促销日,当然,这两天也是一年中系统访问压力最大的两天.对于京东而言,618更是这一年中最大的一次考试,考点是系统的扩展性.稳定性.容灾能力.运维能力.紧急故障处理能力.弹性计算云是京东2015年研发部战略项目,它基于Docker简化了应用的部署和扩容,提高了系统的伸缩能力.目前京东的图片系统.单品页.频道页.风控系统.缓存.登录.团购.O2O.无线.拍拍等业务都已经运行在弹性计算云系统中. 过去的一段时间里,弹性计算云项目在京东内部

Kubernetes 弹性伸缩全场景解析 (一)- 概念延伸与组件布局

传统弹性伸缩的困境 弹性伸缩是Kubernetes中被大家关注的一大亮点,在讨论相关的组件和实现方案之前.首先想先给大家扩充下弹性伸缩的边界与定义,传统意义上来讲,弹性伸缩主要解决的问题是容量规划与实际负载的矛盾. 如上图所示,蓝色的水位线表示集群的容量随着负载的提高不断的增长,红色的曲线表示集群的实际的负载真实的变化.而弹性伸缩要解决的就是当实际负载出现激增,而容量规划没有来得及反应的场景. 常规的弹性伸缩是基于阈值的,通过设置一个资源缓冲水位来保障资源的充盈,通常15%-30%左右的资源预留

Kubernetes 弹性伸缩全场景解析(三) - HPA 实践手册

在上一篇文章中,给大家介绍和剖析了 HPA 的实现原理以及演进的思路与历程.本文我们将会为大家讲解如何使用 HPA 以及一些需要注意的细节. autoscaling/v1 实践 v1 的模板可能是大家平时见到最多的也是最简单的,v1 版本的 HPA 只支持一种指标 ——  CPU.传统意义上,弹性伸缩最少也会支持 CPU 与 Memory 两种指标,为什么在 Kubernetes 中只放开了 CPU 呢?其实最早的 HPA 是计划同时支持这两种指标的,但是实际的开发测试中发现:内存不是一个非常好