TiCDCをデプロイ
このドキュメントでは、TiCDCクラスタを展開する方法と、それを展開および実行するためのハードウェアとソフトウェアの推奨事項について説明します。 TiCDCを新しいTiDBクラスタと一緒にデプロイするか、TiCDCコンポーネントを既存のTiDBクラスタに追加することができます。一般に、TiUPを使用してTiCDCを展開することをお勧めします。さらに、必要に応じてバイナリを使用してデプロイすることもできます。
ソフトウェアとハードウェアの推奨事項
実稼働環境では、TiCDCのソフトウェアとハードウェアの推奨事項は次のとおりです。
| Linux OS | バージョン |
|---|---|
| Red Hat Enterprise Linux | 7.3以降のバージョン |
| CentOS | 7.3以降のバージョン |
| CPU | メモリー | ディスクタイプ | 通信網 | TiCDCクラスタインスタンスの数(実稼働環境の最小要件) |
|---|---|---|---|---|
| 16コア+ | 64 GB + | SSD | 10ギガビットネットワークカード(2枚推奨) | 2 |
詳細については、 ソフトウェアとハードウェアの推奨事項を参照してください。
TiUPを使用してTiCDCを含む新しいTiDBクラスタをデプロイします
TiUPを使用して新しいTiDBクラスタをデプロイする場合、同時にTiCDCをデプロイすることもできます。 TiUPがTiDBクラスタを開始するために使用する初期化構成ファイルにcdc_serversのセクションを追加するだけで済みます。詳細な操作については、 初期化構成ファイルを編集しますを参照してください。構成可能なフィールドの詳細については、 cdc_serversを使用してcdc_serversを構成しますを参照してください。
TiUPを使用して既存のTiDBクラスタにTiCDCを追加します
TiUPを使用して、TiCDCコンポーネントを既存のTiDBクラスタに追加することもできます。次の手順を実行します。
現在のTiDBバージョンがTiCDCをサポートしていることを確認してください。それ以外の場合は、TiDBクラスタを
v4.0.0-rc.1以降のバージョンにアップグレードする必要があります。 v4.0.6以降、TiCDCは一般提供(GA)の機能になりました。 v4.0.6以降のバージョンを使用することをお勧めします。TiCDCを展開するには、 TiCDCクラスタをスケールアウトするを参照してください。
バイナリを使用して既存のTiDBクラスタにTiCDCを追加します(非推奨)
PDクラスタにサービスを提供できるPDノード(クライアントURLは10.0.10.25:2379 )があるとします。 3つのTiCDCノードを展開する場合は、次のコマンドを実行してTiCDCクラスタを起動します。同じPDアドレスを指定するだけで、新しく開始されたノードが自動的にTiCDCクラスタに参加します。
cdc server --pd=http://10.0.10.25:2379 --log-file=ticdc_1.log --addr=0.0.0.0:8301 --advertise-addr=127.0.0.1:8301
cdc server --pd=http://10.0.10.25:2379 --log-file=ticdc_2.log --addr=0.0.0.0:8302 --advertise-addr=127.0.0.1:8302
cdc server --pd=http://10.0.10.25:2379 --log-file=ticdc_3.log --addr=0.0.0.0:8303 --advertise-addr=127.0.0.1:8303
TiCDCcdc cdc serverのコマンドラインパラメーターの説明
以下は、 cdc serverコマンドで使用可能なオプションの説明です。
addr:TiCDCのリスニングアドレス、HTTP APIアドレス、およびTiCDCサービスのPrometheusアドレス。デフォルト値は127.0.0.1:8300です。advertise-addr:クライアントがTiCDCにアクセスするためにアドバタイズされたアドレス。指定しない場合、値はaddrの値と同じになります。pd:PDエンドポイントのコンマ区切りのリスト。config:TiCDCが使用する構成ファイルのアドレス(オプション)。このオプションは、TiCDCv5.0.0以降でサポートされています。このオプションは、TiUPv1.4.0以降のTiCDC展開で使用できます。data-dir:ファイルを保存するためにディスクを使用する必要がある場合にTiCDCが使用するディレクトリを指定します。 Unified Sorterは、このディレクトリを使用して一時ファイルを保存します。このディレクトリの空きディスク容量が500GiB以上であることを確認することをお勧めします。詳細については、 ユニファイドソーターを参照してください。 TiUPを使用している場合は、cdc_serversセクションでdata_dirを構成するか、globalでデフォルトのdata_dirパスを直接使用できます。gc-ttl:TiCDCによって設定されたPDのサービスレベルGC safepointのTTL(Time To Live)、およびレプリケーションタスクが一時停止できる期間(秒単位)。デフォルト値は86400で、これは24時間を意味します。注:TiCDCレプリケーションタスクの一時停止は、TiCDC GCセーフポイントの進行に影響します。つまり、 TiCDCGCセーフポイントの完全な動作で詳しく説明されているように、アップストリームTiDBGCの進行に影響します。log-file:TiCDCプロセスの実行中にログが出力されるパス。このパラメーターが指定されていない場合、ログは標準出力(stdout)に書き込まれます。log-level:TiCDCプロセス実行時のログレベル。デフォルト値は"info"です。ca:TLS接続用のCA証明書ファイルのパスをPEM形式で指定します(オプション)。cert:TLS接続用の証明書ファイルのパスをPEM形式で指定します(オプション)。cert-allowed-cn:TLS接続用のPEM形式の共通名のパスを指定します(オプション)。key:TLS接続用の秘密鍵ファイルのパスをPEM形式で指定します(オプション)。tz:TiCDCサービスによって使用されるタイムゾーン。 TiCDCは、TIMESTAMPなどの時間データ型を内部で変換するとき、またはデータをダウンストリームに複製するときに、このタイムゾーンを使用します。デフォルトは、プロセスが実行されるローカルタイムゾーンです。一度にtime-zone(sink-uri)とtzを指定すると、内部TiCDCプロセスはtzで指定されたタイムゾーンを使用し、シンクはデータをダウンストリームに複製するためにtime-zoneで指定されたタイムゾーンを使用します。