问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

如何设置cassandra集群

发布网友 发布时间:2022-04-10 04:43

我来回答

2个回答

懂视网 时间:2022-04-10 09:04

kairosdb

(1)到/conf目录下,找到kairosdb.properties,修改datastore为cassandra

技术分享

(2)设置cassandra的连接方式

技术分享

(3) 设置用户名密码

技术分享

 

4. 启动:到/bin目录下,直接跑./kairosdb.sh start,最后会看到 KairosDB service started   这样一句话,就OK了 172.16.101.25:8080 kairosdb客户端

cassandra

修改cassandra配置文件 conf/cassandra.yaml 技术分享 技术分享 技术分享 技术分享 技术分享 启动 ./bin/cassandra -R 用root用户启动 start.sh    nohup sh cassandra -R  > default.log  报错如下: 技术分享 原因:GLIBC版本太低 升级GLIBC版本 按照http://stuart.blog.51cto.com/728677/1840205在172.16.110.25上按照改步骤升级GLIBC,可以,具体步骤如下:

一、安装glibc-2.14

 

1 2 3 4 5 6 7 8 9 10 [root@jrgc130 ~]# wget http://ftp.gnu.org/gnu/glibc/glibc-2.14.tar.gz [root@jrgc130 ~]# mv glibc-2.14.tar.gz /opt/software [root@jrgc130 ~]# cd /opt/software [root@jrgc130 software]# tar xf glibc-2.14.tar.gz [root@jrgc130 software]# cd glibc-2.14 [root@jrgc130 glibc-2.14]# mkdir build [root@jrgc130 glibc-2.14]# cd build [root@jrgc130 build]# ../configure --prefix=/usr/local/glibc-2.14 [root@jrgc130 build]# make -j4 [root@jrgc130 build]# make install

 

二、拷贝链接库

 

1 2 [root@jrgc130 build]# cd /usr/local/glibc-2.14/lib [root@jrgc130 lib]# cp libc-2.14.so /lib64/

 

三、创建链接

 

1 2 [root@jrgc130 lib]# cd /lib64 [root@jrgc130 lib64]# rm -rf libc.so.6

 

此后会报如下错误:

 

1 ls: error while loading shared libraries: libc.so.6: cannot open shared object file: No such file or directory

 

解决方法:

 

1 [root@example lib64]# /sbin/sln libc-2.14.so /lib64/libc.so.6

 

四、查看支持的版本

 

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 [root@jrgc130 lib64]# strings /lib64/libc.so.6 |grep GLIBC GLIBC_2.2.5 GLIBC_2.2.6 GLIBC_2.3 GLIBC_2.3.2 GLIBC_2.3.3 GLIBC_2.3.4 GLIBC_2.4 GLIBC_2.5 GLIBC_2.6 GLIBC_2.7 GLIBC_2.8 GLIBC_2.9 GLIBC_2.10 GLIBC_2.11 GLIBC_2.12 GLIBC_2.13 GLIBC_2.14 GLIBC_PRIVATE

 

通过ssh连接会报如下错误:

 

1 2 3 4 5 -bash: warning: setlocale: LC_CTYPE: cannot change locale (en_US.UTF-8): No such file or directory -bash: warning: setlocale: LC_COLLATE: cannot change locale (en_US.UTF-8): No such file or directory -bash: warning: setlocale: LC_MESSAGES: cannot change locale (en_US.UTF-8): No such file or directory -bash: warning: setlocale: LC_NUMERIC: cannot change locale (en_US.UTF-8): No such file or directory -bash: warning: setlocale: LC_TIME: cannot change locale (en_US.UTF-8): No such file or directory

 

解决方法:

 

1 2 3 4 5 [root@example ~]# vim /etc/environment  LANG=en_US.utf-8 LC_ALL= [root@example ~]# source /etc/environment  [root@example ~]# localedef -v -c -i en_US -f UTF-8 en_US.UTF-8

集群化部署

cassandra中

vi cassandra.yaml 

技术分享

技术分享

vi cassandra-topology.properties 

技术分享

 vi cassandra-rackdc.properties 

技术分享

kairosdb中kairosdb.datastore.cassandra.host_list改成多ip形式

 vi kairosdb.properties 

技术分享


Cassandra连接

 ./cqlsh -u cassandra -p cassandra 172.16.103.127  

kairosdb+cassandra集群化安装

标签:sage   tar   directory   hang   example   change   start.s   libc   red   

热心网友 时间:2022-04-10 06:12

1、基本配置

首先需要准备3台或以上的计算机。下面假定有3台运行 Linux 操作系统的计算机,IP地址分别为 192.168.0.100, 192.168.0.101 和 192.168.0.102。 系统需要安装好 Java 运行时环境,然后到这里下载 0.7 版本的 Cassandra 二进制发行包。

挑选其中的一台机开始配置,先展开 cassandra 发行包:$ tar -zxvf apache-cassandra-$VERSION.tar.gz
$ cd apache-cassandra-$VERSION

其中的 conf/cassandra.yaml 文件为主要配置文件,0.7 版以后不再采用XML格式配置文件了,如果对 YAML 格式不熟悉的话最好先到这里了解一下。

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

一般情况下采用默认的配置即可,除非你有特殊的储存要求,所以现在有两种方案:一是按照默认配置创建相关的目录,二是修改配置文件采用自己指定的目录。

下面为了简单起见采用第一种方案:$ sudo mkdir -p /var/log/cassandra
$ sudo chown -R `whoami` /var/log/cassandra
$ sudo mkdir -p /var/lib/cassandra
$ sudo chown -R `whoami` /var/lib/cassandra

