Skip to content

Latest commit

 

History

History
114 lines (76 loc) · 4.84 KB

command-line-flags-for-pd-configuration.md

File metadata and controls

114 lines (76 loc) · 4.84 KB
title aliases summary
PD 配置参数
/docs-cn/dev/command-line-flags-for-pd-configuration/
/docs-cn/dev/reference/configuration/pd-server/configuration/
PD 配置参数可以通过命令行参数或环境变量配置。包括外部访问 PD 的 URL 列表,其他 PD 节点访问某个 PD 节点的 URL 列表,PD 监听的客户端 URL 列表,PD 节点监听其他 PD 节点的 URL 列表,配置文件,PD 存储数据路径,初始化 PD 集群配置,动态加入 PD 集群,Log 级别,Log 文件,是否开启日志切割,当前 PD 的名字,CA 文件路径,包含 X509 证书的 PEM 文件路径,包含 X509 key 的 PEM 文件路径,指定 Prometheus Pushgateway 的地址,强制使用当前节点创建新的集群,输出版本信息并退出。

PD 配置参数

PD 可以通过命令行参数或环境变量配置。

--advertise-client-urls

  • 用于外部访问 PD 的 URL 列表。
  • 默认:${client-urls}
  • 在某些情况下,例如 Docker 或者 NAT 网络环境,客户端并不能通过 PD 自己监听的 client URLs 来访问到 PD,这时候,你就可以设置 advertise URLs 来让客户端访问。
  • 例如,Docker 内部 IP 地址为 172.17.0.1,而宿主机的 IP 地址为 192.168.100.113 并且设置了端口映射 -p 2379:2379,那么可以设置为 --advertise-client-urls="http://192.168.100.113:2379",客户端可以通过 http://192.168.100.113:2379 来找到这个服务。

--advertise-peer-urls

  • 用于其他 PD 节点访问某个 PD 节点的 URL 列表。
  • 默认:${peer-urls}
  • 在某些情况下,例如 Docker 或者 NAT 网络环境,其他节点并不能通过 PD 自己监听的 peer URLs 来访问到 PD,这时候,你就可以设置 advertise URLs 来让其他节点访问。
  • 例如,Docker 内部 IP 地址为 172.17.0.1,而宿主机的 IP 地址为 192.168.100.113 并且设置了端口映射 -p 2380:2380,那么可以设置为 advertise-peer-urls="http://192.168.100.113:2380",其他 PD 节点可以通过 http://192.168.100.113:2380 来找到这个服务。

--client-urls

  • PD 监听的客户端 URL 列表。
  • 默认:http://127.0.0.1:2379
  • 如果部署一个集群,--client-urls 必须指定当前主机的 IP 地址,例如 http://192.168.100.113:2379",如果是运行在 Docker 则需要指定为 http://0.0.0.0:2379

--peer-urls

  • PD 节点监听其他 PD 节点的 URL 列表。
  • 默认:http://127.0.0.1:2380
  • 如果部署一个集群,--peer-urls 必须指定当前主机的 IP 地址,例如 http://192.168.100.113:2380,如果是运行在 Docker 则需要指定为 http://0.0.0.0:2380

--config

  • 配置文件。
  • 默认:""
  • 如果你指定了配置文件,PD 会首先读取配置文件的配置。然后如果对应的配置在命令行参数里面也存在,PD 就会使用命令行参数的配置来覆盖配置文件里面的。

--data-dir

  • PD 存储数据路径。
  • 默认:default.${name}

--initial-cluster

  • 初始化 PD 集群配置。
  • 默认:"{name}=http://{advertise-peer-url}"
  • 例如,如果 name 是 "pd",并且 advertise-peer-urlshttp://192.168.100.113:2380,那么 initial-cluster 就是 pd=http://192.168.100.113:2380
  • 如果你需要启动三台 PD,那么 initial-cluster 可能就是 pd1=http://192.168.100.113:2380, pd2=http://192.168.100.114:2380, pd3=192.168.100.115:2380

--join

  • 动态加入 PD 集群。
  • 默认:""
  • 如果你想动态将一台 PD 加入集群,你可以使用 --join="${advertise-client-urls}"advertise-client-url 是当前集群里面任意 PD 的 advertise-client-url,你也可以使用多个 PD 的,需要用逗号分隔。

-L

  • Log 级别。
  • 默认:"info"
  • 可选:"debug","info","warn","error","fatal"

--log-file

  • Log 文件。
  • 默认:""
  • 如果没设置这个参数,log 会默认输出到 "stderr",如果设置了,log 就会输出到对应的文件里面。

--log-rotate

  • 是否开启日志切割。
  • 默认:true
  • 当值为 true 时,按照 PD 配置文件中 [log.file] 信息执行。

--name

  • 当前 PD 的名字。
  • 默认:"pd"
  • 如果你需要启动多个 PD,一定要给 PD 使用不同的名字

--cacert

  • CA 文件路径,用于开启 TLS。
  • 默认:""

--cert

  • 包含 X509 证书的 PEM 文件路径,用户开启 TLS。
  • 默认:""

--key

  • 包含 X509 key 的 PEM 文件路径,用于开启 TLS。
  • 默认:""

--metrics-addr

  • 指定 Prometheus Pushgateway 的地址。
  • 默认:""
  • 如果留空,则不开启 Prometheus Push。

--force-new-cluster

  • 强制使用当前节点创建新的集群。
  • 默认:false
  • 仅用于在 PD 丢失多数副本的情况下恢复服务,可能会产生部分数据丢失。

-V, --version

  • 输出版本信息并退出。