阿里云ubuntu服务器安装配置Cassandra+开启远程连接+开启密码认证

安装的是Cassandra2.0.11版本(建议用最新版本)

之后又装了2.1.9版本,之中有些许区别,下面会讲到。

前提环境:

    Ubuntu18.04

    JDK:1.7以上

如果是本机安装的话,内存8G及一下的需要修改/conf/cassandra-env.sh文件里面的

MAX_HEAP_SIZE=“4G”

HEAP_NEWSIZE=“800M”

默认的是8G和1024MB,记得把注释去掉,顶格写。

一、下载Cassandra包

wget https://mirrors.tuna.tsinghua.edu.cn/apache/cassandra/2.0.11/apache-cassandra-2.0.11-bin.tar.gz

二、解压到自己习惯的目录下

sudo tar -zxvf apache-cassandra-2.0.11-bin.tar.gz -C /opt

sudo mv apache-cassandra-2.0.11-bin.tar.gz cassandra     //把解压出来的文件夹改名为cassandra

三、java的环境这里不详细介绍,直接给出配置内容

vi /etc/profile
    #set java environment  
    export JAVA_HOME=/usr/local/javaDevelopment/jdk1.8.0_25
    export JRE_HOME=$JAVA_HOME/jdk1.8.0_25/jre
    export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib
    export PATH=/usr/local/java/jdk1.8.0_25/bin:$PATH
使环境变量生效:

source /etc/profile

四、设置Cassandra环境变量

sudo vim /etc/profile.d/cassandra-3.sh

添加如下内容

#!/bin/sh

export CASSANDRA_HOME=/opt/cassandra    //注意前面我已经把apache-cassandra-2.0.11文件夹改为cassandra了

export PATH=$CASSANDRA_HOME/bin:$PATH

变量生效

source /etc/profile

五、建立Cassandra数据存储文件夹(对应cassandra/conf/cassandra.ymal文件的存储位置)

 mkdir /var/lib/cassandra/data
 mkdir /var/lib/cassandra/commitlog
 mkdir /var/lib/cassandra/saved_caches

六、启动Cassandra

1.后台启动

bin/cassandra

2.交互启动(bin/cassandra -f),开启后保持在Terminal的log输出需要 Ctrl+C结束

六、关闭(结束)Cassandra
查找出Cassandra运行ID

ps aux | grep CassandraDaemon

结束Cassandra

kill -9 22384 pid

这里的22384就是进程号,-9强制执行,pid指的就是输入参数为进程号(这里并不建议这么做来关闭数据库,因为这常会带来一些副作用,如数据丢失或者终端无法恢复到正常状态。)

七、开启远程连接

1.进入conf目录,修改cassandra.yaml

    data_file_directories:
        - /var/lib/cassandra/data  //数据文件存放路径。这里要与前面新建的文件夹对应。
    commitlog_directory: /var/lib/cassandra/commitlog //操作日志文件存放路径。与前面新建的文件夹对应。
    saved_caches_directory: /var/lib/cassandra/saved_caches  //缓存文件存放路径。与前面新建的文件夹对应。

start_rpc: true    //这里一般默认是ture,不用改

- seeds: “xxx.xxx.xxx" //集群种子节点ip,新加入集群的节点从种子节点中同步数据。这里用阿里服务器的公网ip

listen_address:172.16.xxx.xxx  //需要监听的IP或主机名。注意这边用的阿里云公网IP地址

rpc_address: 0.0.0.0   //用于监听客户端连接的地址。建议设置成0.0.0.0。同时要放开broadcast_address: 1.2.3.4的注释。把1.2.3.4换成阿里云的公网ip

注意:在2.0.11版本是broadcast_address不是broadcast_rpc_address,只有broadcast_address。之前不知道,傻傻的盯着那蝇头小字的cassandra.ymal文本找了半天broadcast_rpc_address,汗

在2.1.9版本不用动broadcast_address,把broadcast_rpc_address放开并把1.2.3.4换成阿里云的公网ip。注意broadcast_rpc_address要顶格写,跟其他参数平齐,这里涉及ymal的语法结构。否则就会报错。

 

2.在阿里服务器的控制台设置

网络和安全→ 安全组→配置规则→添加安全组规则

确定后即可。

八、开启密码认证

还是修改cassandra.ymal文件

sudo vim cassandra.ymal

修改authenticator:AllowAllAuthenticator

变成:authenticator: PasswordAuthenticator

重启Cassandra

cassandra -f

使用默认账号登录Cassandra

cqlsh -u cassandra -p cassandra

创建新的超级用户

CREATE ROLE myAccount WITH SUPERUSER = true AND LOGIN = true AND PASSWORD = 'myScrect';

退出Cassandra用户,并用新超级用户登录

exit

cqlsh -u myAccount -p myScrect

禁用默认的超级用户

ALTER ROLE cassandra WITH SUPERUSER = false AND LOGIN = false;

另外也有简便的办法NoSQL Manager for Cassandra这个图形化管理软件

设置连接,host(登录ip),port(端口号)

用use authentication(输入帐密)

连上后右键Users → create new user

很简单~

ok,全部完成。

感觉您的耐心阅读,如有错误欢迎指正。

参考了多份博文,这里标明出处:

https://blog.csdn.net/weixin_40596016/article/details/78594603

https://blog.csdn.net/dream_an/article/details/81057610

https://blog.csdn.net/dream_an/article/details/81057591

https://blog.csdn.net/dream_an/article/details/80960653

猜你喜欢

转载自blog.csdn.net/weixin_41849551/article/details/81109084