Linux | Cassandra

Cassandra 是 NoSQL 数据库,所以适用于大数据量高并发的应用场景。

一、安装

Cassandra 依赖 OracleJDK 1.8 以及 Python 2.7,请检查是否有安装。

  • 下载安装
  • 启动配置
  • 检查状态

1.1下载安装

如果你喜欢一键安装,你可以参考 Cassandra 官方安装教程,但有必要告诉你的是,官方教程会同时下载 OpenJDKPython 等依赖,如果你不希望这么做,那么应该参考下面的手动安装。

第一步,创建 /usr/local/cassandra 目录:

sudo mkdir /usr/local/cassandra

cd /usr/local/cassandra

第二步,进入 Cassandra 官方网站:

第三步,点击 Download Cassandra

第四步,选择 3.11.2 版本:

第五步,直接复制,或使用右键 复制链接地址,运行命令:

sudo wget http://mirrors.hust.edu.cn/apache/cassandra/3.11.2/apache-cassandra-3.11.2-bin.tar.gz

第六步,下载完毕:

第七步,解压到当前目录:

sudo tar xzf apache-cassandra-3.11.2-bin.tar.gz

解压完毕,如果进入 apache-cassandra-3.11.2/bin 目录输入 cassandra 的话,可以启动它,但是请暂时不要这样做。

1.2 启动配置

在启动之前,先配置一下 conf/cassandra.yaml 文件:

cluster_name: 'Smith Cluster'

hints_directory: /var/lib/cassandra/hints

data_file_directories:
     - /var/lib/cassandra/data

commitlog_directory: /var/lib/cassandra/commitlog

cdc_raw_directory: /var/lib/cassandra/cdc_raw

saved_caches_directory: /var/lib/cassandra/saved_caches

将集群名字修改为 Smith Cluster,这样做是不希望被动加入其他 Cassandra 实例的集群,我们需要保持单机状态。

而其他目录相关的路径,我们希望在升级 Cassandra 版本时,不至于丢失任何以前的数据。

创建 /var/lib/cassandra 目录,并将权限修改为 773 策略:

sudo mkdir -m 773 /var/lib/cassandra

Cassandra 并不希望以 root 身份启动,可如果没有 sudo 的话,又没法启动成功,于是做了这样一个折中方案,可能有点危险,因为这授予了其他用户写入和执行的权限。

但目前没找到更好的方法,希望有大神前来指点一二。

启动 Cassandra

cd /usr/local/cassandra/apache-cassandra-3.11.2/bin

./cassandra

1.3 检查状态

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

完美:

总结

其实更推荐用包管理器来安装这些软件,比如 aptyum 等等。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1基本安装1.1在基于RHEL的系统中安装Cassandra1.1.1必要条件Ø YUM包管理器Ø Root或...
    战神汤姆阅读 1,067评论 0 4
  • 关于Mongodb的全面总结 MongoDB的内部构造《MongoDB The Definitive Guide》...
    中v中阅读 32,004评论 2 89
  • Apache Cassandra 是一个开源的、分布式、去中心化、弹性可扩展、高可用性、容错、一致性可调、面向行的...
    梁睿坤阅读 14,098评论 2 25
  • feisky云计算、虚拟化与Linux技术笔记posts - 1014, comments - 298, trac...
    不排版阅读 3,893评论 0 5
  • # Python 资源大全中文版 我想很多程序员应该记得 GitHub 上有一个 Awesome - XXX 系列...
    小迈克阅读 3,034评论 1 3