設定は conf/cassandra.yaml で設定します。 debianは/etc/cassandra内、CentOS などはインストールされた先/etc/cassandra/conf 内、他は任意で設置 したconf ディレクトリに存在します。
基本的な設定項目
- クラスター名
- DB データ格納先
- コミットログ格納先
- キャッシュデータ格納先
- seeds
- listen_address
- rpc_address
- ポート番号
全体のクラスター名を設定します。
cluster_name: 'Test Cluster'
data_file_directories: - /var/lib/cassandra/data
commitlog_directory: /var/lib/cassandra/commitlog
saved_caches_directory: /var/lib/cassandra/saved_caches
※上記3つのデータ格納先ディレクトリはそれぞれデフォルトの設定です。cassandra を実行するユーザーで書き込めるディレクトリを指定してください。パスの部分を変えれば変更が可能です。
seeds はノード初回起動時に keyspace などのメタ情報等を seeds に設定されたホストに問い合わせに行き、その後はノードの生き死にの確認をする際に利用されます。リング構築時最初に起動するノードには、そのノードの自アドレスを設定して起動してください。また、そのリングの中で最初に起動するノードでは無い場合、生きているノードのアドレスを指定してください。
seed_provider: - class_name: org.apache.cassandra.locator.SimpleSeedProvider - seeds: "127.0.0.1"
listen_address はリングを構築する上での、自ノードのアドレスです。基本的に自ノードのアドレスを設定します。また NIC が複数存在する場合などは、複数あるアドレスのうち、いずれかを指定してください。
listen_address: localhost
rpc_address はデータをやり取りする際に使用されるアドレスです。基本的に、0.0.0.0(全ての NIC で使用する)を設定します
rpc_address: localhost
rpcで使用するポートが rpc_port、ノード間で使用するのが strage_portです。そのノードで使用できるポート番号をそれぞれ設定してください。
rpc_port: 9160 storage_port: 7000
各ノードのリング内の位置設定
一つのリングにリングの位置として一周 0~2^127 までのレンジがありますいずれかのレンジをノードに指定する事で、そのレンジ位置から次のノードまでのレンジに対応するデータがそのノードに入る事になります。(データがどのレンジ位置になるかはデフォルトの場合 rowkey を hash にした値が使用されます)また、このレンジ位置をノードではトークンと言います。複数のノードでリングを構成する際はこのトークンの値を均等に分けて設定する事により各ノードに入るデータの割合を均等にする事が出来ます。 以下のような5つのノードでリング構成を構築しました。
設定例
192.168.1.10 192.168.1.11 192.168.1.12 192.168.1.13 192.168.1.14
この5つのノードの位置を均等にします。この時、トークンの値を自動的に生成してくれるツールを使うと便利です。今回はそのトークン値生成ツールを使用して設定を行います。
- wget でトークン値生成ツールを取得します。
- 取得したトークン値生成ツールを python で実行し、トークンの数値を取得します
- nodetool の move コマンドを使用して、
- nodetool の ring コマンドを使用して、均等にデータが配置されたか確認します。
$wget https://raw.github.com/riptano/ComboAMI/2.2/tokentoolv2.py
$python tokentoolv2.py 5 { "0": { "0": 0, "1": 34028236692093846346337460743176821145, "2": 68056473384187692692674921486353642291, "3": 102084710076281539039012382229530463436, "4": 136112946768375385385349842972707284582 } }
取得した値をそれぞれのノードに設定します。(nodetool は cassandra の bin 配下、又はパッケージでインストールした場合は/usr/bin/nodetoolにあります)
$ nodetool -h 192.168.1.10 move 0 $ nodetool -h 192.168.1.11 move 34028236692093846346337460743176821145 $ nodetool -h 192.168.1.12 move 68056473384187692692674921486353642291 $ nodetool -h 192.168.1.13 move 102084710076281539039012382229530463436 $ nodetool -h 192.168.1.14 move 136112946768375385385349842972707284582
$ nodetool -h 192.168.1.10 ring
それぞれのノードに Token が設定されているか、データが均等に配置されているか確認してください。データが均等になっていなければ nodetool の move で Token を変更することで調節が可能です。
JVM のメモリ使用量設定
Cassandra はデフォルトでJVMが使用するヒープメモリを自動的に計算して設定していますが非常に小さな値となってしまう場合があります。JVMのメモリ使用量を確認しOSの搭載メモリの半分に満たない場合は手動にて設定変更を行います。
#vim cassandra-env.sh
MAX_HEAP_SIZE=”4G” ←コメントアウトをはずし指定(搭載メモリの半分以上)
HEAP_NEWSIZE=”800M” ←コメントアウトをはずし指定(CPU core * 100MB)
Place your bets, and test your luck on the roulette table at Downstream Casino Resort! Playing roulette presents many ways to win—learn the way to|tips on 1xbet how to} play beneath. FRENCH ROULETTE- French roulette is played on a European wheel, and is only marginally different from other video games of roulette, with the principle difference being in the guidelines of play.
返信削除