欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

部署两节点cassandra集群

程序员文章站 2022-06-09 09:47:32
...

部署两节点cassandra集群确保系统已安装jdk,可不配置JAVA环境变量cassandra版本:apache-cassandra-1.1.5jdk版本:jdk1.6.0_381、cassandra日志路径#vimlog4j-s

部署两节点cassandra集群


确保系统已安装jdk,虚拟主机,可不配置JAVA环境变量


cassandra版本:apache-cassandra-1.1.5

jdk版本:jdk1.6.0_38


1、cassandra 日志路径

#vim log4j-server.properties

log4j.appender.R.File=/trs6/cassandra/logs/system.log


2、cassandra 内存使用 (HEAP_NEWSIZE)=1/4(MAX_HEAP_SIZE)

#vim cassandra-env.sh

MAX_HEAP_SIZE="4G"

HEAP_NEWSIZE="800M"


3、cassandra 集群配置

#vim cassandra.yaml

cluster_name: 'pis' //集群名称

initial_token: 0 //由initial_token.py生成


#!/usr/bin/env python

import sys

if (len(sys.argv) > 1):

num=int(sys.argv[1])

else:

num=int(raw_input("How many nodes are in your cluster? "))

for i in range(0, num):

print 'node %d: %d' % (i, (i*(2**127)/num))


data_file_directories:

- /trs6/cassandra/data //data存储目录

commitlog_directory: /trs6/cassandra/commitlog //commit日志目录

saved_caches_directory: /trs6/cassandra/saved_cache //cache存储目录

- seeds: "192.168.183.71,192.168.183.72" //种子节点IP

listen_address: 192.168.183.71 //监听地址->本机IP

rpc_address: 192.168.183.71

endpoint_snitch: SimpleSnitch


4、启动集群

#bin/cassandra


5、查看集群状态

#bin/nodetool -h 192.168.183.71 ring


Address DC Rack Status State Load Effective-Ownership Token

85070591730234615865843651857942052864

192.168.183.71 datacenter1 rack1 Up Normal 23.61 KB 50.00% 0

192.168.183.72 datacenter1 rack1 Up Normal 23.61 KB 50.00% 85070591730234615865843651857942052864


6、交互式命令行 (分号结尾)

[root@cas1 ~]# bin/cassandra-cli -h 192.168.183.71

Connected to: "pis" on 192.168.183.71/9160

Welcome to Cassandra CLI version 1.1.5


Type 'help;' or '?' for help.

Type 'quit;' or 'exit;' to quit.


(1)创建keyspace

[default@unknown] create keyspace DEMO;

5210d4ac-24e2-37e1-8d38-13a3cab24f33

Waiting for schema agreement...

... schemas agree across the cluster

(2)认证使用keyspace

[default@unknown] use DEMO;

Authenticated to keyspace: DEMO

(3)创建column family

[default@DEMO] create column family Users

...with key_validation_class = 'UTF8Type'

...and comparator = 'UTF8Type'

...and default_validation_class = 'UTF8Type';

8618bf72-4e3d-3b7c-84f6-031e69e7d161

Waiting for schema agreement...

... schemas agree across the cluster

(4)存储数据到column family

[default@DEMO] set Users[1234][name] = tianxin;

Value inserted.

Elapsed time: 87 msec(s).

[default@DEMO] set Users[1234][password] = upgirl;

Value inserted.

Elapsed time: 28 msec(s).

(5)获取数据

[default@DEMO] get Users[1234];

=> (column=name, value=tianxin, timestamp=1362521480914000)

=> (column=password, value=upgirl, timestamp=1362521498155000)

Returned 2 results.

Elapsed time: 131 msec(s).



遇到的问题:

1、启动cassandra时,报错 Error: Exception thrown by the agent : java.net.MalformedURLException: Local host name unknown: java.net.UnknownHostException: cas1: cas1

原因:集群节点必须配置主机名的解析



2、创建keyspace时,香港空间,报错 The schema has not settled in 10 seconds; further migrations are ill-advised until it does.

Versions are e71db6f5-eb85-3555-b851-1878497cf194:[198.216.27.72],eceb06f2-03a1-3bf8-a421-2528a053d7e6:[198.216.27.71]

原因:集群节点间时间不同步


本文出自 “振翅的小宇宙” 博客,请务必保留此出处

,香港虚拟主机