本站支持搜索的镜像仓库:Docker Hub、gcr.io、ghcr.io、quay.io、k8s.gcr.io、registry.gcr.io、elastic.co、mcr.microsoft.com

PD(Placement Driver)是TiDB分布式数据库生态的核心组件,全称为Placement Driver。其主要用途是作为TiKV集群的管理和调度中心,负责协调TiKV节点、管理数据分片(Region)的分布与迁移、维护集群元数据,并确保整个TiKV集群的高可用性和性能优化。PD通过嵌入etcd实现分布式协调与容错能力,是TiDB集群正常运行的关键协调组件。
PD适用于TiDB分布式数据库集群环境,具体场景包括:
通过源码仓库构建PD镜像:
git clone [***] cd pd docker build -t pingcap/pd .
直接拉取***发布的镜像:
docker pull pingcap/pd
通过Docker快速启动单节点PD服务,适用于测试或开发环境。
# 设置主机IP(需替换为实际主机IP) export HostIP="192.168.199.105" docker run -d \ -p 2379:2379 \ # 客户端通信端口 -p 2380:2380 \ # 节点间对等通信端口 --name pd \ pingcap/pd \ --cluster-id=1 \ # 集群唯一ID --name="pd" \ # 节点名称 --client-urls="[***]" \ # 容器内客户端监听地址 --advertise-client-urls="[***]{HostIP}:2379" \ # 对外暴露的客户端地址 --peer-urls="[***]" \ # 容器内对等节点监听地址 --advertise-peer-urls="[***]{HostIP}:2380" # 对外暴露的对等节点地址
使用curl或httpie工具检查PD节点状态:
通过curl验证:
curl ${HostIP}:2379/v2/members
预期输出(示例):
{"members":[{"id":"f62e88a6e81c149","name":"pd","peerURLs":["[***]"],"clientURLs":["[***]"]}]}
通过httpie验证(推荐):
# 安装httpie(如未安装):pip install httpie http ${HostIP}:2379/v2/members
预期输出(示例):
HTTP/1.1 200 OK Content-Length: 144 Content-Type: application/json Date: Thu, 21 Jul 2016 09:37:12 GMT X-Etcd-Cluster-Id: 33dc747581249309 { "members": [ { "clientURLs": ["[***]"], "id": "f62e88a6e81c149", "name": "pd", "peerURLs": ["[***]"] } ] }
PD作为TiDB集群的核心组件,需与TiDB(SQL层)和TiKV(存储层)协同工作。生产环境中建议部署多节点PD集群以确保高可用。
文档参考:详细集群部署步骤请参考TiDB文档:
关键说明:多节点PD集群需通过--initial-cluster参数指定初始成员列表,各节点通过--advertise-client-urls和--advertise-peer-urls相互发现。
PD服务启动支持多种命令行参数,核心参数说明如下:
| 参数名 | 描述 |
|---|---|
--cluster-id | 集群唯一标识符,同一集群内所有PD节点需使用相同ID。 |
--name | PD节点名称,用于标识集群中的节点。 |
--client-urls | 客户端通信监听地址(容器内),格式为http://<ip>:<port>,通常设为0.0.0.0:2379。 |
--advertise-client-urls | 对外暴露的客户端通信地址,供外部组件(如TiDB、TiKV)连接,需指定主机可访问的IP:端口。 |
--peer-urls | 对等节点通信监听地址(容器内),用于PD节点间通信,通常设为0.0.0.0:2380。 |
--advertise-peer-urls | 对外暴露的对等节点通信地址,供集群内其他PD节点连接。 |
--initial-cluster | 初始集群成员列表,多节点部署时需指定,格式为<name>=http://<advertise-peer-url>,...。 |
--advertise-client-urls和--advertise-peer-urls需配置为集群内其他节点可访问的地址,避免使用localhost或127.0.0.1。免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录方式配置轩辕镜像加速服务,包含7个详细步骤
在 Linux 系统上配置轩辕镜像源,支持主流发行版
在 Docker Desktop 中配置轩辕镜像加速,适用于桌面系统
在 Docker Compose 中使用轩辕镜像加速,支持容器编排
在 k8s 中配置 containerd 使用轩辕镜像加速
在宝塔面板中配置轩辕镜像加速,提升服务器管理效率
在 Synology 群晖NAS系统中配置轩辕镜像加速
在飞牛fnOS系统中配置轩辕镜像加速
在极空间NAS中配置轩辕镜像加速
在爱快ikuai系统中配置轩辕镜像加速
在绿联NAS系统中配置轩辕镜像加速
在威联通NAS系统中配置轩辕镜像加速
在 Podman 中配置轩辕镜像加速,支持多系统
配置轩辕镜像加速9大主流镜像仓库,包含详细配置步骤
无需登录即可使用轩辕镜像加速服务,更加便捷高效
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429