DSE Advanced Replication(DSE拡張レプリケーション)コマンドライン・ツール

DSE Advanced Replication(DSE拡張レプリケーション)コマンドライン・ツールのオプションとコマンド引数。

コマンドライン・ツールには、DSE Advanced Replication(DSE拡張レプリケーション)を構成および使用するためのコマンドとオプションがあります。

DSE Advanced Replication(DSE拡張レプリケーション)コマンド

以下のDSE Advanced Replication(DSE拡張レプリケーション)コマンドを使用できます。

DSE Advanced Replication(DSE拡張レプリケーション)コマンド・オプション

構文
dse  advrep [--v1] [connection_options] [command] [sub_command] [sub_command_options]
dse advrepのコマンドライン・ヘルプを表示するには、以下のコマンドを実行します。
$ dse advrep help
認証情報はいくつかの方法で指定できます。「認証対応クラスターへの接続」を参照してください。
DSE 5.0のAdvanced Replication(拡張レプリケーション)コマンドにアクセスするには、任意指定のフラグ--v1を使用できます(DSE 5.1ではAdvanced Replication(拡張レプリケーション)コマンドは変更されています)。--v1フラグと互換性のあるコマンドについては、DSE 5.0 Advanced Replication(DSE 5.0拡張レプリケーション)のドキュメントを参照してください。--v1フラグの使用例を以下に示します。
dse advrep --v1 edge conf --edge-id "edge1" --edge-id-col-name "edge_id" --hub-ip-addresses "10.200.182.148"

クライアントからDSEへの接続コマンド

