文档章节

生产监控报警一:阿里云 RDS 监控报警

诸葛孔明亮
 诸葛孔明亮
发布于 2016/11/01 11:15
字数 567
阅读 43
收藏 2

前言

    早上挤地铁的时候收到了阿里云的监控报警,RDS 的 CPU 的负载达到了 90%

 

排查

    因为是昨天晚上上的线,微信公众号也是在晚上才放出活动链接,当时也是考虑了可能会到来的使用量,把后台活动负载到了 3 台服务器,可是没想到竟然是 mysql 报出了告警。

 

    查看了数据库的使用量,发现总共有 3 w 多条的插入记录,而 CPU 的使用率确一直保持在 90% 不下来,正常情况下,2核4G 的一台 mysql 数据库不可能被这点插入量就给干趴下了,而且只是 CPU 的使用率特别高,内存的使用率确很少,问题可能出在 SQL 执行上面,部分 SQL 没有优化好导致的。

    百万级别的访问量才算是大数据,需要从架构的层面去考虑,3万的访问量并不需要在架构上优化,直连可能都可以顶住。

 

    看了下阿里云自带的 RDS 监控,里面的 SQL 执行记录,发现有几条 sql 的执行特别慢,每条语句执行的时间快 3 秒了,没有优化好。

检查了表结构,发现是缺少索引导致的,添加了索引,RDS 的CPU 这才恢复了正常。

 

当一张表的数据过大的时候,添加索引需要选择半夜用户量少的时候,因为百万级别的表添加索引可能需要 7、8个小时才能建好索引。

 

    一开始也怀疑了是遭到了攻击,后台想想是错的,因为生产的数据库是添加过白名单的,没有在白名单里面的 IP 是不可能操作数据库的。

 

简单防止 SQL 注入、DDoS 等攻击

    简单来说就是通过屏蔽攻击的 IP 地址来保护服务器。

    linux中iptables屏蔽指定ip及ip段。

    屏蔽某个 IP:

    iptables -I INPUT -s xxx.xxx.xxx.xxx -j DROP

    屏蔽指定 IP 段:

    iptables -I INPUT -s 192.168.0.0/24 -j DROP

 

© 著作权归作者所有

共有 人打赏支持
诸葛孔明亮
粉丝 2
博文 64
码字总数 53931
作品 0
浦东
运维
私信 提问
实时计算Flink——快速入门概述

本页目录 安全监控背景介绍 安全监控业务架构图 作业操作流程 文本提供了一个安全监控作业案例,来帮助您了解实时计算开发流式作业。 安全监控背景介绍 随着科技的进步,数据的安全越来越被世...

李博bluemind
11/14
0
0
通过open API迅速搭建基于应用分组+报警模板的基本监控体系

背景 云监控的功能庞杂,涉及云产品众多, 对于企业用户来说,面对茫茫多的云上资源,建立监控体系时可能第一时间感到无从下手,本文将通过云监控的openAPI,利用 "应用分组" + "报警模板" 的...

冬恒
07/09
0
0
如何实现Docker应用的自定义弹性伸缩

摘要: 简介 现在有很多客户很关心应用的自动弹性伸缩,有些客户也有自己的监控框架,并希望能跟阿里云容器服务进行集成。阿里云容器服务提供了服务弹性伸缩触发器,并能够跟监控框架集成来实...

姬子玉
2017/12/04
0
0
探索乐视MySQL数据库架构与运维实践

一、乐视数据库概述 1、数据库平台介绍 我们数据库部门的数据库种类较多:有MySQL、Oracle、MongoDB、Redis等。从另一角度,可分为传统的DB (MySQL、MongoDB..) 及云数据库RDS。其中,MySQL...

English0523
2017/09/02
0
0
阿里云云数据库RDS秒级监控功能解锁,通宵加班找故障将成为过去式

摘要: 每一个奋斗在前线的数据库管理员和运维人员似乎运气都不太好,这些人都绝对经历过的诡异事件就是:逢年过节必出故障,明明眼看着要休假了,又接到故障通知,只好通宵加班找问题。没问...

阿里云云栖社区
07/10
0
0

没有更多内容

加载失败,请刷新页面

加载更多

python自然语言处理快速入门2常见的NLP操作

在本章中,我们将讨论我们文本数据进行的一些常见数据预处理操作,以适配典型的机器学习算法,如贝叶斯、决策树,逻辑回归等等。这些算法都只适用于数字向量,而不是文本。 那么我们如何将文...

python测试开发人工智能安全
17分钟前
0
0
OSChina 周一乱弹 —— 温柔的人应该这样

Osc乱弹歌单(2018)请戳(这里) 【今日歌曲】 @clouddyy :#每日一歌# 《フィクション-sumika》 《フィクション-sumika》 手机党少年们想听歌,请使劲儿戳(这里) 假期时间干嘛去, @for...

小小编辑
34分钟前
9
4
[LintCode] Serialize and Deserialize Binary Tree(二叉树的序列化和反序列化)

描述 设计一个算法,并编写代码来序列化和反序列化二叉树。将树写入一个文件被称为“序列化”,读取文件后重建同样的二叉树被称为“反序列化”。 如何反序列化或序列化二叉树是没有限制的,你...

honeymose
今天
6
0
java框架学习日志-7(静态代理和JDK代理)

静态代理 我们平时去餐厅吃饭,不是直接告诉厨师做什么菜的,而是先告诉服务员点什么菜,然后由服务员传到给厨师,相当于服务员是厨师的代理,我们通过代理让厨师炒菜,这就是代理模式。代理...

白话
今天
26
0
Flink Window

1.Flink窗口 Window Assigner分配器。 窗口可以是时间驱动的(Time Window,例如:每30秒钟),也可以是数据驱动的(Count Window,例如:每一百个元素)。 一种经典的窗口分类可以分成: 翻...

满小茂
今天
19
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部