NoSQL数据库Cassandra集群部署

在Linux系统部署NoSQL数据库Cassandra集群。

系统环境

  • OS :CentOS Linux release 7.3.1611 (Core)
  • CPU:Intel(R) Xeon(R) CPU E5-2650 v4 @ 2.20GHz 8核
  • 内存:16G
  • JDK: 1.8u151
  • Python: 2.7.5
  • Cassandra: 3.11.1
服务器描述
10.112.68.186节点1
10.112.68.191节点2
10.112.68.192节点3

环境准备

JDK安装

下载地址: http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

解压放到/usr/java/jdk1.8.0_151/目录

添加用户

1
2
3
groupadd cassandra
useradd -g cassandra cassandra
passwd cassandra

切换用户su cassandra,配置环境变量vim ~/.bashrc

1
2
3
4
5
6
7
8
JAVA_HOME=/usr/java/jdk1.8.0_151/
JRE_HOME=/usr/java/jdk1.8.0_151/jre
PATH=.:$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
CLASSPATH=.:$CLASSPATH:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
export JAVA_HOME JRE_HOME PATH CLASSPATH

CASSANDRA_HOME=$HOME/apache-cassandra-3.11.1
export CASSANDRA_HOME

部署

下载

1
2
3
wget http://mirrors.shuosc.org/apache/cassandra/3.11.1/apache-cassandra-3.11.1-bin.tar.gz
tar -xvf apache-cassandra-3.11.1-bin.tar.gz
cd apache-cassandra-3.11.1

配置vim conf/cassandra.yaml

1
2
3
4
cluster_name: 'JCPT Test Cluster'
- seeds: "10.112.68.186,10.112.68.192"
listen_address: 10.112.68.186
rpc_address: 10.112.68.186

不同节点listen_address、rpc_address不同,cluster_name和seeds是相同的。

  • JVM配置: conf/cassandra-env.sh(JVM_OPTS)
  • 日志配置:conf/logback.xml

建立数据和日志的存储目录(生产环境数据和日志放在不同分期)

1
2
3
4
5
6
mkdir data
mkdir data/data
mkdir data/commitlog
mkdir data/saved_caches
mkdir data/hints
mkdir logs

启动

1
2
./bin/cassandra -f (前端启动)
./bin/cassandra

测试

1
2
bin/cqlsh
SELECT cluster_name, listen_address FROM system.local;

参考:http://cassandra.apache.org/doc/latest/configuration/cassandra_config_file.html