DSE Advanced Replication(DSE拡張レプリケーション)のデフォルト・ポートは9042です。接続オプションは以下のように指定します。
dse advrep [connection_options]
接続オプション 説明
--separator field_separator --no-pretty-printを出力に使用している場合のフィールド区切り文字を指定します。デフォルト:コンマ
--no-pretty-print 指定した場合、データはコンマ区切りリストとして出力されます。指定しない場合、データは表形式で出力されます。
-u username DSEユーザー名、またはDSE_USERNAME環境変数を使用できます。
--jmx-user JMXメトリクス・ユーザー
--jmx-port JMXポート(デフォルト:7199)
--jmx-pwd JMXメトリクス・パスワード
-p password DSEパスワード、またはDSE_PASSWORD環境変数を使用できます。
--use-server-config 構成ファイルではなく、サーバーのYAMLファイル(dse.yamlおよびcassandra.yaml)から接続構成を読み取ります。コマンドを実行しているDSEインストールが実行中のノードである場合にのみ使用します。
--cipher-suites ssl_cipher_suites SSLが有効な場合に、DSEに接続するためのSSL暗号化スイートのコンマ区切りリスト。たとえば、--cipher-suites=c1,c2,c3などです。
--host address DSEホストのRPCブロードキャスト・アドレス。デフォルト値はlocalhostです。
--port port DSEネイティブ・プロトコルのRPC接続ポート。
--kerberos-enabled true|false true|false - trueの場合、DSEへの接続でKerberosが有効になります。たとえば、--kerberos-enabled trueなどです。
--keystore-password ssl_keystore_password SSLクライアント認証が有効な場合に、DSEに接続するためのキーストアのパスワード。
--keystore-path ssl_keystore_path SSLクライアント認証が有効な場合に、DSEに接続するためのキーストアのパスを設定します。
--keystore-type ssl_keystore_type SSLクライアント認証が有効な場合に、DSEに接続するためのキーストアのタイプを設定します。JKSはJava keytoolバイナリーによって生成されるキーのタイプですが、ユーザー環境によっては他のタイプである可能性もあります。
--truststore-password ssl_truststore_password SSLが有効な場合に、DSEに接続するためのトラストストアのパスワードを設定します。
--truststore-path ssl_truststore_path SSLが有効な場合に、DSEに接続するためのトラストストアのパスを設定します。
--truststore-type ssl_truststore_type SSLが有効な場合に、DSEに接続するためのトラストストアのタイプを設定します。JKSはJava keytoolバイナリーによって生成されるキーのタイプですが、ユーザー環境によっては他のタイプである可能性もあります。
--sasl-protocol-name dse_service_principal SASLプロトコル名は、DSEサーバーが使用するKerberosサービス・プリンシパルのユーザー名に一致する必要があります。
--ssl-enabled true|false DSEへの接続でSSLが有効かどうかを指定します。
--ssl-protocol ssl_protocol SSLが有効な場合に、DSEに接続するためのSSLプロトコル。
-t ログインに使用できるデリゲーション・トークン。または、DSE_TOKEN環境変数を使用することも可能です。
この接続例では、Kerberosが有効で、レプリケーション・チャネルをリストするよう指定しています。
dse advrep --host ip-10-200-300-138.example.lan --kerberos-enabled=true conf list
サーバーのYAMLファイルを使用するには:
dse advrep --use-server-config conf list
pretty-printを使用せずに指定の区切り文字を使用して出力をリストするには:
dse advrep --no-pretty-print destination list-conf --separator "|"
この出力は以下のようになります。
destination|name|value mydest|addresses|192.168.200.100 mydest|transmission-enabled|true mydest|driver-ssl-cipher-suites|TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_AES_128_CBC_SHA256,TLS_ECDH_ECDSA_WITH_AES_128_CBC_SHA256,TLS_ECDH_RSA_WITH_AES_128_CBC_SHA256,TLS_DHE_RSA_WITH_AES_128_CBC_SHA256,TLS_DHE_DSS_WITH_AES_128_CBC_SHA256,TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_128_CBC_SHA,TLS_ECDH_ECDSA_WITH_AES_128_CBC_SHA,TLS_ECDH_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_DSS_WITH_AES_128_CBC_SHA,TLS_ECDHE_ECDSA_WITH_RC4_128_SHA,TLS_ECDHE_RSA_WITH_RC4_128_SHA,SSL_RSA_WITH_RC4_128_SHA,TLS_ECDH_ECDSA_WITH_RC4_128_SHA,TLS_ECDH_RSA_WITH_RC4_128_SHA,TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,TLS_RSA_WITH_AES_128_GCM_SHA256,TLS_ECDH_ECDSA_WITH_AES_128_GCM_SHA256,TLS_ECDH_RSA_WITH_AES_128_GCM_SHA256,TLS_DHE_RSA_WITH_AES_128_GCM_SHA256,TLS_DHE_DSS_WITH_AES_128_GCM_SHA256,TLS_ECDHE_ECDSA_WITH_3DES_EDE_CBC_SHA,TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA,SSL_RSA_WITH_3DES_EDE_CBC_SHA,TLS_ECDH_ECDSA_WITH_3DES_EDE_CBC_SHA,TLS_ECDH_RSA_WITH_3DES_EDE_CBC_SHA,SSL_DHE_RSA_WITH_3DES_EDE_CBC_SHA,SSL_DHE_DSS_WITH_3DES_EDE_CBC_SHA,SSL_RSA_WITH_RC4_128_MD5,TLS_EMPTY_RENEGOTIATION_INFO_SCSV mydest|driver-ssl-enabled|false mydest|driver-ssl-protocol|TLS mydest|name|mydest mydest|driver-connect-timeout|15000 mydest|driver-max-requests-per-connection|1024 mydest|driver-connections-max|8 mydest|driver-connections|1 mydest|driver-compression|lz4 mydest|driver-consistency-level|ONE mydest|driver-allow-remote-dcs-for-local-cl|false mydest|driver-used-hosts-per-remote-dc|0 mydest|driver-read-timeout|15000

レプリケーション・チャネルのコマンド

構文
$ dse advrep channel command [sub_command] [sub_command_options]
dse advrep channelのコマンドライン・ヘルプを表示するには、以下のコマンドを実行します。
$ dse advrep help channel
コマンドとコマンド引数は以下のように指定します。
$ dse advrep channel sub_command [sub_command_options]
サブコマンド サブコマンド・オプション
create キースペースのレプリケーション・チャネルを作成します。

--source-keyspace keyspace_name(必須)

--destination-table destination_table_name

--source-id-column

--Fifo-order チャネルをFIFOの順でレプリケートする場合に指定します(デフォルト)。

