TiCDC サーバー構成
このドキュメントでは、TiCDC で使用される CLI および構成ファイルのパラメータについて説明します。
cdc server CLIパラメータ
以下は、 cdc serverコマンドで使用できるオプションの説明です。
addr: TiCDCのリスニングアドレス、HTTP APIアドレス、およびTiCDCサービスのPrometheusアドレス。デフォルト値は127.0.0.1:8300です。advertise-addr: クライアントがTiCDCにアクセスするために使用するアドバタイズされたアドレス。指定されていない場合、値はaddrと同じになります。pd: PD エンドポイントのコンマ区切りリスト。config: TiCDCが使用する設定ファイルのアドレス(オプション)。このオプションはTiCDC v5.0.0以降でサポートされています。このオプションはTiUP v1.4.0以降のTiCDCデプロイメントで使用できます。詳細な設定については、 TiCDC Changefeedフィード構成参照してください。data-dir: TiCDC がディスクを使用してファイルを保存する必要がある場合に使用するディレクトリを指定します。TiCDC が使用するソートエンジンと REDO ログは、このディレクトリに一時ファイルを保存します。このディレクトリの空きディスク容量は 500 GiB 以上確保することをお勧めします。TiUPを使用している場合は、セクションcdc_serversでdata_dir設定するか、globalでデフォルトのパスdata_dir直接使用できます。gc-ttl: TiCDC によって設定される PD のサービスレベルGC safepointの TTL (Time To Live) と、レプリケーションタスクが一時停止できる期間(秒単位)。デフォルト値は86400で、これは 24 時間を意味します。注: TiCDC レプリケーションタスクの一時停止は、TiCDC GC セーフポイントの進行に影響します。つまり、 TiCDC GCセーフポイントの完全な動作で詳述されているように、上流の TiDB GC の進行にも影響します。log-file: TiCDCプロセス実行時にログが出力されるパス。このパラメータが指定されていない場合、ログは標準出力(stdout)に書き込まれます。log-level: TiCDCプロセス実行時のログレベル。デフォルト値は"info"です。ca: TLS 接続用の PEM 形式の CA 証明書ファイルのパスを指定します (オプション)。cert: TLS 接続用の PEM 形式の証明書ファイルのパスを指定します (オプション)。cert-allowed-cn: TLS 接続の PEM 形式の共通名のパスを指定します (オプション)。key: TLS 接続用の PEM 形式の秘密鍵ファイルのパスを指定します (オプション)。tz: TiCDCサービスが使用するタイムゾーン。TiCDCは、TIMESTAMPなどの時間データ型を内部的に変換する場合、またはデータをダウンストリームに複製する場合にこのタイムゾーンを使用します。デフォルトは、プロセスが実行されるローカルタイムゾーンです。4(sink-uri)とtztime-zone指定すると、TiCDC内部プロセスはtzで指定されたタイムゾーンを使用し、シンクはtime-zoneで指定されたタイムゾーンを使用してダウンストリームにデータを複製します。14で指定されたタイムゾーンがtz(sink-uri)で指定されたタイムゾーンと同じであることtime-zone確認してください。cluster-id: (オプション) TiCDC クラスターの ID。デフォルト値はdefaultです。cluster-idTiCDC クラスターの一意の識別子です。同じcluster-idを持つ TiCDC ノードは同じクラスターに属します。cluster-idの長さは最大 128 文字です。cluster-id^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$のパターンに従う必要があり、owner、capture、task、changefeed、job、metaのいずれかにすることはできません。
cdc server構成ファイルのパラメータ
以下は、コマンドcdc serverのconfigオプションで指定される設定ファイルについて説明します。デフォルトの設定ファイルはpkg/cmd/util/ticdc.tomlにあります。
newarch v8.5.4-release.1 の新機能
- TiCDCの新しいアーキテクチャ有効にするかどうかを制御します。
- デフォルト値:
false、 TiCDC クラシックアーキテクチャが使用されることを示します。 trueに設定すると、TiCDC の新しいアーキテクチャが有効になります。
addr
- 例:
"127.0.0.1:8300"
advertise-addr
- 例:
""
log-file
- 例:
""
log-level
- 例:
"info"
data-dir
- 例:
""
gc-ttl
- 例:
86400(24時間)
tz
- 例:
"System"
cluster-id
- 例:
"default"
gc-tuner-memory-threshold
- GOGCチューニングの最大メモリしきい値を指定します。しきい値を小さくするとGCの頻度が増加します。しきい値を大きくするとGCの頻度は減少しますが、TiCDCプロセスで消費されるメモリリソースが増加します。メモリ使用量がこのしきい値を超えると、GOGC Tunerは動作を停止します。
- デフォルト値:
0、GOGCチューナーが無効であることを示します - 単位: バイト
安全
ca-path
- 例:
""
cert-path
- 例:
""
key-path
- 例:
""
mtls
- TLS クライアント認証を有効にするかどうかを制御します。
- デフォルト値:
false
client-user-required
- クライアント認証にユーザー名とパスワードを使用するかどうかを制御します。デフォルト値は false です。
- デフォルト値:
false
client-allowed-user
- クライアント認証に許可されるユーザー名をリストします。このリストにないユーザー名による認証要求は拒否されます。
- デフォルト値:
null
capture-session-ttl
- TiCDCとetcdサービス間のセッション期間を指定します。このパラメータはオプションです。
- デフォルト値:
10 - 単位: 秒
owner-flush-interval
- TiCDCクラスタ内のオーナーモジュールがレプリケーションの進行状況をプッシュしようとする間隔を指定します。このパラメータはオプションで、デフォルト値は
50000000ナノ秒(つまり50ミリ秒)です。 - このパラメータは、数値のみを指定する(たとえば、
40000000に設定すると 40000000 ナノ秒、つまり 40 ミリ秒を表します)、または数値と単位の両方を指定する(たとえば、直接40msに設定する)という 2 つの方法で設定できます。 - デフォルト値:
50000000、つまり50ミリ秒
processor-flush-interval
- TiCDCクラスタ内のプロセッサモジュールがレプリケーションの進行状況をプッシュしようとする間隔を指定します。このパラメータはオプションで、デフォルト値は
50000000ナノ秒(つまり50ミリ秒)です。 - このパラメータの設定方法は
owner-flush-intervalと同様です。 - デフォルト値:
50000000、つまり50ミリ秒
ログ
error-output
- zapログモジュールの内部エラーログの出力場所を指定します。このパラメータはオプションです。
- デフォルト値:
"stderr"
ログファイル
max-size
- 単一のログファイルの最大サイズを指定します。このパラメータはオプションです。
- デフォルト値:
300 - 単位: MiB
max-days
- ログファイルを保持する最大日数を指定します。このパラメータはオプションです。
- デフォルト値:
0、削除しないことを示します
max-backups
- 保持するログファイルの数を指定します。このパラメータはオプションです。
- デフォルト値:
0、すべてのログファイルを保持することを示します
ソーター
cache-size-in-mb
- デフォルトで起動される 8 つの Pebble DB の Sorter モジュール内の共有 Pebbleブロックキャッシュのサイズを指定します。
- デフォルト値:
128 - 単位: MiB
sorter-dir
- ソートファイルを保存するディレクトリを、データディレクトリ(
data-dir)を基準として指定します。このパラメータはオプションです。 - デフォルト値:
"/tmp/sorter"
kvクライアント
worker-concurrent
- 単一のリージョンワーカーで使用できるスレッド数を指定します。このパラメータはオプションです。
- デフォルト値:
8
worker-pool-size
- TiCDCの共有スレッドプール内のスレッド数を指定します。これは主にKVイベントの処理に使用されます。このパラメータはオプションです。
- デフォルト値:
0、デフォルトのプールサイズがCPUコア数の2倍であることを示します。
region-retry-duration
- リージョン接続の再試行期間を指定します。このパラメータはオプションです。
- このパラメータは次の 2 つの方法で設定できます。
- 数字のみを指定します。たとえば、
5000000050000000ナノ秒(50ミリ秒)を表します。 - 数値と単位の両方を指定します(例:
50ms
- 数字のみを指定します。たとえば、
- デフォルト値:
60000000000(1分)