cassandra配置

1.下载包

http://www.apache.org/dyn/closer.cgi?path=/cassandra/1.2.10/apache-cassandra-1.2.10-bin.tar.gz

2.java sdk配置安装

这个网上教程很多,就不多说了

3.配置cassandra

Cassandra 在配置文件里默认设定了几个目录:

data_file_directories: /var/lib/cassandra/data
commitlog_directory: /var/lib/cassandra/commitlog
saved_caches_directory: /var/lib/cassandra/saved_caches

data_file_directories 可以一次同时设置几个不同目录,cassandra 会自动同步所有目录的数据。另外在日志配置文件 log4j-server.properties 也有一个默认设定日志文件的目录:

log4j.appender.R.File=/var/log/cassandra/system.log
可以根据自己需要进行修改

4.集群配置

由于 Cassandra 采用去中心化结构,所以当集群里的一台机器(节点)启动之后需要一个途径通知当前集群(有新节点加入啦),Cassandra 的配置文件里有一个 seeds 的设置项,所谓的 seeds 就是能够联系集群中所有节点的一台计算机,假如集群中所有的节点位于同一个机房同一个子网,那么只要随意挑选几台比较稳定的计算机即可。在当前的例子中因为只有3台机器,所以我挑选第一台作为种子节点,配置如下:

 seeds:
- 192.168.0.100

然后配置节点之前通信的IP地址:

listen_address: 192.168.0.100

需要注意的是这里必须使用具体的IP地址,而不能使用 0.0.0.0 这样的地址。

配置 Cassandra Thrift 客户端(应用程序)访问的IP地址:

rpc_address: 192.168.0.100

这项可以使用 0.0.0.0 监听一台机器所有的网络接口。

Cassandra 的 Keyspaces 和 ColumnFamilies 不再需要配置了,他们将在运行时创建和维护。

把配置好的 Cassandra 复制到第2和第3台机器,同时创建相关的目录,还需要修改 listen_address 和 rpc_address 为实际机器的IP地址。至此所有的配置完成了。seeds写成第一台机器ip就可以了。

5.查看集群是否成功

bin/nodetool -host 192.168.0.101 ring
如果几台服务器都显示在下面,说明集群成功!

6.测试

bin/cassandra-cli -host 10.16.12.13
create keyspace Keyspace1;

use Keyspace1;

create column family Users with comparator=UTF8Type and default_validation_class=UTF8Type;

set Users[ascii('jsmith')][ascii('first')]=ascii('John');

set Users[ascii('jsmith')][ascii('last')]=ascii('John1');

get Users[ascii('jsmith')];

=> (name=first, value=John, timestamp=1381221719359000)
=> (name=last, value=John1, timestamp=1381221728237000)

如果返回这两行,说明安装成功!

命令
cassandra> ?
List of all CLI commands:
?                                                                  Same as help.
help                                                          Display this help.
connect /                             Connect to thrift service.
describe keyspace                               Describe keyspace.
exit                                                                   Exit CLI.
quit                                                                   Exit CLI.
show config file                                Display contents of config file.
show cluster name                                          Display cluster name.
show keyspaces                                           Show list of keyspaces.
show api version                                        Show server API version.
get .['']                                  Get a slice of columns.
get .['']['']                   Get a slice of sub columns.
get .['']['']                             Get a column value.
get .['']['']['']              Get a sub column value.
set .[''][''] = ''                       Set a column.
set .[''][''][''] = ''        Set a sub column.
del .['']                                           Delete record.
del .['']['']                                  Delete column.
del .['']['']['']                   Delete sub column.
count .['']                               Count columns in record.
count .['']['']            Count columns in a super column.

数据模型
  set Keyspace1.Standard2['jsmith']['first'] = 'John'
       \            \         \        \          \
        \            \         \_ key   \          \_ value
         \            \                  \_ column
          \_ keyspace  \_ column family

你可能感兴趣的:(nosql缓存)