--Lifo-order チャネルをLIFOの順でレプリケートする場合に指定します。

--destination destination(必須)レプリケーションの送信先(デスティネーション)。

--source-table source_table_name(必須)レプリケートするソース・テーブル。

--collection-enabled true | false 作成時にレプリケーション収集のソース・テーブルを有効にするかどうかを指定します。

--priority channel_priority

--transmission-enabled true | false テーブルのデータ・コレクターをデスティネーションにレプリケートするかどうかを指定します。

update キースペースのレプリケーション・チャネルを更新します。

--source-keyspace keyspace_name

--destination-table destination_table_name

--source-id-column

--Fifo-order チャネルをFIFOの順でレプリケートする場合に指定します(デフォルト)。

--Lifo-order チャネルをLIFOの順でレプリケートする場合に指定します。

--destination destination レプリケーションの送信先(デスティネーション)。

--source-table source_table_name レプリケートするソース・テーブル。

--collection-enabled true | false 作成時にレプリケーション収集のソース・テーブルを有効にするかどうかを指定します。

--priority channel_priority

--transmission-enabled true | false テーブルのデータ・コレクターをデスティネーションにレプリケートするかどうかを指定します。

削除 レプリケーション・チャネルを削除します。

--source-keyspace keyspace_name(必須)

--destination destination(必須)レプリケーションの送信先(デスティネーション)。

--source-table source_table_name(必須)レプリケートするソース・テーブル。

--data-center-id data-center-id このチャネルのデータ・センター

pause キースペースのレプリケーション・チャネルを一時停止します。

--source-keyspace keyspace_name

--data-center-ids data-center-id(s) フィルター処理するデータ・センターIDのコンマ区切りリスト

--destinations destination(s) デスティネーションのコンマ区切りリスト

--transmission 指定した場合、ソース・テーブルのデータは指定したデスティネーションに送信されません。

--source-table source_table_name

--Collection 指定した場合、ソース・テーブルのデータは収集されません。

resume 一時停止したチャネルのレプリケーションを再開します。

--source-keyspace keyspace_name

--data-center-ids data-center-id(s) フィルター処理するデータ・センターIDのコンマ区切りリスト

--destinations destination(s) デスティネーションのコンマ区切りリスト

--transmission 指定した場合、ソース・テーブルのデータは指定したデスティネーションに送信されません。

--source-table source_table_name

--Collection 指定した場合、ソース・テーブルのデータは収集されません。

status レプリケーション・チャネルのステータスを確認します。

--keyspace keyspace_name

--destination destination レプリケーションの送信先(デスティネーション)。

--table source_table_name レプリケートするソース・テーブル。

--data-center-id data-center-id このチャネルのデータ・センター

truncate チャネルのTRUNCATEを行います。そのチャネルのレプリケーション・ログに現在含まれているメッセージはすべてレプリケートされません。

--source-keyspace keyspace_name

--data-center-ids data-center-id(s) フィルター処理するデータ・センターIDのコンマ区切りリスト

--destinations destination(s) デスティネーションのコンマ区切りリスト

--source-table source_table_name

デスティネーション・コマンド

構文
$ dse advrep destination [sub_command] [sub_command_options]
dse advrep destinationのコマンドライン・ヘルプを表示するには、以下のコマンドを実行します。
$ dse advrep help destination
エッジ構成とレプリケーションのコマンドとコマンド引数は以下のように指定します。
$ dse advrep destination sub_command [sub_command_options]
コマンド コマンド引数
create キースペース・ソース・テーブルからデスティネーション・クラスターへのチャネルを作成します。

--name(必須)

--addresses(必須)

--transmission-enabled true|false

--driver-user password

--driver-pwd username

--driver-connect-timeout ms_driver_waits_to_connect_server

--driver-read-timeout ms_driver_waits_to_read_server_responses

--driver-compression lz4_or_snappy_algorithm

--driver-connections num_connections_to_create

--driver-connections-max max_num_connections_to_create

--driver-max-requests-per-connections max_num_requests_per_connection

--driver-local-dc dc_name

