包含标签 运维 的文章

redis运维:监控指标体系与性能问题分析

前言

redis 用起来简单,出问题时排查难。这篇从监控指标体系和性能问题分析两个维度整理运维要点,指标是日常巡检的眼睛,排查手段是出事时的手术刀。

一、监控指标体系

redis 的监控指标可以分为五大类。

1. 性能指标(Performance)

Name Description
latency Redis 响应一个请求的时间
instantaneous_ops_per_sec 平均每秒处理请求总数
hit rate (calculated) 缓存命中率(计算出来的)

2. 内存指标(Memory)

Name Description
used_memory 已使用内存
mem_fragmentation_ratio 内存碎片率
evicted_keys 由于最大内存限制被移除的 key 的数量
blocked_clients 由于 BLPOP、BRPOP 或 BRPOPLPUPUSH 而被阻塞的客户端

3. 基本活动指标(Basic activity)

Name Description
connected_clients 客户端连接数
connected_slaves slave 数量
master_last_io_seconds_ago 最近一次主从交互之后的秒数
keyspace 数据库中的 key 值总数

4. 持久性指标(Persistence)

Name Description
rdb_last_save_time 最后一次持久化保存磁盘的时间戳
rdb_changes_since_last_save 自最后一次持久化以来数据库的更改数

5. 错误指标(Error)

Name Description
rejected_connections 由于达到 maxclient 限制而被拒绝的连接数
keyspace_misses key 值查找失败(没有命中)次数
master_link_down_since_seconds 主从断开的持续时间(以秒为单位)

二、监控方式与工具

常用工具:redis-benchmark、redis-stat、redis-faina、redislive、redis-cli、monitor、slowlog。

……

阅读全文

云服务器盘符跳变:fstab用UUID挂载避免启动失败

前言

2020-03-28 碰到一个云服务器的问题:/dev/sdd 盘符跳变成了 /dev/sde,因为 fstab 里还写着旧设备名还带启动检查,直接导致服务器重启失败。记录下处理过程和以后的挂载规范。

1、事故经过

出问题的 fstab 长这样:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
# /etc/fstab
UUID=adc76f7c-fef6-4075-941e-e7ce50fb3e50  /         ext4  defaults  1 1
tmpfs    /dev/shm    tmpfs    defaults        0 0
devpts   /dev/pts    devpts   gid=5,mode=620  0 0
sysfs    /sys        sysfs    defaults        0 0
proc     /proc       proc     defaults        0 0

/dev/mapper/VolGroup-lv_mysql  /data      ext4  defaults  1 1
#/dev/sdd                      /dbbackup  ext4  defaults  1 1
UUID=ee7bdf7f-c4b6-4ac0-bbbf-3d7c21d6283b  /dbbackup  ext4  0 0

问题出在 /dev/sdd:原来这块盘有 1T,fstab 里按设备名挂载到 /dbbackup,而且最后两个参数是 1 1(开机 fsck 检查)。后来扩容新加了一块 500G 的盘,云平台重新分配设备名时,新盘占了 sdd 的位置,原 sdd 顺移成了 sde——fstab 里写的 /dev/sdd 现在指向的是新盘,挂载失败、fsck 检查也失败,重启直接卡死进不了系统。

……

阅读全文

用pt-query-digest分析mysql binlog

前言

排查历史数据问题时经常要翻 binlog:某个时间段数据到底被谁改成了什么样。mysqlbinlog 只能把 binlog 转成可读文本,想要按语句聚合统计(哪类语句最多、耗时分布),用 percona toolkit 里的 pt-query-digest 加上 --type binlog 就能对转出来的结果做分析。我的环境是 centos,亲测可用。

1、单独安装 pt-query-digest

不想装整套 percona toolkit 的话,单独装 pt-query-digest 就够了:

……

阅读全文

linux小技巧:文件句柄排查与乱码文件名删除

前言

攒了几个 linux 小技巧,单独发太碎,合在一起记录:文件句柄占用排查(句柄打满的锅十有八九是它)、TIME_WAIT 过多的内核参数、还有删除乱码文件名文件。

1、文件句柄排查

服务报 Too many open files 的时候,先找到是谁把句柄吃光的:

1
2
3
4
5
# 按进程统计打开的文件句柄数量,倒序
lsof -n | awk '{print $2}' | sort | uniq -c | sort -nr | more

# 拿到进程号后再确认是什么进程
ps -aef | grep 进程号

调大句柄上限,root 登录:

……

阅读全文

最近文章

分类

标签

其它