上面的 `whoami` 是 Linux 指令用于获取当前登录的用户名,如果你不准备用当前登录用户运行 Cassandra,那么需要把 `whoami` 替换成具体的用户名。
2、有关集群的配置

由于 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地址。至此所有的配置完成了。
3、启动 Cassandra 各个节点以及集群管理

启动顺序没什么所谓,只要保证种子节点启动就可以了:$ bin/cassandra -f

参数 -f 的作用是让 Cassandra 以前端程序方式运行,这样有利于调试和观察日志信息,而在实际生产环境中这个参数是不需要的(即 Cassandra 会以 daemon 方式运行)。

所有节点启动后可以通过 bin/nodetool 工具管理集群,比如查看所有节点运行情况:

$ bin/nodetool -host 192.168.0.101 ring

运行结果类似如下:
Address Status State Load Owns Token
159559...
192.168.0.100 Up Normal 49.27 KB 39.32% 563215...
192.168.0.101 Up Normal 54.42 KB 16.81% 849292...
192.168.0.102 Up Normal 73.14 KB 43.86% 159559...

命令中 -host 参数用于指定 nodetool 跟哪一个节点通信,对于 nodetool ring 命令来说,跟哪个节点通信都没有区别,所以可以随意指定其中一个节点。

从上面结果列表可以看到运行中的节点是否在线、State、数据负载量以及节点Token(可以理解为节点名称,这个是节点第一次启动时自动产生的)。我们可以使用 nodetool 组合 token 对具体节点进行管理,比如查看指定节点的详细信息:$ bin/nodetool -host 192.168.0.101 info

运行的结果大致如下:
84929280487220726989221251643883950871
Load : 54.42 KB
Generation No : 1302057702
Uptime (seconds) : 591
Heap Memory (MB) : 212.14 / 1877.63

查看指定节点的数据结构信息: $ bin/nodetool -host 192.168.0.101 cfstats

运行结果:
Keyspace: Keyspace1
Read Count: 0
Write Count: 0
Pending Tasks: 0
Column Family: CF1
SSTable count: 1

使用下面命令可以移除一个已经下线的节点(比如第2台机器关机了或者坏掉了) $ bin/nodetool -host 192.168.0.101 removetoken 84929280487220726989221251643883950871

下了线的节点如何重新上线呢?什么都不用做,只需启动 Cassandra 程序它就会自动加入集群了。

在实际运作中我们可能会需要隔一段时间备份一次数据(创建一个快照),这个操作在 Cassandra 里非常简单:$ bin/nodetool -host 192.168.0.101 snapshot

4、测试数据的读写

使用客户端组件加单元测试是首选的,如果仅想知道集群是否正常读写数据,可以用cassandra-cli 作一个简单测试:$ bin/cassandra-cli -host 192.168.0.101

接着输入如下语句:
create keyspace Keyspace1;
use Keyspace1;
create column family Users with comparator=UTF8Type and default_validation_class=UTF8Type;
set Users[jsmith][first] = 'John';
set Users[jsmith][last] = 'Smith';
get Users[jsmith];

上面语句创建了一个名为“Keyspace1”的 keyspace,还创建了一个名为“Users”的 Column Family,最后向 Users 添加了一个 item。正常的话应该看到类似下面的结果:
=> (column=first, value=John, timestamp=1302059332540000)
=> (column=last, value=Smith, timestamp=1300874233834000)
Returned 2 results.
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
表格列求和公式怎么设置 求和函数公式怎么输入 北京注册成立一个公司需要多少钱 北京公司都是什么 手机导航地图语音怎么下载 如何分别真金和仿金首饰 怎样区分真金和仿金首饰呢 小学生新年晚会主持人的串词!!(不要太多)急 大大后天就需要了!!!_百度... 周年晚会策划公司 奥格瑞玛传送门大厅在哪 奥格瑞玛传送门大厅怎么走 如何安装和配置Cassandra 室内桂花怎么养室内养桂花叶干怎么办 微信支付账户限制通知联系法院- 问一问 微信支付账户冻结通知微信昵称律师顾问的用户,提交了与当前账户 路由器WAN口不亮 上不了网怎么办 路由器WAN口不亮 上不了网怎么办 路由器wan灯突然不亮 路由器wan灯突然不亮 网线接路由器WAN灯不亮怎么回事? 网线接路由器WAN灯不亮怎么回事? 路由器WAN灯不亮,为啥? 路由器WAN灯不亮,上不了网是怎么回事? 路由器WAN灯不亮,上不了网是怎么回事? 路由器上的WAN灯不亮是怎么回事 路由器的wan灯突然不亮了,网络怎么连都连不上? exo来ruhhihman是第几期 runningman哪几期rm全体获胜 EXO上running man在优酷上是那一期?怎么20131110不是EXO,谁知道是哪期 runningman偶像特辑都有哪几期 韩国running manexo是哪一期 想在玻璃瓶上贴纸质的标签 用什么胶水好 什么胶能把纸贴在玻璃上斯不下来 有个图标是四只脚丫的APP 红色底白色小脚丫是什么app? 手机电池要怎么使用才更持久? 探探上的女的为什么喜欢看脚 足迹看脚app改成什么了 什么是头脚和大手模式下载 手机电池怎样才能让电力更持久? 苹果MacBook笔记本电脑突然黑屏来不了机,怎么办 怎么下载小天使,小脚丫的app 宠物洗脚用什么app软件? 一伴app骗人?为什么全部说骗子,都是为了赚钱 东莞市立业电子科技有限公司怎么样? 东莞市立业信息技术有限公司怎么样? 深圳华庭立业电子科技有限公司怎么样? bsd是什么牌子的手表 深圳市妙爱斯电子科技有限公司怎么样? 东莞市越铧电子科技有限公司怎么样? 制胜法宝 人才·产品·服务