2014-09-23
要在雲端 IaaS 主機建立 cassandra node,cassandra 設定檔裡跟 ip 有關的參數設定要特別留心,不然在 node 建完後會啟動失敗。這篇設定在 cassandra 1.x、2.x 都適用,有需要的可以參考一下...:)
假設我在 AWS 建了一台 EC2,並且將它綁定 EIP(Elastic IP),EC2 的 ip 資訊如下
private ip : 172.30.45.70目前的 cassandra ring(cluster) 分佈在多個 AWS region,seed node 的 public ip 是 60.190.20.210。我要將該台 EC2 加入其中,相關注意事項如下
public ip : 50.190.20.220
endpoint_snitch: EC2MultiRegionSnitch以目前的例子來說則是設成
listen_address : ec2_private_ip
rpc_address : ec2_private_ip
broadcast_address : ec2_public_ip
seeds : seed_public_ip
endpoint_snitch: EC2MultiRegionSnitch
listen_address : 172.30.45.70
rpc_address : 172.30.45.70
broadcast_address : 50.190.20.220
seeds : 60.190.20.210
JVM_OPTS="$JVM_OPTS -Djava.rmi.server.hostname=127.0.0.1"
storage_port : 7000
jmx_port : 7199
native_transport_port : 9042
rpc_port : 9160