PDConfiguration / コンフィグレーションファイル
PD構成ファイルは、コマンドラインパラメーターよりも多くのオプションをサポートします。デフォルトの設定ファイルここを見つけることができます。
このドキュメントでは、コマンドラインパラメータに含まれていないパラメータについてのみ説明します。コマンドラインパラメータについてはここを確認してください。
name
- PDノードの一意の名前
- デフォルト値:
"pd"
- 複数のPDノードを開始するには、ノードごとに一意の名前を使用します。
data-dir
- PDがデータを保存するディレクトリ
- デフォルト値:
default.${name}"
client-urls
- PDがリッスンするクライアントURLのリスト
- デフォルト値:
"http://127.0.0.1:2379"
- クラスタを展開するときは、現在のホストのIPアドレスを
client-urls
(たとえば、"http://192.168.100.113:2379"
)として指定する必要があります。クラスタがDockerで実行されている場合は、DockerのIPアドレスを"http://0.0.0.0:2379"
として指定します。
advertise-client-urls
- クライアントがPDにアクセスするためのアドバタイズURLのリスト
- デフォルト値:
"${client-urls}"
- DockerまたはNATネットワーク環境などの一部の状況で、クライアントがPDによってリッスンされるデフォルトのクライアントURLを介してPDにアクセスできない場合は、アドバタイズするクライアントURLを手動で設定する必要があります。
- たとえば、Dockerの内部IPアドレスは
172.17.0.1
ですが、ホストのIPアドレスは192.168.100.113
で、ポートマッピングは-p 2380:2380
に設定されています。この場合、advertise-client-urls
を設定でき"http://192.168.100.113:2380"
。クライアントは"http://192.168.100.113:2380"
までこのサービスを見つけることができます。
peer-urls
- PDノードがリッスンするピアURLのリスト
- デフォルト値:
"http://127.0.0.1:2380"
- クラスタを展開するときは、現在のホストのIPアドレスとして
peer-urls
("http://192.168.100.113:2380"
など)を指定する必要があります。クラスタがDockerで実行されている場合は、DockerのIPアドレスを"http://0.0.0.0:2380"
として指定します。
advertise-peer-urls
- PDノードにアクセスするための他のPDノード(ピア)のアドバタイズURLのリスト
- デフォルト:
"${peer-urls}"
- DockerまたはNATネットワーク環境などの一部の状況で、他のノード(ピア)がこのPDノードによってリッスンされるデフォルトのピアURLを介してPDノードにアクセスできない場合は、アドバタイズするピアURLを手動で設定する必要があります。
- たとえば、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"
を介してこのサービスを見つけることができます。
initial-cluster
ブートストラップの初期クラスタ構成
デフォルト値:
"{name}=http://{advertise-peer-url}"
たとえば、
name
が「pd」でadvertise-peer-urls
が"http://192.168.100.113:2380"
の場合、initial-cluster
は"pd=http://192.168.100.113:2380"
です。3台のPDサーバーを起動する必要がある場合、
initial-cluster
台は次のようになります。pd1=http://192.168.100.113:2380, pd2=http://192.168.100.114:2380, pd3=192.168.100.115:2380
initial-cluster-state
- クラスタの初期状態
- デフォルト値:
"new"
initial-cluster-token
- ブートストラップフェーズ中にさまざまなクラスターを識別します
- デフォルト値:
"pd-cluster"
- 同じ構成のノードを持つ複数のクラスターが連続してデプロイされる場合は、異なるクラスタノードを分離するために異なるトークンを指定する必要があります。
lease
- PDリーダーキーリースのタイムアウト。タイムアウト後、システムはリーダーを再選出します。
- デフォルト値:
3
- 単位:秒
quota-backend-bytes
- メタ情報データベースのストレージサイズ(デフォルトでは8GiB)
- デフォルト値:
8589934592
auto-compaction-mod
- メタ情報データベースの自動圧縮モード
- 使用可能なオプション:
periodic
(サイクル別)およびrevision
(バージョン番号別)。 - デフォルト値:
periodic
auto-compaction-retention
auto-compaction-retention
がperiodic
の場合のメタ情報データベースの自動圧縮の時間間隔。圧縮モードがrevision
に設定されている場合、このパラメーターは自動圧縮のバージョン番号を示します。- デフォルト値:1時間
force-new-cluster
- PDを強制的に新しいクラスタとして開始し、 Raftメンバーの数を
1
に変更するかどうかを決定します - デフォルト値:
false
安全
セキュリティに関連するConfiguration / コンフィグレーション項目
cacert-path
- CAファイルのパス
- デフォルト値: ""
cert-path
- X509証明書を含むPrivacyEnhancedMail(PEM)ファイルのパス
- デフォルト値: ""
key-path
- X509キーを含むPEMファイルのパス
- デフォルト値: ""
redact-info-log
新機能
- PDログでログ編集を有効にするかどうかを制御します
- 構成値を
true
に設定すると、PDログのユーザーデータが編集されます。 - デフォルト値:
false
log
ログに関連するConfiguration / コンフィグレーション項目
level
- 出力ログのレベルを指定します
"error"
"fatal"
"warn"
"debug"
"info"
- デフォルト値:
"info"
format
- ログ形式
- オプション
"json"
:"text"
- デフォルト値:
"text"
disable-timestamp
- ログに自動生成されたタイムスタンプを無効にするかどうか
- デフォルト値:
false
log.file
ログファイルに関連するConfiguration / コンフィグレーション項目
max-size
- 単一のログファイルの最大サイズ。この値を超えると、システムはログをいくつかのファイルに自動的に分割します。
- デフォルト値:
300
- 単位:MiB
- 最小値:
1
max-days
- ログが保持される最大日数
- デフォルト値:
0
max-backups
- 保持するログファイルの最大数
- デフォルト値:
0
metric
モニタリングに関連するConfiguration / コンフィグレーション項目
interval
- モニタリングメトリックデータがPrometheusにプッシュされる間隔
- デフォルト値:
15s
schedule
スケジューリングに関連するConfiguration / コンフィグレーション項目
max-merge-region-size
Region Merge
のサイズ制限を制御します。リージョンサイズが指定された値より大きい場合、PDはリージョンを隣接するリージョンとマージしません。- デフォルト値:
20
- 単位:MiB
max-merge-region-keys
Region Merge
キーの上限を指定します。リージョンキーが指定された値より大きい場合、PDはリージョンを隣接するリージョンとマージしません。- デフォルト値:
200000
patrol-region-interval
replicaChecker
がリージョンのヘルス状態をチェックする実行頻度を制御します。この値が小さいほど、replicaChecker
回の実行が速くなります。通常、このパラメータを調整する必要はありません。- デフォルト値:
10ms
split-merge-interval
- 同じリージョンでの
split
回の操作とmerge
の操作の間の時間間隔を制御します。つまり、新しく分割されたリージョンはしばらくの間マージされません。 - デフォルト値:
1h
max-snapshot-count
- 1つのストアが同時に受信または送信するスナップショットの最大数を制御します。 PDスケジューラーは、通常のトラフィックに使用されるリソースがプリエンプションされるのを防ぐために、この構成に依存しています。
- デフォルト値:
64
max-pending-peer-count
- 1つのストアで保留中のピアの最大数を制御します。 PDスケジューラーは、この構成に依存して、古いログを持つリージョンが一部のノードで生成されるのを防ぎます。
- デフォルト値:
64
max-store-down-time
- 切断されたストアを回復できないとPDが判断するまでのダウンタイム。 PDは、指定された時間が経過してもストアからハートビートを受信できない場合、他のノードにレプリカを追加します。
- デフォルト値:
30m
leader-schedule-limit
- 同時に実行されたリーダースケジューリングタスクの数
- デフォルト値:
4
region-schedule-limit
- 同時に実行されたリージョンスケジューリングタスクの数
- デフォルト値:
2048
hot-region-schedule-limit
- 同時に実行されているホットリージョンスケジューリングタスクを制御します。これは、リージョンのスケジューリングとは無関係です。
- デフォルト値:
4
hot-region-cache-hits-threshold
- ホットリージョンを識別するために必要な分数を設定するために使用されるしきい値。 PDは、リージョンがこの分数を超えてホットスポット状態になった後でのみ、ホットスポットスケジューリングに参加できます。
- デフォルト値:
3
replica-schedule-limit
- 同時に実行されたレプリカスケジューリングタスクの数
- デフォルト値:
64
merge-schedule-limit
- 同時に実行された
Region Merge
のスケジューリングタスクの数。Region Merge
を無効にするには、このパラメーターを0
に設定します。 - デフォルト値:
8
high-space-ratio
- それを下回るとストアの容量が十分になるしきい値の比率。ストアのスペース占有率がこのしきい値よりも小さい場合、PDはスケジューリングを実行するときにストアの残りのスペースを無視し、主にリージョンサイズに基づいて負荷を分散します。この構成は、
region-score-formula-version
がv1
に設定されている場合にのみ有効になります。 - デフォルト値:
0.7
- 最小値:
0
より大きい - 最大値:
1
未満
low-space-ratio
- それを超えると店舗の容量が不足するしきい値比率。ストアのスペース占有率がこのしきい値を超える場合、PDはデータをこのストアに移行することを可能な限り回避します。一方、PDは、対応するストアのディスク容量が不足しないように、主にストアの残りの容量に基づいてスケジューリングを実行します。
- デフォルト値:
0.8
- 最小値:
0
より大きい - 最大値:
1
未満
tolerant-size-ratio
balance
のバッファサイズを制御します- デフォルト値:
0
(バッファサイズを自動的に調整します) - 最小値:
0
enable-cross-table-merge
- クロステーブルリージョンのマージを有効にするかどうかを決定します
- デフォルト値:
true
region-score-formula-version
versionv5.0の新機能
- 地域スコア式のバージョンを制御します
- デフォルト値:
v2
- オプションの値:
v1
およびv2
。 v1と比較して、v2での変更はよりスムーズであり、スペースの再利用によって引き起こされるスケジューリングジッターが改善されています。
ノート:
クラスタをTiDB4.0バージョンから現在のバージョンにアップグレードした場合、アップグレードの前後で一貫したPDの動作を保証するために、新しい数式バージョンはデフォルトで自動的に無効になります。数式のバージョンを変更する場合は、手動で
pd-ctl
の設定を切り替える必要があります。詳しくはPD Controlをご覧ください。
enable-joint-consensus
の新機能
- レプリカのスケジューリングにジョイントコンセンサスを使用するかどうかを制御します。この構成が無効になっている場合、PDは一度に1つのレプリカをスケジュールします。
- デフォルト値:
true
hot-regions-write-interval
の新機能
- PDがホットリージョン情報を保存する時間間隔。
- デフォルト値:
10m
ノート:
ホットリージョンに関する情報は、3分ごとに更新されます。間隔が3分未満に設定されている場合、間隔中の更新は無意味になる可能性があります。
hot-regions-reserved-days
daysv5.4.0の新機能
- ホットリージョン情報を保持する日数を指定します。
- デフォルト値:
7
replication
レプリカに関連するConfiguration / コンフィグレーション項目
max-replicas
- レプリカの数、つまり、リーダーとフォロワーの数の合計。デフォルト値
3
は、1人のリーダーと2人のフォロワーを意味します。この構成がオンラインで変更されると、PDは、レプリカの数がこの構成と一致するように、バックグラウンドでリージョンをスケジュールします。 - デフォルト値:
3
location-labels
- TiKVクラスタのトポロジー情報
- デフォルト値:
[]
- クラスタートポロジ構成
isolation-level
- TiKVクラスタの最小トポロジー分離レベル
- デフォルト値:
""
- クラスタートポロジ構成
strictly-match-label
- TiKVラベルがPDの
location-labels
と一致するかどうかの厳密なチェックを有効にします。 - デフォルト値:
false
enable-placement-rules
placement-rules
を有効にします。- デフォルト値:
false
- 配置ルールを参照してください。
- TiDB4.0の実験的機能。
flow-round-by-digit
ごとのフローTiDB5.1の新機能
- デフォルト値:3
- PDはフロー番号の最下位桁を丸めます。これにより、リージョンフロー情報の変更によって引き起こされる統計の更新が削減されます。この構成項目は、リージョンフロー情報を丸める最下位桁数を指定するために使用されます。たとえば、デフォルト値は
3
であるため、フロー100512
は101000
に丸められます。この構成はtrace-region-flow
を置き換えます。
ノート:
クラスタをTiDB4.0バージョンから現在のバージョンにアップグレードした場合、アップグレード後の
flow-round-by-digit
の動作と、アップグレード前のtrace-region-flow
の動作はデフォルトで一貫しています。これは、アップグレード前にtrace-region-flow
の値がfalseの場合、アップグレード後のflow-round-by-digit
の値は127であることを意味します。アップグレード前のtrace-region-flow
の値がtrue
の場合、アップグレード後のflow-round-by-digit
の値は3
です。
label-property
ラベルに関連するConfiguration / コンフィグレーション項目
key
- リーダーを拒否したストアのラベルキー
- デフォルト値:
""
value
- リーダーを拒否したストアのラベル値
- デフォルト値:
""
dashboard
TiDBダッシュボード内蔵PDに関連するConfiguration / コンフィグレーション項目。
tidb-cacert-path
- ルートCA証明書ファイルのパス。 TLSを使用してTiDBのSQLサービスに接続するときに、このパスを構成できます。
- デフォルト値:
""
tidb-cert-path
- SSL証明書ファイルのパス。 TLSを使用してTiDBのSQLサービスに接続するときに、このパスを構成できます。
- デフォルト値:
""
tidb-key-path
- SSL秘密鍵ファイルのパス。 TLSを使用してTiDBのSQLサービスに接続するときに、このパスを構成できます。
- デフォルト値:
""
public-path-prefix
- TiDBダッシュボードがリバースプロキシの背後でアクセスされる場合、このアイテムはすべてのWebリソースのパブリックURLパスプレフィックスを設定します。
- デフォルト値:
/dashboard
- リバースプロキシの背後ではなくTiDBダッシュボードにアクセスする場合は、この構成アイテムを変更しないでください。そうしないと、アクセスの問題が発生する可能性があります。詳細については、 リバースプロキシの背後でTiDBダッシュボードを使用するを参照してください。
enable-telemetry
- TiDBダッシュボードでテレメトリ収集機能を有効にするかどうかを決定します。
- デフォルト値:
true
- 詳細については、 テレメトリーを参照してください。
replication-mode
すべてのリージョンのレプリケーションモードに関連するConfiguration / コンフィグレーションアイテム。詳細については、 DR自動同期モードを有効にしますを参照してください。