本文为您介绍资源稳定性最佳实践的业务背景、应用场景,以及合规包中的默认规则。
业务背景
控风险是目前云上客户非常关注的主旋律之一。很多企业选择阿里云是因为能够借助阿里云平台的高可用性来提升业务连续性。如何高效、全面地帮助云上客户发现云资源配置方面存在的风险,是提升企业业务连续性非常关键的组成部分。
这里为您列举一个因云资源配置不当导致系统故障的案例,具体如下:
某企业的一个核心系统使用基础版RDS数据库(基础版RDS数据库实例适用于测试环境),日常由于业务波动较小,未出现问题。在企业大促期间,由于业务量上涨了2~3倍,数据实时处理量翻了10倍以上。数据库实例响应慢,影响业务正常运行。最终发现是数据库实例配置问题,通过升级规格,问题得到解决。
应用场景
基于技术经验和云服务使用规范,配置审计对客户核心资源进行静态配置合理性巡检,生成不合理配置检测结果,您可以下载检测报告并对不合理配置进行修正,例如:升级实例规格,调整配置等。
静态配置即云资源配置项,例如:实例规格、实例部署可用区等。
资源稳定性最佳实践应用场景的使用流程如下图所示。
默认规则
规则名称 | 规则描述 |
如果没有开启日志备份,当本地日志丢失会出现无法恢复数据的风险。如果RDS实例开启日志备份,视为"合规"。 | |
使用独享类型的RDS实例规格,视为“合规”。 | |
RDS Mysql类型实例开启SQL审计且日志保留天数大于等于指定值,视为“合规”。默认值:180天。 | |
RDS实例为多可用区实例,视为“合规”。 | |
RDS实例未配置公网地址,视为“合规”。生产环境的RDS实例不推荐配置公网直接访问,容易被黑客攻击。 | |
RDS实例的可维护时间段在参数指定的其中一个时间段范围内,视为“合规”。如果企业业务高峰时段与维护时间段有重叠,可能会对业务造成影响。 | |
RDS实例开启删除保护,视为“合规”。付费类型为包年包月的实例不支持该功能,视为“不适用”。 | |
RDS实例已开启安全白名单,且安全白名单中不包含0.0.0.0/0,视为“合规”。 | |
Redis预付费实例到期时间距离检查时间大于设置的天数,视为“合规”。默认值:30天。开启自动续费的实例视为“合规”。后付费资源实例不适用本规则,视为“不适用”。 | |
Redis实例自动备份的时间段在参数指定的其中一个时间段范围内,视为“合规”。如果企业业务高峰时段与Redis实例备份时间段有重叠,可能会对业务造成影响。 | |
Redis实例IP白名单未设置为0.0.0.0/0,视为“合规”。 | |
Redis实例已设置禁用高风险命令,视为“合规”。 | |
Redis实例的架构类型为集群版,视为“合规”。 | |
MongoDB预付费集群到期时间距离检查时间大于设置的天数,视为“合规”。默认值:30天。开启自动续费的集群,视为“合规”。 | |
MongoDB实例开启日志备份,视为“合规”。 | |
MongoDB实例规格非共享型实例,视为“合规”。 | |
MongoDB实例IP白名单未设置为0.0.0.0/0,视为“合规”。 | |
对于预付费资源,需要提前续费,避免出现因费用问题停机。预付费实例到期时间距离检查时间大于设置的天数,视为“合规”。默认值:30天。开启自动续费的实例,视为“合规”。后付费资源实例不适用本规则,视为“不适用”。 | |
使用的PolarDB产品系列为集群版或者多主架构集群版,视为“合规”。谨慎使用单节点版数据库,故障恢复慢。 | |
PolarDB集群的可维护时间段在参数指定的其中一个时间段范围内,视为“合规”。如果企业业务高峰时段与维护时间段有重叠,可能会对业务造成影响。 | |
PolarDB实例IP白名单未设置为0.0.0.0/0,视为“合规”。 | |
NAT网关的SNAT和DNAT未同时使用同一个EIP,视为“合规”。VPC NAT网关不适用本规则,视为“不适用”。 | |
NAT网关中SNAT条目绑定的多个EIP,加入共享带宽包或者所绑定的EIP带宽峰值设置一致,视为“合规”。VPC NAT网关不适用本规则,视为“不适用”。 | |
SLB负载均衡的所有运行中的监听都开启了健康检查,视为“合规”。 | |
ALB负载均衡的所有监听和转发规则均设置了健康检查,视为“合规”。 | |
ALB负载均衡所有监听关联的默认转发规则都至少添加参数指定数量的后端服务器,视为“合规”。默认至少要添加一台服务器视为“合规”。 | |
对于预付费资源,需要提前续费,避免出现因费用问题停机。预付费实例到期时间距离检查时间大于设置的天数,视为“合规”。默认值:30天。开启自动续费的实例视为“合规”。后付费资源实例不适用本规则,视为“不适用”。 | |
开启删除保护功能,可以防止误操作导致实例被释放。如果已配置则视为"合规"。 | |
SLB实例开启释放保护,视为“合规”。 | |
SLB实例规格在指定的规格列表中,视为“合规”。建议使用满足性能要求的负载均衡实例,谨慎使用性能共享型等无法保证性能指标的实例。 | |
云企业网实例下所有跨地域连接分配的带宽大于参数指定值,视为“合规”。参数默认值:1Mbps。 | |
云企业网实例关联的VBR都设置了健康检查,视为“合规”。 | |
同地域内所有交换机不存在重复的IP地址段,视为“合规”。 | |
ECS实例状态不是已停止状态,视为“合规”。 | |
对于预付费资源,需要提前续费,避免出现因费用问题停机。预付费实例到期时间距离检查时间大于设置的天数,视为“合规”。默认值:30天。开启自动续费的实例视为“合规”。后付费资源实例不适用本规则,视为“不适用”。 | |
自动快照策略中设置的快照创建时间点在参数指定的时间点范围内,视为“合规”。创建快照会暂时降低块存储I/O性能,一般性能差异在10%以内,出现短暂瞬间变慢。建议您选择避开业务高峰的时间点。 | |
当安全组入网网段设置为0.0.0.0/0时,指定协议的端口范围不包含指定风险端口,视为“合规”。若入网网段未设置为0.0.0.0/0时,即使端口范围包含指定的风险端口,也视为“合规”。如果检测到的风险端口被优先级更高的授权策略拒绝,视为“合规”。云产品或虚商所使用的安全组视为“不适用”。 | |
为域名设置了CDN缓存和过期时间,视为合规。 | |
CDN域名设置源站域名为OSS域名时,设置了源站类型为OSS,视为“合规”。 | |
Kafka实例公网IP白名单未设置为对所有IP开放,视为“合规”。 | |
Elasticsearch实例未开启公网访问,或者白名单未设置为对所有IP开放,视为“合规”。 | |
Elasticsearch实例未开启Kibana公网访问,或者白名单未设置为对所有IP开放,视为“合规”。 | |
如果没有开启版本控制,会导致数据被覆盖或删除时无法恢复。如果开启版本控制则视为"合规"。 | |
OSS存储空间的ACL策略禁止公共读写,视为“合规”。 | |
未使用参数指定的ECS规格族实例,视为“合规”。参数默认值为已停售或者共享型的实例规格族。 | |
未使用参数指定的Elasticsearch规格实例,视为“合规”。 | |
使用参数指定系列的RDS实例,视为“合规”。参数默认值为集群版或高可用版。 | |
使用专业版的托管类型集群,视为“合规”。集群类型非托管版的集群不适用本规则,视为“不适用”。 | |
使用实例类型为企业版的Redis实例,视为“合规”。 | |
使用多可用区的MongoDB实例,视为“合规”。 | |
使用铂金版RocketMQ实例,视为“合规”。 | |
企业可以规范企业内部的OS版本,要求生产环境的主机都必须统一操作系统版本。同时对于那些官方停止维护的操作系统需要及时升级,以免出现安全漏洞。ECS实例使用的操作系统英文名称在指定的白名单范围中,或者操作系统英文名称不在指定的黑名单范围中,视为“合规”。 | |
Elasticsearch实例所使用的版本未在参数指定的不推荐版本范围内,视为“合规”。 | |
PolarDB当前数据库小版本状态为 | |
ACK集群已升级到最新版本,视为“合规”。 | |
Redis实例已升级至最新小版本,视为“合规”。 | |
ECS实例开启释放保护,视为“合规”。 | |
弹性公网IP开启删除保护,视为“合规”。服务账号创建或者预付费类型的EIP不支持开启删除保护,视为“不适用”。 | |
PolarDB集群开启删除保护,视为“合规”。 | |
ACK集群开启释放保护,视为“合规”。 | |
Redis实例开启释放保护,视为“合规”。 | |
MongoDB实例开启释放保护,视为“合规”。 | |
ADB集群的可维护时间段在参数指定的其中一个时间段范围内,视为“合规”。 | |
ECI弹性实例容器组挂载了数据卷,视为“合规”。 | |
Elasticsearch实例开启了自动备份,视为“合规”。 | |
ADB集群开启日志备份,视为“合规”。 | |
PolarDB集群二级备份保留周期大于等于指定天数,视为“合规”。参数默认值30天。未开启二级备份或备份保留周期小于指定天数视为“不合规”。 | |
Redis实例开启增量备份,视为“合规”。本规则只适用于类型为Tair的实例,非Tair类型的实例视为不适用。 | |
ECS磁盘设置了自动快照策略,视为“合规”。 | |
使用多可用区的Elasticsearch实例,视为“合规”。 | |
SLB实例为多可用区,并且SLB实例下所有监听使用的服务器组中添加了多个可用区的资源,视为“合规”。 | |
SLB实例为多可用区实例,视为“合规”。 | |
PolarDB集群开启存储热备集群,数据分布在多个可用区,视为“合规”。 | |
Redis实例为多可用区实例,视为“合规”。 | |
如果没有开启同城冗余存储,会导致当出现某个机房不可用时,OSS服务无法提供一致性服务,影响数据恢复目标。OSS存储空间开启同城冗余存储,视为“合规”。 | |
使用多可用区的MongoDB实例,视为“合规”。 | |
共享带宽实例的到期时间距离当前时间大于参数设定的时间范围,视为“合规”。默认值:30天。本规则只适用于预付费资源,后付费资源实例视为“不适用”。 | |
对于预付费资源,需要提前续费,避免出现因费用问题停机。预付费实例到期时间距离检查时间大于设置的天数,视为“合规”。默认值:30天。后付费资源实例不适用本规则,视为“不适用”。 | |
堡垒机实例的到期时间距离当前时间大于参数设定的时间范围,视为“合规”。默认值:30天。 | |
弹性公网IP的到期时间距离当前时间大于参数设定的时间范围,视为“合规”。默认值:30天。后付费资源实例不适用本规则,视为“不适用”。 | |
ADB数仓版实例的到期时间距离当前时间大于参数设定的时间范围,视为“合规”。默认值:30天。开启自动续费的实例视为“合规”。本规则只适用于预付费资源,后付费资源实例视为“不适用”。 | |
云企业网带宽包的到期时间距离当前时间大于参数设定的时间范围,视为“合规”。默认值:30天。 | |
PolarDB-X1.0实例的到期时间距离当前时间大于参数设定的天数,视为“合规”。默认值:30天。本规则只适用于预付费资源,后付费资源实例视为“不适用”。 | |
PolarDB-X2.0实例的到期时间距离当前时间大于参数设定的天数,视为“合规”。默认值:30天。本规则只适用于预付费资源,后付费资源实例视为“不适用”。 | |
Ddos实例的到期时间距离当前时间大于参数设定的天数,视为“合规”。默认值:30天。 |