前言
- 作为一个云上运维的新人,面对阿里云上复杂的生态系统,ECS、RDS、负载均衡、各种数据库等等,每一个服务下面都有无数的指标需要了解,那么如此高的学习成本,要花费多少时间才能完成准确建立起基本的云上监控报警体系,避免遗漏重要指标的报警呢?
- 业务快速迭代的过程中,购买的大量服务器如何快速被现有监控体系覆盖呢?
- 面对云监控应用分组、报警规则、各种云产品监控等等一系列高级功能,如何在学习过程中先对运维监控快速兜底呢?
如果你有以上烦恼,那么请继续阅读本文。10秒中让您的服务拥有最低成本的基础保护。在业务出问题时,让云监控通知你,而不是让你的老板或者客户通知你。
操作步骤
登录云监控,进入报警服务--一键报警功能,对需要设置报警的云产品开启一键报警按钮,完成设置!
点击服务右侧的下拉按钮,可能快速查看<一键告警>给您自动生成的规则,当然这些规则都是我们的运维工程师千锤百炼出来的精华。如图示例ECS:
请注意:一键告警提供的规则针对您名下的所有资源生效。也就是说您名下所有的ECS均已开启相应的指标监控,而仅仅只消耗4条报警规则!
当然,这些报警规则您可以进行修改、删除、禁用等操作,以满足您业务中的个性化需求。您也可以在报警服务的报警规则列表中检索到这些规则。
一键报警功能详情
当前已接入一键告警的服务,以及默认规则如下所示:
服务名称 | 指标名称 | 规则描述 |
---|---|---|
ECS | CPUUtilization(CPU使用率) | 一分钟内最大值>90%,连续五次,沉默时间1小时,邮件通知 |
vm.DiskUtilization(磁盘使用率) | 一分钟内最大值>90%,连续五次,沉默时间1小时,短信、邮件通知 | |
vm.MemoryUtilization(内存使用率) | 一分钟内最大值>90%,连续五次,沉默时间1小时,邮件通知 | |
InternetOutRate_Percent(公网流出带宽使用率) | 一分钟内最大值>90%,连续五次,沉默时间1小时,邮件通知 | |
RDS | CpuUsage(CPU使用率) | 五分钟内最大值>80%,连续五次,沉默时间1小时,邮件通知 |
DiskUsage(磁盘使用率) | 五分钟内最大值>80%,连续五次,沉默时间1小时,短信、邮件通知 | |
IOPSUsage(IOPS使用率) | 五分钟内最大值>80%,连续五次,沉默时间1小时,邮件通知 | |
ConnectionUsage(连接数使用率) | 五分钟内最大值>80%,连续五次,沉默时间1小时, 邮件通知 | |
DataDelay(只读实例延迟) | 五分钟内最大值>5,连续五次,沉默时间1小时,邮件通知 | |
SLB | DropConnection (监听每秒丢失连接数) | 一分钟内最大值>0,连续五次,沉默时间1小时,邮件通知 |
DropTrafficRX(监听每秒丢失入bit数) | 一分钟内最大值>0,连续五次,沉默时间1小时,邮件通知 | |
DropTrafficTX(监听每秒丢失出bit数 ) | 一分钟内最大值>0,连续五次,沉默时间1小时,邮件通知 | |
Redis | CpuUsage(CPU使用率 ) | 一分钟内最大值>80%,连续五次,沉默时间1小时,邮件通知 |
ConnectionUsage(连接数使用率) | 一分钟内最大值>80%,连续五次,沉默时间1小时,邮件通知 | |
MemoryUsage(内存使用率) | 一分钟内最大值>80%,连续五次,沉默时间1小时,邮件通知 | |
IntranetInRatio(写入带宽使用率) | 一分钟内最大值>80%,连续五次,沉默时间1小时,邮件通知 | |
IntranetOutRatio(读取带宽使用率) | 一分钟内最大值>80%,连续五次,沉默时间1小时,邮件通知 | |
MongoDB(副本集) | CPUUtilization(CPU使用率) | 五分钟内最大值>80%,连续五次,沉默时间1小时,邮件通知 |
MemoryUtilization(内存使用百分比) | 五分钟内最大值>80%,连续五次,沉默时间1小时,邮件通知 | |
DiskUtilization(磁盘使用率) | 五分钟内最大值>80%,连续五次,沉默时间1小时,邮件通知 | |
IOPSUtilization(IOPS使用率) | 五分钟内最大值>80%,连续五次,沉默时间1小时,邮件通知 | |
ConnectionUtilization(连接数使用率) | 五分钟内最大值>80%,连续五次,沉默时间1小时,邮件通知 | |
MongoDB (分片集群) | ShardingCPUUtilization (CPU使用率) | 五分钟内最大值>80%,连续五次,沉默时间1小时,邮件通知 |
ShardingMemoryUtilization(内存使用百分比) | 五分钟内最大值>80%,连续五次,沉默时间1小时,邮件通知 | |
ShardingDiskUtilization(磁盘使用率) | 五分钟内最大值>80%,连续五次,沉默时间1小时,邮件通知 | |
ShardingIOPSUtilization(IOPS使用率) | 五分钟内最大值>80%,连续五次,沉默时间1小时,邮件通知 | |
ShardingConnectionUtilization(连接数使用率) | 五分钟内最大值>80%,连续五次,沉默时间1小时,邮件通知 | |
HBase | LoadPerCpu | 五分钟内最大值>3,连续三次,沉默时间1小时,邮件通知 |
cpu_idle | 五分钟内最大值<10,连续三次,沉默时间1小时,邮件通知 | |
compactionQueueSize | 五分钟内最大值>2000,连续三次,沉默时间1小时,邮件通知 | |
rs_handlerQueueSize | 五分钟内最大值>1000,连续三次,沉默时间1小时,邮件通知 | |
CapacityUsedPercent | 五分钟内最大值>0.8,连续三次,沉默时间1小时,邮件通知 | |
zookeeper_tcp_count | 五分钟内最大值>2000,连续三次,沉默时间1小时,邮件通知 | |
ElasticSearch | ClusterStatus(集群状态) | 一分钟内最大值>2,连续十次,沉默时间1小时,邮件通知 |
NodeDiskUtilization (节点磁盘使用率 ) | 一分钟内最大值>75%,连续十次,沉默时间1小时,邮件通知 | |
NodeHeapMemoryUtilization(节点HeapMemory使用率) | 一分钟内最大值>85%,连续十次,沉默时间1小时,邮件通知 | |
Opensearch开放搜索 | DocSizeRatiobyApp (存储容量使用率) | 十分钟内最大值>85%,连续一次,沉默时间1小时,邮件通知 |
ComputeResourceRatiobyApp(计算资源使用率) | 十分钟内最大值>85%,连续一次,沉默时间1小时,邮件通知 |
一键报警相关OpenAPI介绍
maven依赖
<dependency>
<groupId>com.aliyun</groupId>
<artifactId>aliyun-java-sdk-cms</artifactId>
<version>5.2.2</version>
</dependency>
- 查询已开启产品列表
查询Action
product:Cms
version: 2017-03-01
action: ListProductOfActiveAlert
返回值
{
"Datapoints": "mongodb,ecs,slb,rds",
"Success": true,
"Code": "200"
}
- 查询告警规则列表
查询Action
product:Cms
version: 2017-03-01
action: ListActiveAlertRule
查询参数
字段 | 类型 | 是否必须 | 描述 |
---|---|---|---|
product | string | 是 | 云服务器ECS(ecs)、HBase(hbase)、云数据库MongoDB(mongodb)、云数据库MongoDB集群版(mongodb_sharding)、云数据库RDS版(rds)、云数据库Redis版(redisa)、负载均衡(slb)、ES(elasticseearch)、OpenSearch(opensearch)。参数为括号内值。 |
例子:
"product":"mongodb"
返回值
{
"Datapoints": {
"Alarm": [
{
"Uuid": "",
"Period": 60,
"Statistics": "Average",
"Webhook": "null",
"RuleName": "",
"EvaluationCount": 5,
"Name": "SystemDefault_acs_mongodb_MemoryUtilization",
"MetricName": "MemoryUtilization",
"State": "OK",
"Threshold": "80",
"Enable": false,
"SilenceTime": 86400,
"NotifyType": 0,
"Namespace": "acs_mongodb",
"ContactGroups": "["云账号报警联系人"]",
"EndTime": 24,
"StartTime": 0,
"ComparisonOperator": ">"
}
]
},
"Success": true,
"Code": "200"
}
- 启用一键报警
查询Action
product:Cms
version: 2017-03-01
action: EnableActiveAlert
查询参数
字段 | 类型 | 是否必须 | 描述 |
---|---|---|---|
product | string | 否 | 产品名 ecs/slb/mongodb/hbase/mongodb_sharding/rds/redisa等 |
例子:
"product":"ecs"
返回值
{
"Message": "",
"Success": true,
"Code": "200"
}
错误码信息
206 PartiallySuccessful Partially successful。Possible reason: quota limit。
422 CreateAlarmError Possible reason: quota limit。
500 InternalError The request processing has failed due to some unknown error.
禁用一键报警
查询Action
product:Cms
version: 2017-03-01
action: DisableActiveAlert
查询参数
字段 | 类型 | 是否必须 | 描述 |
---|---|---|---|
product | string | 否 | 产品名 ecs/slb/mongodb/hbase/mongodb_sharding/rds/redisa等 |
例子:
"product":"ecs"
返回值
{
"Message": "",
"Success": true,
"Code": "200"
}
错误码信息
200 成功
400 参数错误或缺失
403 校验失败、限速、没有授权
500 服务内部错误