Cassandra单节点安装

时间:2022-12-22 04:47:32

一,Cassandra特点

1,分布式数据存储系统:每个节点都会存放部分数据的一个副本,如果一个节点down掉,另一个副本会相应请求

2,无中心架构:没有节点会承担特殊的管理任务,所有节点功能完全一样,不存在单点失效的问题

3,弹性水平扩展

4,可调节的一致性:数据一致性和性能二者不可兼得,这属于大数据环境下普遍存在的问题,需要做出取舍

5,无schema

 

二,Cassandra单节点安装

OS版本:Red Hat Enterprise Linux Server release 6.4 (Santiago)

Cassandra版本:2.1.1

Java版本:

java version "1.7.0_67"
Java(TM) SE Runtime Environment (build 1.7.0_67-b01)
Java HotSpot(TM) 64-Bit Server VM (build 24.65-b04, mixed mode)

1,下载Cassandra安装包

首先去Cassandra官网下载最新版本压缩包:http://cassandra.apache.org/download/

2,安装JDK并配置环境变量

Cassandra 2.0以及2.0之后的版本运行所需的最低Java版本为JDK 7update25,查看$CASSANDRA_HOME/conf/cassandra-env.sh可以看到:

if [ "$JVM_VERSION" \< "1.7" ] ; then
echo "Cassandra 2.0 and later require Java 7u25 or later."
exit 1;
fi

if [ "$JVM_VERSION" \< "1.8" ] && [ "$JVM_PATCH_VERSION" -lt "25" ] ; then
echo "Cassandra 2.0 and later require Java 7u25 or later."
exit 1;
fi

JDK安装完成后,需要配置好JAVA_HOME环境变量,同时也需要配置好CASSANDRA_HOME环境变量

[sean@localhost ~]$ echo $JAVA_HOME
/home/sean/jdk1.7.0_67
[sean@localhost ~]$ echo $CASSANDRA_HOME
/home/sean/apache-cassandra-2.1.1

3,修改JVM配置

JVM配置文件为$CASSANDRA_HOME/conf/cassandra-env.sh,其中有很多JVM配置如最大堆内存等等,这里不详细介绍了

4,修改Cassandra配置

Cassandra配置文件为$CASSANDRA_HOME/conf/cassandra.yaml,比较重要的配置项如下:

默认集群名(cluster_name):Test Cluster

默认缓存文件存放路径(saved_caches_directory):$CASSANDRA_HOME/data/saved_caches

默认数据文件存放路径(data_file_directories):$CASSANDRA_HOME/data/data

默认commitlog存放路径(commitlog_directory):$CASSANDRA_HOME/data/commitlog

默认的Cassandra服务地址(rpc_address):localhost

默认的Cassandra服务端口(rpc_port):9160

默认的CQL本地服务端口(native_transport_port): 9042

5,修改日志配置

从2.1+版本开始,Cassandra使用logback记录日志(参见Cassandra启动文件$CASSANDRA_HOME/bin/cassandra)

cassandra_parms="-Dlogback.configurationFile=logback.xml"
cassandra_parms="$cassandra_parms -Dcassandra.logdir=$CASSANDRA_HOME/logs"

查看$CASSANDRA_HOME/conf/logback.xml,可以找到Cassandra系统日志存放路径

<file>${cassandra.logdir}/system.log</file>

6,启动服务

[sean@localhost apache-cassandra-2.1.1]$ ./bin/cassandra

 

三,连接Cassandra

1,Cassandra命令行界面

不推荐这种连接方式,Cassandra命令行界面将会在Cassandra 3.0版本中移除

[sean@localhost apache-cassandra-2.1.1]$ ./bin/cassandra-cli -h 127.0.0.1 -p 9160
Connected to: "Test Cluster" on 127.0.0.1/9160
Welcome to Cassandra CLI version 2.1.1

The CLI is deprecated and will be removed in Cassandra 3.0. Consider migrating to cqlsh.
CQL is fully backwards compatible with Thrift data; see http://www.datastax.com/dev/blog/thrift-to-cql3

Type 'help;' or '?' for help.
Type 'quit;' or 'exit;' to quit.

[default@unknown]

2,使用Cassandra交互式命令行接口cqlsh

[sean@localhost apache-cassandra-2.1.1]$ ./bin/cqlsh 127.0.0.1 9042
Connected to Test Cluster at 127.0.0.1:9042.
[cqlsh 5.0.1 | Cassandra 2.1.1 | CQL spec 3.2.0 | Native protocol v3]
Use HELP for help.
cqlsh>