Cassandra 安装(单节点)
本文的预期读者和目的
我想帮助初次安装Cassandra的人。因为我自己在最简单的单节点安装上遇到了困难,所以希望能帮到初学者。虽然有几篇相关的文章都是日语和英语写的,但由于版本和环境的差异,似乎在2017年11月时并不适用。相反,本文也有可能在不久的将来变得无用,但至少在目前,我想写下能够顺利安装的内容。
环境
假设我们在新建的 VirtualBox 上构建了 CentOS-7 虚拟机。
所使用的 Cassandra 版本是目前最新的 3.11.1 版本。由于它不兼容 Java 9,因此使用 Java 8 是至关重要的(我曾经因为使用了 Java 9 而遇到了问题)。
详细信息如下所示:
Windows 10
VirtualBox 5.1.28
CentOS-7-x86_64-Minimal-1611
Java SE 8u151(jdk1.8.0_151)
apache-cassandra-3.11.1
参考网站
我主要参考了以下两个英文网站。
如何在Ubuntu VPS上安装Cassandra并运行单节点集群。
卡桑德拉教程
尽管不清楚书写的具体时间,但它似乎更旧一些。
一旦成功安装后,我认为这是一个很好的教程。
1. 安装Java 8
请注意,安装Java 9 将导致Cassandra无法启动。
我下載了符合我的環境的檔案到本地 PC 上,我下載了 jdk-8u151-linux-x64.tar.gz 檔案。
创建一个适当的目录用于存储这个.tar.gz文件的虚拟机(我选择在根目录下创建一个名为temp的目录)。
# mkdir ~/temp/
使用WinSCP或类似工具将刚刚下载的.tar.gz文件存储在此处,并进行解压操作。
# cd ~/temp/
# tar zxvf jdk-8u151-linux-x64.tar.gz
将已解压的JDK移动到/usr/local/目录下(目录名为/java/)。
# mv jdk1.8.0_151 /usr/local/java/
在中国的母语中,只需要一种选择 :
执行以下命令:打开编辑器并编辑/etc/profile文件。
# vi /etc/profile
请在个人资料末尾添加以下内容。
JAVA_HOME=/usr/local/java/jdk1.8.0_151
PATH=$PATH:$HOME/bin:$JAVA_HOME/bin
JRE_HOME=/usr/local/java/jdk1.8.0_151
PATH=$PATH:$HOME/bin:$JRE_HOME/bin
export JAVA_HOME
export JRE_HOME
export PATH
设定 Java 以外的选择。
# update-alternatives --install "/usr/bin/java" "java" "/usr/local/java/jdk1.8.0_151/bin/java" 1
# update-alternatives --install "/usr/bin/javac" "javac" "/usr/local/java/jdk1.8.0_151/bin/javac" 1
# update-alternatives --install "/usr/bin/javaws" "javaws" "/usr/local/java/jdk1.8.0_151/bin/javaws" 1
# update-alternatives --set java /usr/local/java/jdk1.8.0_151/bin/java
# update-alternatives --set javac /usr/local/java/jdk1.8.0_151/bin/javac
# update-alternatives --set javaws /usr/local/java/jdk1.8.0_151/bin/javaws
重新启动虚拟机。
# reboot
2. 安装Cassandra
从官方网站的镜像网站下载apache-cassandra-3.11.1-bin.tar.gz。
在刚才创建的虚拟机的/temp/目录下,通过WinSCP等方式存储.tar.gz文件,并进行解压。
# cd ~/temp/
# tar zxvf apache-cassandra-3.11.1-bin.tar.gz
将已解压的Cassandra移动到/etc/目录下(目录名为/cassandra/)。
# mv apache-cassandra-3.11.1 /etc/cassandra/
创建用于存储日志等数据的文件夹,并赋予写入权限。
# mkdir /var/lib/cassandra/
# mkdir /var/log/cassandra/
# chmod 777 /var/lib/cassandra/
# chmod 777 /var/log/cassandra/
让路径通吧。打开编辑器并打开/etc/profile文件。
# vi /etc/profile
在个人资料的末尾添加以下内容。
export CASSANDRA_HOME=/etc/cassandra
export PATH=$PATH:$CASSANDRA_HOME/bin
重新启动。
# reboot
3. 创建一个用于 Cassandra 操作的用户并启动它。
因为 root 用户无法启动 Cassandra,请创建一个新用户。
Running Cassandra as root user or group is not recommended - please start Cassandra using a different system user.
If you really want to force running Cassandra as root, use -R command line option.
# useradd user
在/etc/cassandra/目录下授予访问权限。
# chmod -R 777 /etc/cassandra/
用户更改。
# su user
$ cassandra -f
用这个来启动(停止请按Ctrl + c)。
复制会话,更改用户,启动CQL shell。
# su user
$ cqlsh
如果CQL Shell能够成功启动,那么安装和启动就已经成功了。
[hadoop@localhost root]$ cqlsh
Connected to Test Cluster at 127.0.0.1:9042.
[cqlsh 5.0.1 | Cassandra 3.11.1 | CQL spec 3.4.4 | Native protocol v4]
Use HELP for help.
cqlsh>