由于伸缩组中的实例(ECS或ECI)随时可能会被自动释放,建议您将数据保存到云数据库中。本文介绍如何为伸缩组中的实例关联云数据库,将实例的IP地址加入到云数据库的白名单,使得实例可以访问云数据库。
关联方式说明
方式 | 适用的实例类型 | 支持关联的云数据库类型 |
ECS、ECI |
| |
ECS、ECI |
| |
ECS |
|
(推荐)方式一:将实例和云数据库加入同一安全组
为云数据库设置安全组时,会自动将安全组中实例的IP地址加入到云数据库的白名单中,该安全组内的实例(ECS或ECI)均可以直接访问云数据库。
设置伸缩组中实例所属的安全组
伸缩组中实例所属安全组由伸缩配置决定。新建或修改伸缩配置时,可以设置安全组。更多信息,请参见创建伸缩配置(ECS实例)和创建伸缩配置(ECI实例)。
说明如果实例配置来源为启动模板,请修改启动模板中配置的安全组。
对于伸缩组中已有的实例,ECS实例支持修改所属安全组,您可以在实例详情页面的安全组页签下进行操作;ECI实例不支持修改所属安全组,需要重新创建ECI实例。
为云数据库设置安全组
请根据实例所属的安全组信息,为云数据库设置同一安全组。
云数据库类型 | 相关文档 |
RDS | |
PolarDB | |
Redis | |
MongoDB |
方式二:为伸缩组关联云数据库
为伸缩组关联云数据库后,会自动将伸缩组内实例的IP地址加入到云数据库的白名单中,伸缩组中的实例(ECS或ECI)可以直接访问云数据库。
操作场景 | 操作方式 | 支持的云数据库类型 | 说明 |
新建伸缩组 | 控制台 | RDS | 创建伸缩组时,可通过关联RDS数据库实例参数为伸缩组关联RDS数据库。具体操作,请参见配置伸缩组。 |
API |
| 调用CreateScalingGroup接口创建伸缩组时,可通过 | |
已有伸缩组 | 控制台 | RDS | 修改伸缩组时,可通过关联RDS数据库实例参数修改伸缩组关联的RDS数据库。具体操作,请参见配置伸缩组。 如果伸缩组中存在实例,请按需选中挂载或卸载RDS实例时,伸缩组现有的实例添加或移出所选RDS实例的白名单。 |
API |
| 不支持通过ModifyScalingGroup接口修改伸缩组关联的云数据库,请调用ModifyScalingGroup接口为伸缩组添加关联的云数据库,或调用DetachDBInstances接口移出关联的云数据库。 相关注意事项如下:
更多信息,请参见AttachDBInstances和DetachDBInstances。 |
方式三:基于生命周期挂钩和OOS模板,将新扩容的ECS实例加入云数据库的白名单
利用生命周期挂钩挂起伸缩组内的ECS实例,然后自动执行预定义的OSS模板,可以将伸缩组中新扩容的ECS实例加入到云数据库的白名单中,使得ECS实例可以直接访问云数据库。具体操作,请参见以下文档: