Cassandra使用指南(一)

 

1简介

     Apache Cassandra是一个开源的、分布式、无中心、弹性可扩展、高可用、容错、一致性可调、面向列的数据库,它基于Amazon Dynamo的分布式设计和Google BigTable的数据模型,由Facebook创建,已经在一些最流行的网站中取得了应用。

 

2快速入门

2.1安装

由于Cassandra采用Java语言开发,所以在安装Cassandra前必须安装JDK。

下载jdk-7u75-linux-x64.tar.gz(Cassandra 2.x要求JDK版本在1.7以上)

解压jdk-7u75-linux-x64.tar.gz到app目录,

命令:tar -zxvf jdk-7u75-linux-x64.tar.gz

 

下载apache-cassandra-2.0.12-bin.tar.gz

解压apache-cassandra-2.0.12-bin.tar.gz到app目录,

命令:tar –zxvf apache-cassandra-2.0.12-bin.tar.gz

 

注意:本文所举的例子都是基于CentOS 6.5 64位操作系统、JDK 1.7u75、Cassandra2.0.12。

2.2配置

1. 配置JDK和Cassandra环境变量:

vi /etc/profile

在打开的文件末尾,增加如下代码:

JAVA_HOME="/app/jdk1.7.0_75"

CASSANDRA_HOME="/app/apache-cassandra-2.0.12"

CLASS_PATH="$JAVA_HOME/lib:$JAVA_HOME/jre/lib"

PATH=".:$PATH:$JAVA_HOME/bin:$CASSANDRA_HOME/bin"

export JAVA_HOME CASSANDRA_HOME

 

执行下如下命令 使配置生效:

source /etc/profile

 

运行如下命令检查JDK是否安装成功:

java -version

能够看到Java版本信息说明JDK安装成功。

 

在192.168.1.55和192.168.1.56机器完成了2.1安装和2.2配置后,下面配置集群,在集群中192.168.1.55是种子节点。

2. 节点192.168.1.55(118.121.21.122)配置

  更改cassandra主配置文件——CASSANDRA_HOME/conf/cassandra.yaml,并打开防火墙

# 客户端与节点之间的通信地址,默认值为localhost,

# 还可以设置为0.0.0.0、IP地址、主机名、空,

# 多数据中心推荐使用外网IP

rpc_address: 118.121.21.122

  

集群配置:

修改cassandra.yaml的以下内容:

# 集群名称,填入节点想加入的集群名,不要使用默认的集群名称——Test Cluster

cluster_name: 'My Cluster'

 

# 定位节点和路由请求

endpoint_snitch: GossipingPropertyFileSnitch

 

# 种子节点,注意冒号(:)与IP有一个空格,

# 多个种子节点的IP地址之间用英文逗号(,)分隔

# 多数据中心推荐使用外网IP

 - seeds: "118.121.21.122"

 

# 节点之间的通信地址。如果是单节点集群,可设置为默认值localhost;

# 如果是节点已配置hostname、域名解析等,可设置为空,

# Cassandra调用InetAddress.getLocalHost()获取本机IP地址,

# 如果Cassandra找不到正确的地址,则必须指定IP地址或者主机名,

# 不能设置为0.0.0.0

# 多数据中心推荐使用外网IP

listen_address: 118.121.21.122

 

修改CASSANDRA_HOME/conf/cassandra_rackdc.properties文件以下内容:

# 节点所属数据中心名字

dc=DC1

# 节点所属机架名字

rack=RAC1

 

3. 节点192.168.1.56(118.121.21.123)配置

更改cassandra主配置文件——CASSANDRA_HOME/conf/cassandra.yaml,并打开防火墙

# 客户端与节点之间的通信地址,默认值为localhost,

# 还可以设置为0.0.0.0、IP地址、主机名、空

# 多数据中心推荐使用外网IP

rpc_address: 118.121.21.123

 

集群配置:

修改cassandra.yaml的以下内容:

# 集群名称,填入节点想加入的集群名,不要使用默认的集群名称——Test Cluster

cluster_name: 'My Cluster'

 

# 定位节点和路由请求

endpoint_snitch: GossipingPropertyFileSnitch

 

# 192.168.1.56节点以192.168.1.55为参考点,从后者获取数据。

# 种子节点,注意冒号(:)与IP有一个空格,新节点从种子节点获取数据,

# 多个种子节点IP地址之间用英文逗号(,)分隔

# 多数据中心推荐使用外网IP

 - seeds: "118.121.21.122"

 

# 节点之间的通信地址。如果是单节点集群,可设置为默认值localhost;

# 如果是节点已配置hostname、域名解析等,可设置为空,

# Cassandra调用InetAddress.getLocalHost()获取本机IP地址,

# 如果Cassandra找不到正确的地址,则必须指定IP地址或者主机名,

# 不能设置为0.0.0.0

# 多数据中心推荐使用外网IP

listen_address: 118.121.21.123

 

修改CASSANDRA_HOME/conf/cassandra_rackdc.properties文件以下内容:

# 节点所属数据中心名字

dc=DC1

# 节点所属机架名字

rack=RAC1

 

查看集群是否配置成功:

nodetool status

显示以下示例信息:

Datacenter: DC1

=======================

Status=Up/Down

|/ State=Normal/Leaving/Joining/Moving

--          Address             Load         Tokens   Owns (effective)                   Host ID                                   Rack

UN     118.121.21.122    65.66KB        256     100.0%            9c8d5f3a-df25-44be-9622-2783fe42ae56     RAC1

UN     118.121.21.123    55.88KB        256     100.0%            16a598f0-d87b-429d-b9cb-9a20405225b2   RAC1

2.3启动/停止

后台方式启动:/app/apache-cassandra-2.0.12/bin/cassandra

后台方式停止:pkill -f  CassandraDaemon

前台方式启动:/app/apache-cassandra-2.0.12/bin/cassandra -f

前台方式停止:按 "Control+C"

 

posted on 2015-11-10 17:06  一万里长风  阅读(1120)  评论(0编辑  收藏  举报