为防止域名被攻击或盗刷产生突发高带宽,导致产生高额账单,可通过配置带宽封顶,控制用户访问该域名的带宽上限值,减少因突发流量导致的损失。
功能介绍
带宽封顶,即通过设置带宽上限,来控制带宽用量。当指定加速域名在统计周期(1分钟)内产生的平均带宽超出预设上限,CDN将停止为该域名提供加速服务,且该域名会被解析到无效地址offline.***.com
,无法被继续访问。
- 域名带宽小于上限:域名正常使用CDN加速服务。
- 突发流量,域名带宽达到或超过带宽上限:域名将会自动下线,并通过CNAME域名被解析到无效地址offline.***.com,无法被继续访问。
- 突发流量恢复正常,域名带宽重新小于带宽上限:CDN默认不会自动恢复加速服务,您需要在CDN控制台手动启用该域名来恢复CDN加速服务。
注意事项
- 泛域名暂不支持带宽封顶功能,设置后不会生效。
- 开启带宽封顶功能后,当您的域名在统计周期内超出您设置的带宽上限时,CDN将会下线该域名。为了不影响您的域名业务,建议您合理评估,谨慎设置您的带宽峰值。
- 由于域名带宽的监控数据存在一定延迟(大约10分钟),实际带宽达到阈值大约10分钟后,域名才会被下线,域名下线前产生的流量、带宽、请求数等资源消耗将会正常计费。
- 为RAM用户开启带宽封顶功能需添加管理CDN的权限。
- 带宽封顶功能并非带宽限速功能。带宽封顶是达到峰值后域名会自动下线;带宽限速是达到带宽上限之后CDN会做限速。
- 通过CDN控制台配置带宽封顶功能,最多只能给20个域名配置带宽封顶规则(一个域名只能配置一条规则,20个域名对应20条规则)。如果在配置超过20个域名的情况下,开启带宽封顶功能以后,功能配置界面上将不会显示配置结果,这种情况下如果您还需要配置带宽封顶规则,您需要前往阿里云云监控产品控制台上配置。
- 带宽封顶功能使用的是1分钟粒度的实时监控数据,与CDN产品控制台上的实时监控功能使用的是相同的数据源,1分钟粒度数据的带宽峰值通常都会高于5分钟粒度数据,因此建议带宽峰值数据为参考对象,来设定适当的带宽阈值,避免因为瞬间的带宽突增而导致域名下线。
开启或关闭带宽封顶
- 登录CDN控制台。
- 在左侧导航栏,单击域名管理。
- 在域名管理页面,找到目标域名,单击操作列的管理。
- 在指定域名的左侧导航栏,单击流量限制。
- 可选:完成角色授权(首次开启带宽封顶时完成)。
- 在角色授权后,单击点击授权。
- 在云资源访问授权页面,单击同意授权。
说明
如果无法通过CDN控制台的授权按钮来一键开启授权,您还可以在RAM访问控制台开启云监控的CDN服务调用权限。
- 在带宽封顶区域,单击修改配置。
- 选择开启或关闭带宽封顶功能。
- 开启带宽封顶:打开带宽封顶开关,配置带宽上限值。
说明
- 相邻的两个带宽单位之间的进率是1000。例如:1 Tbps=1000 Gbps,1 Gbps=1000 Mbps。
- 关闭带宽封顶:关闭带宽封顶开关。
- 单击确定,完成配置。
查看和编辑云监控报警规则
当您开启带宽封顶后,阿里云CDN会调用阿里云云监控产品的CDN带宽监控报警功能,在云监控产品中新增一条针对CDN产品的报警规则,触发报警后会通知云监控产品中设置的默认报警联系人。
如果您需要调整报警联系人员或者查看报警历史,可以通过登录云监控控制台来操作,具体方法如下。
- 登录云监控控制台。
- 在左侧导航栏,选择报警服务 > 报警规则。
- 调整报警联系人员或者查看报警历史。
- 如果需要查询指定域名的报警规则,在报警规则列表页面搜索框中输入需要查询的域名,再单击搜索按钮即可。
恢复CDN加速服务
域名突发流量超过阈值,恢复正常后(即域名带宽重新小于带宽上限),CDN默认不会自动恢复加速服务,您需要在CDN控制台手动启用该域名来恢复CDN加速服务。操作方式如下:
在CDN控制台的域名管理页面,选中该域名,单击启用,重新启用该域名。
通过RAM访问控制服务开启云监控的CDN服务调用权限
- 登录RAM控制台。
- 在左侧导航栏,单击权限管理> 权限策略。
- 在权限策略页面,单击创建权限策略。
在脚本编辑页签,输入以下策略内容。
{ "Version": "1", "Statement": [ { "Action": [ "cdn:StopCdnDomain" ], "Resource": "*", "Effect": "Allow" } ] }
- 单击继续编辑基本信息,输入以下信息之后单击确定。
名称:AliyunCloudMonitorAccessingCDNRolePolicy
备注:用于云监控(CloudMonitor)角色的授权策略,包括CDN域名停用接口的调用权限
- 在左侧导航栏,单击身份管理> 角色。
- 在角色页面,单击创建角色。
- 将选择可信实体类型设置为阿里云账号,单击下一步。
- 在配置角色阶段,输入以下信息。
- 角色名称:AliyunCloudMonitorAccessingCDNRole
- 备注:云监控(CloudMonitor)默认使用此角色来访问CDN产品中的资源
- 将选择信任的云账号选项设置为当前云账号,单击完成。
角色创建完成之后,在角色页面列表中单击AliyunCloudMonitorAccessingCDNRole,进入角色编辑页面。
- 在信任策略页签,单击编辑信任策略,输入以下信息之后单击确定。
{ "Statement": [ { "Action": "sts:AssumeRole", "Effect": "Allow", "Principal": { "Service": [ "cloudmonitor.aliyuncs.com" ] } } ], "Version": "1" }
2.切换到权限管理页签,单击新增授权。
授权范围:整个云账号
选择权限:自定义策略,选择之前创建的AliyunCloudMonitorAccessingCDNRolePolicy,单击确定。
- 完成角色授权之后,返回CDN控制台的流量限制页面,可以看到带宽封顶功能已经完成授权。
关闭云监控的CDN服务调用权限
如果您不希望云监控获得CDN服务调用权限(该权限能够自动下线CDN域名),您可以通过访问控制RAM(Resource Access Management)控制台,取消对应角色名称的授权,关闭云监控的CDN服务调用权限。
- 登录RAM控制台。
- 在左侧导航栏,单击身份管理> 角色。
- 在角色页面列表中单击AliyunCloudMonitorAccessingCDNRole,进入角色编辑页面。
- 在权限管理页签,单击解除授权,移除所有权限。
- 返回身份管理> 角色页面,单击角色列表中AliyunCloudMonitorAccessingCDNRole对应的删除角色。
输入AliyunCloudMonitorAccessingCDNRole角色名称后,单击确定。
为什么域名下线前实际带宽会大于带宽封顶阈值?
由于域名带宽的监控数据存在一定延迟(大约10分钟),实际带宽达到阈值大约10分钟后,域名才会被下线,域名下线前产生的流量、带宽、请求数等资源消耗将会正常计费。具体举例说明如下:
- 示例1(按带宽峰值计费模式):
客户A使用“按带宽峰值计费”,只添加了域名example.com,并开启了带宽封顶功能,带宽上限设为10 Gbps。
在2021年02月01日21:00~21:01带宽突增至10 Gbps,由于监控数据有一定的延迟,域名在2021年02月01日21:11左右才被执行下线,下线前带宽峰值达到了25 Gbps。则在系统生成的2021年02月01日“按带宽峰值计费”账单中会按照25 Gbps的带宽用量来计算账单金额。
-
- 示例2(按流量计费):
客户B使用“按流量计费”,只添加了域名example.com,为该域名开启了带宽封顶功能,设置的带宽上限为10 Gbps。
在2021年02月01日21:00~21:01带宽突增至10 Gbps,消耗流量30 GB。由于监控数据有一定的延迟,域名在2021年02月01日21:11左右才会被执行下线,数据延迟过程中消耗流量400 GB,域名example.com在下线之前产生的所有流量都会被计算到2021年02月01日21:00~22:00这个时间段的“按流量计费”账单中。