[转帖]058、集群优化之PD
PD调度基本概念


调度流程

调度中还有这还缺来了merge,例如合并空region。
store: 基本信息,容量,剩余空间,读写流量等
region: 范围,副本分布,副本状态,数据量,读写流量等
- 相关调度说明
- balance-leader-scheduler: 保持不同节点的leader均衡
- balance-region-scheduler: 保持不同节点的Peer均衡
- hot-region-scheduler: 保持不同节点的读写热点Region均衡
- evict-leader-{store-id}: 驱逐某个节点的所有leader
调度limit参数
- 调度当中的生产者相关参数
| 参数 | 默认值 | 说明 |
|---|---|---|
| region-schedule-limit | 2048 | 同时进行Region调度的任务个数 |
| leader-schedule-limit | 4 | 同时进行leader调度的任务个数 |
| replica-schedule-limit | 64 | 同时进行replica调度的任务个数 |
| merge-schedule-limit | 8 | 同时进行region merge调度的任务,设置为0则是关闭这个调度 |
| hot-region-schedule-limt | 4 | 控制同时进行的hot Region任务。 |
| patrol-region-interval | 100ms | 控制region的间隔,默认100ms,通常不需要调整 |
| tolerant-size-ratio | 0 | 控制balance region缓冲区大小,默认是0,表示自动调整,不需要修改 |
| region_weight leader_weight |
1 | PD计算region和leader分数之后,会除以weight得到最终的region和leader分值,weight默认为1,不需要修改 |
- 调度当中的消费者相关参数-消费限速(store limit)
- 定义: 限制单个store的消费速度
- 方式: pd-ctl -u ip:port store limit <id> <value>
- 区别: store limit限制的主要是operator的消费速度,而其他的limit主要是限制operator的产生速度
存储空间阈值参数

pd 会为每个TiKV打分(例如leader多的分高),如果分多,则可能将leader允给其他的节点。 但有个前提,如果分少的节点基本没空间了,则分多的节点给它分数就不太合适了。此时通过high-space-ratio: 60% 这个参数控制当节点存储的空间小于这个值的时候,则不考虑这个空间因素了。或者low-space-ratio:80%,当节点存储空间大于这个值的时候,就会优先考虑空间因素了。
常见问题的处理
扩容后balance region 调度速度慢
Grafana PD -> Operator -> Schedule Operator Create
Grafana PD -> Operator -> Operator Step Duration

store节点故障后补副本的速度慢

Region merge速度慢

