cassandraユーティリティ

Cassandra起動時のパラメーターは、コマンドライン(Tarballインストール)から実行するか、cassandra-env.shファイル(パッケージ・インストールまたはTarballインストール)で指定できます

Cassandra起動時のパラメーターは、コマンドライン(Tarballインストールのみ)から実行するか、cassandra-env.shファイル(パッケージ・インストールまたはTarballインストール)で指定できます。

注: また、最大/最小ヒープ・サイズなど、その他のオプションを環境で設定する代わりに、cassandra-env.shファイルを使用してJava仮想マシン渡すこともできます。
cassandra.yamlファイルの場所は、インストールのタイプによって異なります。
パッケージ・インストール /etc/cassandra/cassandra.yaml
tarボール・インストール install_location/resources/cassandra/conf/cassandra.yaml
Windowsインストール C:\Program Files\DataStax Community\apache-cassandra\conf\cassandra.yaml

使用法 

以下をcassandra-env.shファイルに追加します。
JVM_OPTS="$JVM_OPTS -D[PARAMETER]"
cassandra-env.shファイルの場所は、インストールのタイプによって異なります。
パッケージ・インストール /etc/cassandra/cassandra-env.sh
tarボール・インストール install_location/conf/cassandra-env.sh
cassandra-env.ps1の場所:
Windowsインストール C:\Program Files\DataStax Community\apache-cassandra\conf\cassandra-env.ps1
tarボール・インストールの場合は、コマンドラインからこのツールを実行できます。
cassandra [OPTIONS]
例:
  • cassandra-env.sh:JVM_OPTS="$JVM_OPTS -Dcassandra.load_ring_state=false"
  • コマンドライン:bin/cassandra -Dcassandra.load_ring_state=false

サンプル・セクションには、多くの例が含まれています。

コマンドラインのみのオプション 

オプション 説明
-f Cassandraプロセスをフォアグラウンドで開始します。デフォルトでは、バックグラウンド・プロセスとして開始されます。
-h ヘルプ。
-p filename 指定のファイルにプロセスIDを記録します。CassandraのPIDを強制終了することでCassandraを停止するのに役立ちます。
-v バージョンを出力し、終了します。

起動時のパラメーター 

-Dオプションは、コマンドラインとcassandra-env.shファイルの両方で起動時のパラメーターを指定するオプションです。

cassandra.auto_bootstrap=false
クラスターの最初のセットアップでauto_bootstrapをfalseに設定するのが容易になります。次回、クラスターを起動するときに、各ノード上のcassandra.yamlファイルをtrueに戻す必要はありません。
cassandra.available_processors=プロセッサー数
複数インスタンスのデプロイでは、複数のCassandraの各インスタンスはすベてのCPUプロセッサーを利用できるものと見なします。この設定により、より少ない数のプロセッサーを指定することが可能です。
cassandra.boot_without_jna=true
JNAの初期化が失敗すると、Cassandraは起動できません。JNAなしでCassandraを起動するには、このコマンドを使用します。
cassandra.config=ディレクトリー
cassandra.yamlファイルのディレクトリーの場所。デフォルトの場所は、インストールのタイプにより異なります。
cassandra.initial_token=トークン
仮想ノード(vnodes)が使用されていないときに使用してください。ノードが初めて起動するときのノードの初期パーティショナー・トークンを設定します(デフォルト:無効)。
注: Vnodesは自動的にトークンを選択するため、強く推奨します。
cassandra.join_ring=true|false
falseに設定すると、ノード上でCassandraが起動しますが、そのノードはクラスターに参加しません(デフォルト:true)。nodetool joinとJMX呼び出しを使用して後からリングに参加させることができます。
cassandra.load_ring_state=true|false
falseに設定すると、再起動時のノードのすべてのゴシップ状態が消去されます(デフォルト:true)。
cassandra.metricsReporterConfigFile=ファイル
プラグ可能なメトリック・レポーターを有効にします。「Pluggable metrics reporting in Cassandra 2.0.2」を参照してください。
cassandra.native_transport_port=ポート
CQLネイティブ・トランスポートがクライアントをリッスンするポートを設定します(デフォルト:9042)。
cassandra.partitioner=パーティショナー
パーティショナーを設定します(デフォルト:org.apache.cassandra.dht.Murmur3Partitioner)。
cassandra.replace_address=デッド・ノードのlisten_addressまたはbroadcast_address
停止したノードを置き換えるには、新しいノードが引き継ぐlisten_addressまたはbroadcast_addressを指定して、代わりの新しいノードを再起動します。新しいノードのデータ・ディレクトリーにデータが含まれていてはなりません。つまり、ブートストラップ前と同じ状態になっている必要があります。
注: broadcast_addressのデフォルトは、Ec2MultiRegionSnitchを使用している場合以外、listen_addressになります。
cassandra.replayList=テーブル
アーカイブされているコミット・ログから特定のテーブルを復元します。
cassandra.ring_delay_ms=ミリ秒数
リングに参加する前にノードが他のノードからの応答を待つ時間を決めます(デフォルト:1000ms)。
cassandra.rpc_port=ポート
クライアント接続に使用するThrift RPCサービスのポートを設定します(デフォルト:9160)。
cassandra.ssl_storage_port=ポート
暗号化通信用のSSLポートを設定します(デフォルト:7001)。
cassandra.start_native_transport=true|false
ネイティブ・トランスポート・サーバーを有効または無効にします。cassandra.yamlファイル内のstart_native_transportを参照してください(デフォルト:true)。
cassandra.start_rpc=true/false
Thrift RPCサーバーを有効または無効にします(デフォルト:true)。
cassandra.storage_port=ポート
ノード間通信用のポートを設定します(デフォルト:7000)。
cassandra.triggers_dir=ディレクトリー
トリガーJARのデフォルトの場所を設定します。
triggersディレクトリーの場所は、インストールのタイプによって異なります。
パッケージ・インストール /var/lib/cassandra
tarボール・インストール install_location/conf
Windowsインストール C:\Program Files\DataStax Community\apache-cassandra\conf
cassandra.write_survey=true
新しいコンパクションおよび圧縮のストラテジをテストするときに使用します。実稼働環境のワークロードに影響を及ぼすことなく、異なるストラテジを試し、書き込みパフォーマンスの相違をベンチマークできます。「コンパクションと圧縮のテスト」を参照してください。
consistent.rangemovement=true
trueにすると、ブートストラップの動作が効率よくなります。

ノードの起動時にゴシップ状態を消去します。
  • コマンドライン:bin/cassandra -Dcassandra.load_ring_state=false
  • cassandra-env.sh:JVM_OPTS="$JVM_OPTS -Dcassandra.load_ring_state=false"
ノード上でCassandraを起動し、クラスターには参加させません。
  • コマンドライン:bin/cassandra -Dcassandra.join_ring=false
  • cassandra-env.sh:JVM_OPTS="$JVM_OPTS -Dcassandra.join_ring=false"
デッド・ノードを置き換えます。
  • コマンドライン:bin/cassandra -Dcassandra.replace_address=10.91.176.160
  • cassandra-env.sh:JVM_OPTS="$JVM_OPTS -Dcassandra.replace_address=10.91.176.160"