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的更多相关文章

  1. HDFS集群优化篇

    HDFS集群优化篇 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.操作系统级别优化 1>.优化文件系统(推荐使用EXT4和XFS文件系统,相比较而言,更推荐后者,因为XF ...

  2. Kafka集群优化篇-调整broker的堆内存(heap)案例实操

    Kafka集群优化篇-调整broker的堆内存(heap)案例实操 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.查看kafka集群的broker的堆内存使用情况 1>. ...

  3. Elasticsearch 集群优化-尽可能全面详细

    Elasticsearch 集群优化-转载参考1 基本配置 基本配置,5台配置为 24C 125G 17T 的主机,每台主机上搭建了一个elasticsearch节点. 采用的elasticsearc ...

  4. 第九章:Elasticsearch集群优化及相关节点配置说明

    Linux系统调优: Linux调整打开文件数(重新启动生效) 在/etc/security/limits.conf在文件中增加: * soft nofile 8192 * hard nofile 2 ...

  5. PaaS容器集群优化之路

    1. 性能优化面对的挑战 以下是整个PaaS平台的架构 其中主要包括这些子系统: 微服务治理框架:为应用提供自动注册.发现.治理.隔离.调用分析等一系列分布式/微服务治理能力,屏蔽分布式系统的复杂度. ...

  6. 大流量大负载的Kafka集群优化实战

    前言背景 算法优化改版有大需求要上线,在线特征dump数据逐步放量,最终达到现有Kafka集群5倍的流量,预计峰值达到万兆网卡80%左右(集群有几十个节点,网卡峰值流出流量800MB左右/sec.写入 ...

  7. spark 集群优化

    只有满怀自信的人,能在任何地方都怀有自信,沉浸在生活中,并认识自己的意志. 前言 最近公司有一个生产的小集群,专门用于运行spark作业.但是偶尔会因为nn或dn压力过大而导致作业checkpoint ...

  8. Java集群优化——dubbo+zookeeper构建高可用分布式集群

    不久前,我们讨论过Nginx+tomcat组成的集群,这已经是非常灵活的集群技术,但是当我们的系统遇到更大的瓶颈,全部应用的单点服务器已经不能满足我们的需求,这时,我们要考虑另外一种,我们熟悉的内容, ...

  9. Java集群优化——使用Dubbo对单一应用服务化改造

    之前,我们讨论过Nginx+tomcat组成的集群,这已经是非常灵活的集群技术,但是当我们的系统遇到更大的瓶颈,全部应用的单点服务器已经不能满足我们的需求,这时,我们要考虑另外一种,我们熟悉的内容,就 ...

  10. [转帖]K8s集群安装--最新版 Kubernetes 1.14.1

    K8s集群安装--最新版 Kubernetes 1.14.1 http://www.cnblogs.com/jieky/p/10679998.html 原作者写的比较简单 大略流程和跳转的多一些 改天 ...

随机推荐

  1. 劫持 PE 文件:新建节表并插入指定 DLL 文件

    PE格式简介 PE(Portable Executable)格式,是微软Win32环境可移植可执行文件(如exe.dll.vxd.sys和vdm等)的标准文件格式.PE格式衍生于早期建立在VAX(R) ...

  2. servlet怎么实现第一个程序和实现下载文件

    简单介绍一下servlet是什么:1:Servlet是sun公司提供的一门用于开发动态web资源的技术 2:我们若想用发一个动态web资源,需要完成以下2个步骤: 第一步:1.编写一个Java类,实现 ...

  3. 如果云是水滴,Kubernetes就是水滴管理平台

    摘要:云是由很多小水滴组成的,把每一个计算机想象成小水滴,联合起来就形成了云.一般水滴先出现,然后出现管理水滴的平台(如OpenStack,Kubernetes). 一.云计算–独立宇宙 1.云是由很 ...

  4. Mysql开发实践:error while loading shared libraries: libaio解决方案

    摘要:Mysql出现问题:error while loading shared libraries: libaio解决方案. 本文分享自华为云社区<Mysql出现问题:error while l ...

  5. 对不起,你做的 A/B 实验都是错的——火山引擎 DataTester 科普

    DataTester 是火山引擎数智平台旗下产品,能基于先进的底层算法,提供科学分流能力和智能的统计引擎,支持多种复杂的 A/B 实验类型.DataTester 深度耦合推荐.广告.搜索.UI.产品功 ...

  6. Solon2 接口开发: 实战 Gateway 模式效果

    1.效果预览 网关 @Mapping("/api/v3/app/**") @Component public class ApiGateway3x extends UapiGate ...

  7. Axure 多人协作

    创建团队项目 团队 => 从当前文件创建团队项目 签出的文件才能被修改 签出 签入 发布评论 邀请 编辑的5种状态 和SVN差不多的概念 已有项目导入 https://www.bilibili. ...

  8. Filebeat的安装和使用(Windows)

    Filebeat是什么 1.Filebeat是什么?Filebeat是用于转发和集中日志数据的轻量级传送工具. Filebeat监视用户指定的日志文件或位置,收集日志事件,并将日志数据转发到Elast ...

  9. 41. 干货系列从零用Rust编写负载均衡及代理,websocket与tcp的映射,WS与TCP互转

    wmproxy wmproxy已用Rust实现http/https代理, socks5代理, 反向代理, 静态文件服务器,四层TCP/UDP转发,七层负载均衡,内网穿透,后续将实现websocket代 ...

  10. Django中安装websocket

    完整代码: https://gitee.com/mom925/django-system项目结构: 先安装所需库: pip install channels下面将websocket作为插件一样的只需要 ...