如何在Ubuntu 16.04 LTS上安装Apache Cassandra 3.11.x

注:本教程在Vultr VPS上测试通过,如需部署请前往Vultr.com

Apache Cassandra是一个免费的开源NoSQL数据库管理系统,旨在提供可伸缩性,高可用性和出色的性能。

在本文中,我将指导您在Ubuntu 16.04 LTS服务器实例上安装Apache Cassandra的最新稳定版本,Apache Cassandra 3.11.2。

先决条件

至少具有至少一个新的Vultr Ubuntu 16.04 LTS x64服​​务器实例 4GB 的记忆。内存不足将导致Apache Cassandra异常退出。
sudo用户。
服务器实例已更新为最新的稳定状态。

步骤1:安装OpenJDK JRE 8

Apache Cassandra需要Java 8的最新版本。为此,您可以选择安装OpenJDK JRE 1.8的最新版本,如下所示:

sudo apt install openjdk-8-jre -y

安装了OpenJDK JRE 1.8后,可以确认安装结果:

java -version

输出将类似于以下内容:

openjdk version "1.8.0_151"
OpenJDK Runtime Environment (build 1.8.0_151-8u151-b12-0ubuntu0.16.04.2-b12)
OpenJDK 64-Bit Server VM (build 25.151-b12, mixed mode)

(可选)您可以创建 JAVA_HOME 环境变量如下:

echo "JAVA_HOME=$(readlink -f /usr/bin/java | sed "s:bin/java::")" | sudo tee -a /etc/profile
source /etc/profile
echo $JAVA_HOME

步骤2:如果系统中缺少Python 2.7,请安装它

Apache Cassandra需要Python 2.7而不是Python3。如果您在Python 3环境中运行Apache Cassandra,则可能无法启动 cqlsh Apache Cassandra的外壳。

首先,确定您计算机上Python的存在和版本:

python -V

在Ubuntu 16.04 LTS上,输出可能会有些混乱:

The program 'python' can be found in the following packages:
* python-minimal
* python3
Ask your administrator to install one of them

这实际上意味着您需要自己安装Python 2.7:

sudo apt install python -y

重新运行 python -V 命令,输出将变为:

Python 2.7.12

步骤3:安装Apache Cassandra的最新稳定版本

创建Apache Cassandra 3.11.x apt仓库:

echo "deb https://www.apache.org/dist/cassandra/debian 311x main" | sudo tee -a /etc/apt/sources.list.d/cassandra.sources.list
curl https://www.apache.org/dist/cassandra/KEYS | sudo apt-key add -
sudo apt-get update

如果遇到GPG公钥错误,请运行以下命令以添加提到的Apache Cassandra公钥,即 A278B781FE4B2BDA 在这种情况下:

sudo apt-key adv --keyserver pool.sks-keyservers.net --recv-key A278B781FE4B2BDA
sudo apt-get update

使用新添加的 apt 回购以安装Apache Cassandra:

sudo apt-get install cassandra

步骤4:测试Apache Cassandra的安装

启动Apache Cassandra守护程序:

sudo service cassandra start

如果要使Apache Cassandra在系统引导时自动启动,请运行以下命令:

sudo update-rc.d cassandra defaults

接下来,使用 nodetool 程序以显示当前节点上Apache Cassandra的状态:

nodetool status

输出将类似于以下内容:

Datacenter: datacenter1
=======================
Status=Up/Down
|/ State=Normal/Leaving/Joining/Moving
--  Address    Load       Tokens       Owns (effective)  Host ID                               Rack
UN  127.0.0.1  102.66 KiB  256          100.0%            23916cfd-892d-4898-857c-aff9efe2354a  rack1

您可以使用 cqlsh Shell与Apache Cassandra进行交互:

cqlsh localhost

输出将类似于以下内容:

Connected to Test Cluster at localhost:9042.
[cqlsh 5.0.1 | Cassandra 3.11.2 | CQL spec 3.4.4 | Native protocol v4]
Use HELP for help.
cqlsh>

现在,只需键入 exit 然后按ENTER退出cqlsh shell。

如果要停止Apache Cassandra,请执行以下命令:

sudo service cassandra stop

注:本教程在Vultr VPS上测试通过,如需部署请前往Vultr.com