--driver-consistency-level consistency [ANY|ONE|TWO|THREE|QUORUM|ALL|LOCAL_QUORUM|EACH_QUORUM|SERIAL|LOCAL_SERIAL|LOCAL_ONE]

--driver-used-hosts-per-remote-dc number_of_hosts

--driver-allow-remote-dcs-for-local-cl true|false

--driver-ssl-enabled true|false

--driver-ssl-keystore-path ssl_keystore_path

--driver_ssl_keystore_password ssl_keystore_password

--driver_ssl_keystore_type ssl_keystore_type

--driver_ssl_truststore_path ssl_truststore_path

--driver-ssl-truststore-password ssl_truststore_password

--driver-ssl-truststore-type ssl_keystore_type

--driver-ssl-protocol ssl_protocol

--driver-ssl-cipher-suites ssl_cipher_suites

update キースペース・ソース・テーブルからデスティネーション・クラスターへのチャネルを更新します。

--name(必須)

--addresses

--transmission-enabled true|false

--driver-user password

--driver-pwd username

--driver-connect-timeout ms_driver_waits_to_connect_server

--driver-read-timeout ms_driver_waits_to_read_server_responses

--driver-compression lz4_or_snappy_algorithm

--driver-connections num_connections_to_create

--driver-connections-max max_num_connections_to_create

--driver-max-requests-per-connections max_num_requests_per_connection

--driver-local-dc dc_name

--driver-consistency-level consistency [ANY|ONE|TWO|THREE|QUORUM|ALL|LOCAL_QUORUM|EACH_QUORUM|SERIAL|LOCAL_SERIAL|LOCAL_ONE]

--driver-used-hosts-per-remote-dc number_of_hosts

--driver-allow-remote-dcs-for-local-cl true|false

--driver-ssl-enabled true|false

--driver-ssl-keystore-path ssl_keystore_path

--driver_ssl_keystore_password ssl_keystore_password

--driver_ssl_keystore_type ssl_keystore_type

--driver_ssl_truststore_path ssl_truststore_path

--driver-ssl-truststore-password ssl_truststore_password

--driver-ssl-truststore-type ssl_keystore_type

--driver-ssl-protocol ssl_protocol

--driver-ssl-cipher-suites ssl_cipher_suites

削除 デスティネーションを削除します。

--name (必須)

list-conf デスティネーション構成をリストします。

--name (必須)

remove-conf キースペース・ソース・テーブルからデスティネーション・クラスターへのチャネルの構成を削除します。

--name(必須)

--transmission-enabled true|false

--driver-user password

--driver-pwd username

--driver-connect-timeout ms_driver_waits_to_connect_server

--driver-read-timeout ms_driver_waits_to_read_server_responses

--driver-compression lz4_or_snappy_algorithm

--driver-connections num_connections_to_create

--driver-connections-max max_num_connections_to_create

--driver-local-dc dc_name

--driver-consistency-level consistency [ANY|ONE|TWO|THREE|QUORUM|ALL|LOCAL_QUORUM|EACH_QUORUM|SERIAL|LOCAL_SERIAL|LOCAL_ONE]

--driver-used-hosts-per-remote-dc number_of_hosts

--driver-allow-remote-dcs-for-local-cl true|false

--driver-ssl-enabled true|false

--driver-ssl-keystore-path ssl_keystore_path

--driver_ssl_keystore_password ssl_keystore_password

--driver_ssl_keystore_type ssl_keystore_type

--driver_ssl_truststore_path ssl_truststore_path

--driver-ssl-truststore-password ssl_truststore_password

--driver-ssl-truststore-type ssl_keystore_type

--driver-ssl-protocol ssl_protocol

--driver-ssl-cipher-suites ssl_cipher_suites

list デスティネーションをリストします(オプションなし)

構成コマンド

構文
$ dse advrep conf [sub_command] [sub_command_options]
dse advrep confのコマンドライン・ヘルプを表示するには、以下のコマンドを実行します。
$ dse advrep help conf
構成のコマンドとコマンド引数は以下のように指定します。
$ dse advrep conf sub_command [sub_command_options]
コマンド コマンド引数
update 構成を更新します。

--collection-max-open-files value 保持するオプション・ファイルの数

