- 关于 TiDB
- 快速上手
- 部署集群
- 数据迁移
- 数据迁移概述
- 从 MySQL 迁移至 TiDB
- 从 CSV 文件迁移至 TiDB
- 运维操作
- 监控与告警
- 故障诊断
- 性能调优
- 系统调优
- 软件调优
- SQL 性能调优
- 教程
- TiDB 生态工具
- TiDB 生态工具功能概览
- TiDB 生态工具适用场景
- TiDB 工具下载
- Backup & Restore (BR)
- TiDB Binlog
- TiDB Lightning
- TiCDC 简介
- Dumpling 使用文档
- sync-diff-inspector
- Loader 使用文档
- Mydumper 使用文档
- Syncer 使用文档
- TiSpark
- 参考指南
- 架构
- 监控指标
- 安全加固
- 权限
- SQL
- SQL 语言结构和语法
- 属性
- 字面值
- Schema 对象名
- 关键字
- 用户自定义变量
- 表达式语法
- 注释语法
- SQL 语句
- ADD COLUMN
- ADD INDEX
- ADMIN
- ALTER DATABASE
- ALTER INSTANCE
- ALTER TABLE
- ALTER USER
- ANALYZE
- BACKUP
- BEGIN
- CHANGE COLUMN
- CHANGE DRAINER
- CHANGE PUMP
- COMMIT
- CREATE [GLOBAL|SESSION] BINDING
- CREATE DATABASE
- CREATE INDEX
- CREATE ROLE
- CREATE SEQUENCE
- CREATE TABLE LIKE
- CREATE TABLE
- CREATE USER
- CREATE VIEW
- DEALLOCATE
- DELETE
- DESC
- DESCRIBE
- DO
- DROP [GLOBAL|SESSION] BINDING
- DROP COLUMN
- DROP DATABASE
- DROP INDEX
- DROP ROLE
- DROP SEQUENCE
- DROP STATS
- DROP TABLE
- DROP USER
- DROP VIEW
- EXECUTE
- EXPLAIN ANALYZE
- EXPLAIN
- FLASHBACK TABLE
- FLUSH PRIVILEGES
- FLUSH STATUS
- FLUSH TABLES
- GRANT
- GRANT
- INSERT
- KILL [TIDB]
- LOAD STATS
- MODIFY COLUMN
- PREPARE
- RECOVER TABLE
- RENAME INDEX
- RENAME TABLE
- REPLACE
- RESTORE
- REVOKE
- REVOKE
- ROLLBACK
- SELECT
- SET DEFAULT ROLE
- SET [NAMES|CHARACTER SET]
- SET PASSWORD
- SET ROLE
- SET TRANSACTION
- SET [GLOBAL|SESSION]
- SHOW [BACKUPS|RESTORES]
- SHOW ANALYZE STATUS
- SHOW [GLOBAL|SESSION] BINDINGS
- SHOW BUILTINS
- SHOW CHARACTER SET
- SHOW COLLATION
- SHOW [FULL] COLUMNS FROM
- SHOW CONFIG
- SHOW CREATE SEQUENCE
- SHOW CREATE TABLE
- SHOW CREATE USER
- SHOW DATABASES
- SHOW DRAINER STATUS
- SHOW ENGINES
- SHOW ERRORS
- SHOW [FULL] FIELDS FROM
- SHOW GRANTS
- SHOW INDEX [FROM|IN]
- SHOW INDEXES [FROM|IN]
- SHOW KEYS [FROM|IN]
- SHOW MASTER STATUS
- SHOW PLUGINS
- SHOW PRIVILEGES
- SHOW [FULL] PROCESSLIST
- SHOW PROFILES
- SHOW PUMP STATUS
- SHOW SCHEMAS
- SHOW STATS_HEALTHY
- SHOW STATS_HISTOGRAMS
- SHOW STATS_META
- SHOW [GLOBAL|SESSION] STATUS
- SHOW TABLE NEXTROWID
- SHOW TABLE REGIONS
- SHOW TABLE STATUS
- SHOW [FULL] TABLES
- SHOW [GLOBAL|SESSION] VARIABLES
- SHOW WARNINGS
- SHUTDOWN
- Split Region 使用文档
- START TRANSACTION
- TRACE
- TRUNCATE
- UPDATE
- USE
- 数据类型
- 函数与操作符
- 约束
- 生成列
- SQL 模式
- 事务
- 垃圾回收 (GC)
- 视图
- 分区表
- 字符集和排序规则
- 系统表
- TiDB 系统表
- INFORMATION_SCHEMA
- TiDB 简介
- ANALYZE_STATUS
- CHARACTER_SETS
- CLUSTER_CONFIG
- CLUSTER_HARDWARE
- CLUSTER_INFO
- CLUSTER_LOAD
- CLUSTER_LOG
- CLUSTER_SYSTEMINFO
- COLLATIONS
- COLLATIONCHARACTERSET_APPLICABILITY
- COLUMNS
- DDL_JOBS
- ENGINES
- INSPECTION_RESULT
- INSPECTION_RULES
- INSPECTION_SUMMARY
- KEYCOLUMNUSAGE
- METRICS_SUMMARY
- METRICS_TABLES
- PARTITIONS
- PROCESSLIST
- SCHEMATA
- SEQUENCES
- SESSION_VARIABLES
- SLOW_QUERY
- STATISTICS
- TABLES
- TABLE_CONSTRAINTS
- TABLESTORAGESTATS
- TIDBHOTREGIONS
- TIDB_INDEXES
- TIDBSERVERSINFO
- TIFLASH_REPLICA
- TIKVREGIONPEERS
- TIKVREGIONSTATUS
- TIKVSTORESTATUS
- USER_PRIVILEGES
- VIEWS
- Metrics Schema
- SQL 语言结构和语法
- UI
- CLI
- 命令行参数
- 配置文件参数
- 系统变量
- 存储引擎
- TiUP
- 遥测
- 错误码与故障诊断
- TiCDC Open Protocol
- 通过拓扑 label 进行副本调度
- 常见问题解答 (FAQ)
- 术语表
文章来源于网络收集而来,版权归原创者所有,如有侵权请及时联系!
Overview 面板重要监控指标详解
使用 TiDB Ansible 或 TiUP 部署 TiDB 集群时,一键部署监控系统 (Prometheus & Grafana),监控架构参见 TiDB 监控框架概述。
目前 Grafana Dashboard 整体分为 PD、TiDB、TiKV、Node_exporter、Overview 等。
对于日常运维,我们单独挑选出重要的 Metrics 放在 Overview 页面,方便日常运维人员观察集群组件 (PD, TiDB, TiKV) 使用状态以及集群使用状态。
以下为 Overview Dashboard 监控说明:
Services Port Status
- Services Up:各服务在线节点数量
PD
- PD role:当前 PD 的角色
- Storage capacity:TiDB 集群总可用数据库空间大小
- Current storage size:TiDB 集群目前已用数据库空间大小,TiKV 多副本的空间占用也会包含在内
- Normal stores:处于正常状态的节点数目
- Abnormal stores:处于异常状态的节点数目,正常情况应当为 0
- Number of Regions:当前集群的 Region 总量,请注意 Region 数量与副本数无关
- 99% completed_cmds_duration_seconds:单位时间内,99% 的 pd-server 请求执行时间小于监控曲线的值,一般 <= 5ms
- Handle_requests_duration_seconds:PD 发送请求的网络耗时
- Region health:每个 Region 的状态,通常情况下,pending 的 peer 应该少于 100,miss 的 peer 不能一直大于 0
- Hot write Region's leader distribution:每个 TiKV 实例上是写入热点的 leader 的数量
- Hot read Region's leader distribution:每个 TiKV 实例上是读取热点的 leader 的数量
- Region heartbeat report:TiKV 向 PD 发送的心跳个数
- 99% Region heartbeat latency:99% 的情况下,心跳的延迟
TiDB
- Statement OPS:不同类型 SQL 语句每秒执行的数量。按
SELECT
、INSERT
、UPDATE
等来统计 - Duration:执行的时间
- 客户端网络请求发送到 TiDB,到 TiDB 执行结束后返回给客户端的时间。一般情况下,客户端请求都是以 SQL 语句的形式发送,但也可以包含
COM_PING
、COM_SLEEP
、COM_STMT_FETCH
、COM_SEND_LONG_DATA
之类的命令执行的时间 - 由于 TiDB 支持 Multi-Query,因此,可以接受客户端一次性发送的多条 SQL 语句,如:
select 1; select 1; select 1;
。此时,统计的执行时间是所有 SQL 执行完之后的总时间
- 客户端网络请求发送到 TiDB,到 TiDB 执行结束后返回给客户端的时间。一般情况下,客户端请求都是以 SQL 语句的形式发送,但也可以包含
- QPS By Instance:每个 TiDB 上的 QPS。按照命令和执行结果成功或失败来统计
- Failed Query OPM:每个 TiDB 实例上,每秒钟执行 SQL 语句发生错误按照错误类型的统计(例如语法错误、主键冲突等)。包含了错误所属的模块和错误码
- Connection count:每个 TiDB 的连接数
- Memory Usage:每个 TiDB 实例的内存使用统计,分为进程占用内存和 Golang 在堆上申请的内存
- Transaction OPS:每秒事务执行数量统计
- Transaction Duration:事务执行的时间
- KV Cmd OPS:KV 命令执行数量统计
- KV Cmd Duration 99:KV 命令执行的时间
- PD TSO OPS:TiDB 每秒从 PD 获取 TSO 的数量
- PD TSO Wait Duration:TiDB 等待从 PD 获取 TS 的时间
- TiClient Region Error OPS:TiKV 返回 Region 相关错误信息的数量
- Lock Resolve OPS:TiDB 清理锁操作的数量。当 TiDB 的读写请求遇到锁时,会尝试进行锁清理
- Load Schema Duration:TiDB 从 TiKV 获取 Schema 的时间
- KV Backoff OPS:TiKV 返回错误信息的数量
TiKV
- leader:各个 TiKV 节点上 Leader 的数量分布
- region:各个 TiKV 节点上 Region 的数量分布
- CPU:各个 TiKV 节点的 CPU 使用率
- Memory:各个 TiKV 节点的内存使用量
- store size:每个 TiKV 实例的使用的存储空间的大小
- cf size:每个列族的大小
- channel full:每个 TiKV 实例上 channel full 错误的数量,正常情况下应当为 0
- server report failures:每个 TiKV 实例上报错的消息个数,正常情况下应当为 0
- scheduler pending commands:每个 TiKV 实例上 pending 命令的个数
- coprocessor executor count:TiKV 每秒收到的 coprocessor 操作数量,按照 coprocessor 类型统计
- coprocessor request duration:处理 coprocessor 读请求所花费的时间
- raft store CPU:raftstore 线程的 CPU 使用率,线程数量默认为 2 (通过
raftstore.store-pool-size
配置)。如果单个线程使用率超过 80%,说明使用率很高 - Coprocessor CPU:coprocessor 线程的 CPU 使用率
System Info
- Vcores:CPU 核心数量
- Memory:内存总大小
- CPU Usage:CPU 使用率,最大为 100%
- Load [1m]:1 分钟的负载情况
- Memory Available:剩余内存大小
- Network Traffic:网卡流量统计
- TCP Retrans:TCP 重传数量统计
- IO Util:磁盘使用率,最高为 100%,一般到 80% - 90% 就需要考虑加节点
图例
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论