pd-ctl
- 查看并修改调度参数
config show -- 显示当前调度相关参数
config set <key> <value> -- 修改相关参数
store limit <store_id> <value> --限制单个store的调度速度
- 1
- 2
- 3
- 手动添加Operator
operator show [admin|leader|region] --展示当前全局或某类的调度任务
operator add --人工添加一些调度任务实现期望目标,例如
operator add add-peer <region_id> <store_id>
operator add remove-peer <region_id> <store_id>
operator add transfer-leader <region_id> <store_id>
- 1
- 2
- 3
- 4
- 5
- 详细使用方法
https://docs.pingcap.com/zh/tidb/v6.5/pd-control
- 1
[转帖]058、集群优化之PD的更多相关文章
- HDFS集群优化篇
HDFS集群优化篇 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.操作系统级别优化 1>.优化文件系统(推荐使用EXT4和XFS文件系统,相比较而言,更推荐后者,因为XF ...
- Kafka集群优化篇-调整broker的堆内存(heap)案例实操
Kafka集群优化篇-调整broker的堆内存(heap)案例实操 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.查看kafka集群的broker的堆内存使用情况 1>. ...
- Elasticsearch 集群优化-尽可能全面详细
Elasticsearch 集群优化-转载参考1 基本配置 基本配置,5台配置为 24C 125G 17T 的主机,每台主机上搭建了一个elasticsearch节点. 采用的elasticsearc ...
- 第九章:Elasticsearch集群优化及相关节点配置说明
Linux系统调优: Linux调整打开文件数(重新启动生效) 在/etc/security/limits.conf在文件中增加: * soft nofile 8192 * hard nofile 2 ...
- PaaS容器集群优化之路
1. 性能优化面对的挑战 以下是整个PaaS平台的架构 其中主要包括这些子系统: 微服务治理框架:为应用提供自动注册.发现.治理.隔离.调用分析等一系列分布式/微服务治理能力,屏蔽分布式系统的复杂度. ...
- 大流量大负载的Kafka集群优化实战
前言背景 算法优化改版有大需求要上线,在线特征dump数据逐步放量,最终达到现有Kafka集群5倍的流量,预计峰值达到万兆网卡80%左右(集群有几十个节点,网卡峰值流出流量800MB左右/sec.写入 ...
- spark 集群优化
只有满怀自信的人,能在任何地方都怀有自信,沉浸在生活中,并认识自己的意志. 前言 最近公司有一个生产的小集群,专门用于运行spark作业.但是偶尔会因为nn或dn压力过大而导致作业checkpoint ...
- Java集群优化——dubbo+zookeeper构建高可用分布式集群
不久前,我们讨论过Nginx+tomcat组成的集群,这已经是非常灵活的集群技术,但是当我们的系统遇到更大的瓶颈,全部应用的单点服务器已经不能满足我们的需求,这时,我们要考虑另外一种,我们熟悉的内容, ...
- Java集群优化——使用Dubbo对单一应用服务化改造
之前,我们讨论过Nginx+tomcat组成的集群,这已经是非常灵活的集群技术,但是当我们的系统遇到更大的瓶颈,全部应用的单点服务器已经不能满足我们的需求,这时,我们要考虑另外一种,我们熟悉的内容,就 ...
- [转帖]K8s集群安装--最新版 Kubernetes 1.14.1
K8s集群安装--最新版 Kubernetes 1.14.1 http://www.cnblogs.com/jieky/p/10679998.html 原作者写的比较简单 大略流程和跳转的多一些 改天 ...
随机推荐
- 劫持 PE 文件:新建节表并插入指定 DLL 文件
PE格式简介 PE(Portable Executable)格式,是微软Win32环境可移植可执行文件(如exe.dll.vxd.sys和vdm等)的标准文件格式.PE格式衍生于早期建立在VAX(R) ...
- servlet怎么实现第一个程序和实现下载文件
简单介绍一下servlet是什么:1:Servlet是sun公司提供的一门用于开发动态web资源的技术 2:我们若想用发一个动态web资源,需要完成以下2个步骤: 第一步:1.编写一个Java类,实现 ...
- 如果云是水滴,Kubernetes就是水滴管理平台
摘要:云是由很多小水滴组成的,把每一个计算机想象成小水滴,联合起来就形成了云.一般水滴先出现,然后出现管理水滴的平台(如OpenStack,Kubernetes). 一.云计算–独立宇宙 1.云是由很 ...
- Mysql开发实践:error while loading shared libraries: libaio解决方案
摘要:Mysql出现问题:error while loading shared libraries: libaio解决方案. 本文分享自华为云社区<Mysql出现问题:error while l ...
- 对不起,你做的 A/B 实验都是错的——火山引擎 DataTester 科普
DataTester 是火山引擎数智平台旗下产品,能基于先进的底层算法,提供科学分流能力和智能的统计引擎,支持多种复杂的 A/B 实验类型.DataTester 深度耦合推荐.广告.搜索.UI.产品功 ...
- Solon2 接口开发: 实战 Gateway 模式效果
1.效果预览 网关 @Mapping("/api/v3/app/**") @Component public class ApiGateway3x extends UapiGate ...
- Axure 多人协作
创建团队项目 团队 => 从当前文件创建团队项目 签出的文件才能被修改 签出 签入 发布评论 邀请 编辑的5种状态 和SVN差不多的概念 已有项目导入 https://www.bilibili. ...
- Filebeat的安装和使用(Windows)
Filebeat是什么 1.Filebeat是什么?Filebeat是用于转发和集中日志数据的轻量级传送工具. Filebeat监视用户指定的日志文件或位置,收集日志事件,并将日志数据转发到Elast ...
- 41. 干货系列从零用Rust编写负载均衡及代理,websocket与tcp的映射,WS与TCP互转
wmproxy wmproxy已用Rust实现http/https代理, socks5代理, 反向代理, 静态文件服务器,四层TCP/UDP转发,七层负载均衡,内网穿透,后续将实现websocket代 ...
- Django中安装websocket
完整代码: https://gitee.com/mom925/django-system项目结构: 先安装所需库: pip install channels下面将websocket作为插件一样的只需要 ...