--audit-log-file audit_log_name 監査ログ・ファイル名

--audit-log-compression none | gzip 監査ログ圧縮を有効にします。

--audit-log-enabled true | false 監査ロギングを有効にします。

--audit-log-max-life-span-mins minutes 監査ログを破棄するまでの最大有効期間(分)。

--audit-log-rotate-mins minutes 監査ログがファイルをローテートするまでの時間(分)。

--Permits すべてのデスティネーションに並列処理でレプリケートできる最大メッセージ数(デフォルト:30,000)。

--Invalid-message-log レプリケートできなかったメッセージのエラー情報はsystem_log、channel_log(デフォルト)に保存されるか、またはnoneに設定すると保存されません。

--collection-time-slice-count count インジェスターで同時に開かれているファイルの数。デフォルト:5

--Collection-time-slice-width 各データ・ブロックが取り込まれる時間(秒)。時間幅を狭くすると取り込まれるファイル数が多くなります。時間幅を広くするとより大きなファイルが取り込まれますが、CRCの不一致により再送されるデータも増えます。デフォルト:60秒

--collection-expire-after-write

remove 構成を削除します。

--collection-max-open-files value 保持するオプション・ファイルの数

--audit-log-file audit_log_name 監査ログ・ファイル名

--Audit-log-compression 監査ログ圧縮を無効にします。

--audit-log-enabled true | false 監査ロギングを有効にします。

--audit-log-max-life-span-mins minutes 監査ログを破棄するまでの最大有効期間(分)。

--audit-log-rotate-mins minutes 監査ログがファイルをローテートするまでの時間(分)。

--Permits すべてのデスティネーションに並列処理でレプリケートできる最大メッセージ数(デフォルト:30,000)。

--Invalid-message-log レプリケートできなかったメッセージのエラー情報はsystem_log、channel_log(デフォルト)に保存されるか、またはnoneに設定すると保存されません。

--collection-time-slice-count count インジェスターで同時に開かれているファイルの数。

--Collection-time-slice-width 各データ・ブロックが取り込まれる時間(秒)。時間幅を狭くすると取り込まれるファイル数が多くなります。時間幅を広くするとより大きなファイルが取り込まれますが、CRCの不一致により再送されるデータも増えます。

--collection-expire-after-write

list 構成をリストします(オプションなし)

メトリクス

JMXアクセスが構成されている場合、コマンドラインからメトリクスを表示します。
$ dse advrep metrics
dse advrep metricsのコマンドライン・ヘルプを表示するには、以下のコマンドを実行します。
$ dse advrep help metrics
コマンド・オプションは以下のように指定します。
$ dse advrep metrics list [sub_command_options]
コマンド コマンド・オプション
list

[ --metric-group filter_by_group ]

[ --metric-type filter_by_type ]

レプリケーション・ログのコマンド

コマンドラインからレプリケーション・ログ情報を表示します。
$ dse advrep replog
dse advrep replogのコマンドライン・ヘルプを表示するには、以下のコマンドを実行します。
$ dse advrep help replog
コマンド・オプションは以下のように指定します。
$ dse advrep replog sub_command [sub_command_options]
コマンド コマンド・オプション
count

--data-center-id data-center-id

--destination destination(必須)レプリケーションの送信先(デスティネーション)。

--source-keyspace keyspace_name(必須)

--source-table table_name(必須)

analyze-audit-log

--file filename 監査ログ・ファイル。

レプリケーション・コマンドの例

