须要在 CentOS 7.4 服务器上安装 Cassandra,因而作个笔记,记录一下过程。apache
Cassandra 依赖 OracleJDK 1.8
以及 Python 2.7
,请检查是否有安装。vim
若是你喜欢一键安装,你能够参考 Cassandra 官方安装教程,但有必要告诉你的是,官方教程会同时下载 OpenJDK、Python 等依赖,但愿你不会所以后悔。服务器
我准备使用我本身的安装方式,这和官方教程一样简单。网站
首先建立 /usr/local/cassandra
目录:spa
sudo mkdir /usr/local/cassandra cd /usr/local/cassandra
而后进入 Cassandra 官方网站:3d
点击 Download Cassandra
:code
选择 3.11.2
版本:blog
直接复制,或使用右键 复制连接地址,运行命令:教程
sudo wget http://mirrors.hust.edu.cn/apache/cassandra/3.11.2/apache-cassandra-3.11.2-bin.tar.gz
下载完毕:图片
解压到当前目录:
sudo tar xvzf apache-cassandra-3.11.2-bin.tar.gz
解压完毕,若是进入 apache-cassandra-3.11.2/bin
目录输入 cassandra
的话,能够启动它,可是请暂时不要这样作。
在启动以前,先配置一下 conf/cassandra.yaml
文件:
cluster_name: 'Smith Cluster' hints_directory: /var/data/cassandra/hints data_file_directories: - /var/data/cassandra/data commitlog_directory: /var/data/cassandra/commitlog cdc_raw_directory: /var/data/cassandra/cdc_raw saved_caches_directory: /var/data/cassandra/saved_caches
将集群名字修改成 Smith Cluster
,这样作是不但愿被动加入其余 Cassandra 实例的集群,咱们须要保持单机状态。
而其余目录相关的路径,咱们但愿在升级 Cassandra 版本时,不至于丢失任何之前的数据。
建立 /var/data
和 /var/data/cassandra
目录,并将 data
目录权限修改成 773
策略:
sudo mkdir /var/data sudo mkdir /var/data/cassandra sudo chmod -R 773 /var/data
Cassandra 并不但愿以 root
身份启动,可若是没有 sudo
的话,又无法启动成功,因而作了这样一个折中方案,可能有点危险:授予了其余用户写入和执行权限。但目前没找到(其实没认真找)更好的方法,但愿有大神前来指点一二。
启动 Cassandra:
cd /usr/local/cassandra/apache-cassandra-3.11.2/bin ./cassandra
从 ps -ef | grep cassandra
能够得知它启动了,可是并不清楚是否能够链接。
那么经过如下命令来检查状态:
./cqlsh
如图:
为了更好地使用这些命令,应该像配置 JDK
那样创建:
sudo vim /etc/profile.d/cassandra.sh
输入内容:
export CASSANDRA_HOME=/usr/local/cassandra/apache-cassandra-3.11.2 export PATH=$CASSANDRA_HOME/bin:$PATH
重载一下环境变量,再检查一下状态:
cd .. source profile cqlsh
完美:
Cassandra 存在不少坑人的地方,这里因为是 CentOS 7.4 系统,内置了 Python 2.7,所以不会在 cqlsh
命令上遭遇挫折。对于集群名字,若是从一开始没有设置好,后面再创建集群的时候,须要作不少事情。而文件目录不手动修改的话,它会在 Cassandra 的 ./data
目录下默认建立那些文件,一旦须要升级版本,数据迁移将变得很是棘手。