dse advrep channelコマンドライン・ツールの例とその結果:
デスティネーションを作成する
$ dse advrep --verbose destination create --name mydest --addresses 10.200.182.148 --transmission-enabled true Destination mydest created
レプリケーション・ソース・チャネルを作成する
$ dse advrep channel create --source-keyspace foo --source-table bar --source-id source1 --source-id-column source_id --destination mydest --destination-keyspace foo --destination-table bar --collection-enabled true --priority 1 Created channel dc=Cassandra keyspace=foo table=bar to mydest
レプリケーション・ソース・チャネルのステータスを表示する
$ dse advrep channel status ------------------------------------------------------------------------------------------------------------------------------------------------------ |dc |keyspace|table |collecting|transmitting|replication order|priority|dest ks|dest table |src id |src id col|dest |dest enabled| ------------------------------------------------------------------------------------------------------------------------------------------------------ |Cassandra|foo |bar |true |false |FIFO |1 |foo |bar |source1|source_id |mydest|true | ------------------------------------------------------------------------------------------------------------------------------------------------------
デスティネーション・チャネルを削除する
$ dse advrep delete --name mydest
レプリケーション・ソース・チャネルを削除する
$ dse advrep delete --source-keyspace foo --source-table bar --destination mydest
ソースからデスティネーションへの収集を再開する
$ dse advrep channel resume --source-keyspace foo --source-table bar --destinations mydest --collection Channel dc=Cassandra keyspace=foo table=bar collection to mydest was resumed
ソースからデスティネーションへの送信を再開する
$ dse advrep channel resume --source-keyspace foo --source-table bar --destinations mydest --transmission Channel dc=Cassandra keyspace=foo table=bar transmission to mydest was resumed
ソースからデスティネーションへの送信を一時停止する
レプリケーションはエッジ・クラスター全体で停止されます。エッジにあるノードのIPアドレスを指定します。
$ dse advrep channel pause --source-keyspace foo --source-table bar --destinations mydest --transmission Channel dc=Cassandra keyspace=foo table=bar transmission to mydest was paused
レプリケーション・ログに保持されているレコード数を確認する
$ dse advrep replog count --destination mydest --source-keyspace foo --source-table bar 2

メトリクス・コマンドの例

dse advrep metricsコマンドライン・ツールの例とその結果:
すべてのメトリクスを表示する
$ dse advrep --host localhost --port 7199 metrics list ----------------------------------------------- |Group |Type |Count| ----------------------------------------------- |ReplicationLog|CommitLogsToConsume |1 | ----------------------------------------------- |ReplicationLog|MessageAddErrors |0 | ----------------------------------------------- |Tables |MessagesInReplicationLog|0 | ----------------------------------------------- |ReplicationLog|CommitLogsDeleted |2 | ----------------------------------------------- ----------------------------------------------------------------------------------------------------------------------------------------------------- |Group |Type |Count|RateUnit |MeanRate |FifteenMinuteRate |OneMinuteRate |FiveMinuteRate | ----------------------------------------------------------------------------------------------------------------------------------------------------- |ReplicationLog|MessagesAdded |4 |events/second|2.640169784463287E-4 |3.5260944599250134E-10|1.5526670553919196E-107|7.437289948631685E-24| ----------------------------------------------------------------------------------------------------------------------------------------------------- |ReplicationLog|MessagesDeleted |0 |events/second|0.0 |0.0 |0.0 |0.0 | ----------------------------------------------------------------------------------------------------------------------------------------------------- |ReplicationLog|MessagesAcknowledged |4 |events/second|2.6401646866982826E-4|3.802761115744516E-10 |4.967788987385306E-107 |9.354595245515022E-24| ----------------------------------------------------------------------------------------------------------------------------------------------------- |ReplicationLog|CommitLogMessagesRead|3551 |events/second|0.23438054858983395 |0.28481365017306315 |0.2547432175113809 |0.30189617888098824 | -----------------------------------------------------------------------------------------------------------------------------------------------------
グループごとにフィルター処理する
$ dse advrep --host localhost --port 7199 metrics list --metric-group Tables --------------------------------------- |Group |Type |Count| --------------------------------------- |Tables|MessagesInReplicationLog|0 | ---------------------------------------
グループとタイプごとにフィルター処理する
$ dse advrep --host localhost --port 7199 metrics list --metric-type MessagesAdded -------------------------------------------------------------------------------------------------------------------------------------------- |Group |Type |Count|RateUnit |MeanRate |FifteenMinuteRate |OneMinuteRate |FiveMinuteRate | -------------------------------------------------------------------------------------------------------------------------------------------- |ReplicationLog|MessagesAdded|4 |events/second|2.6221009715537605E-4|3.1552879575422323E-10|2.932609260931711E-108|5.329051114010331E-24| --------------------------------------------------------------------------------------------------------------------------------------------