如何在Debian 10 Linux上安装Apache Cassandra

Apache Cassandra是一个免费的开源NoSQL数据库,没有单点故障。 它提供了线性可扩展性和高可用性,而不会影响性能。 许多拥有大量活动数据集的公司都使用Apache Cassandra,包括Reddit,NetFlix,Instagram和Github。

在本文中,我们将解释如何在Debian 10 Buster上安装Apache Cassandra。

先决条件

这些说明假定您以root用户或具有sudo特权的用户身份登录。

安装Java#

在撰写本文时,Apache Cassandra的最新稳定版本是 3.11 并需要OpenJDK 8,但官方的Debian Buster信息库中没有。

我们将启用AdoptOpenJDK存储库并安装预构建的OpenJDK 8软件包。

更新软件包列表并安装必要的依赖关系,以通过HTTPS添加新存储库:

sudo apt updatesudo apt install apt-transport-https ca-certificates wget dirmngr gnupg software-properties-common

导入存储库的GPG密钥并将AdoptOpenJDK APT存储库添加到您的系统中:

wget -qO - https://adoptopenjdk.jfrog.io/adoptopenjdk/api/gpg/key/public | sudo apt-key add -sudo add-apt-repository --yes https://adoptopenjdk.jfrog.io/adoptopenjdk/deb/

通过运行以下命令来安装Java 8:

sudo apt updatesudo apt install adoptopenjdk-8-hotspot

完成后,通过打印Java版本进行验证:

java -version

输出应如下所示:

openjdk version "1.8.0_232"
OpenJDK Runtime Environment (AdoptOpenJDK)(build 1.8.0_232-b09)
OpenJDK 64-Bit Server VM (AdoptOpenJDK)(build 25.232-b09, mixed mode)

安装Apache Cassandra#

我们将使用供应商存储库中的deb软件包安装Apache Cassandra。 为此,我们需要启用Apache Cassandra存储库。

使用以下命令导入存储库的公钥 wget 命令:

wget -q -O - https://www.apache.org/dist/cassandra/KEYS | sudo apt-key add -

上面的命令应该输出 OK。 这意味着密钥已成功导入,并且来自此存储库的软件包将被视为受信任的软件包。

通过运行以下命令,将Cassandra存储库添加到系统源列表中:

sudo sh -c 'echo "deb https://www.apache.org/dist/cassandra/debian 311x main" > /etc/apt/sources.list.d/cassandra.list'

更新软件包的索引并安装Apache Cassandra软件包:

sudo apt updatesudo apt install cassandra

安装过程完成后,Cassandra服务将自动启动。 要验证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  103.71 KiB  256          100.0%            dd8f6709-08ef-45b8-881e-5c1b5bbfc7f7  rack1

而已。 Apache Cassandra已成功安装。

配置Apache Cassandra#

Apache Cassandra数据存储在 /var/lib/cassandra 目录。 配置文件位于 /etc/cassandra,并且可以在 /etc/default/cassandra 文件。

默认情况下,Cassandra仅在localhost上侦听。 如果连接到数据库的客户端也在同一台计算机上运行,​​则无需更改绑定接口。

要通过命令行与Cassandra进行交互,请使用 cqlsh 工具,随Cassandra软件包一起提供。

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

重命名Apache Cassandra群集#

默认情况下,Cassandra群集名为“测试群集”。 如果要更改它,请执行以下步骤:

  1. 使用登录到Cassandra CQL终端 cqlsh

    cqlsh
  2. 发出以下命令,将群集名称更改为“ Linuxize Cluster”:

    UPDATE system.local SET cluster_name = 'Linuxize Cluster' WHERE KEY = 'local';
    

    用您想要的名称更改“ Linuxize Cluster”。 完成后,输入 exit 退出终端。

  3. 编辑 cassandra.yaml 配置文件并输入新的集群名称:

    /etc/cassandra/cassandra.yaml

    cluster_name: 'Linuxize Cluster'
    
  4. 清除系统缓存:

    nodetool flush system
  5. 通过运行以下命令重新启动Cassandra服务:

    sudo systemctl restart cassandra

结论#

我们已经向您展示了如何安装Apache Cassandra Debian 10以及如何重命名默认集群。 有关如何开始使用Cassandra的更多信息,请访问官方文档页面。

如果您遇到问题或有反馈,请在下面发表评论。

Java Cassandra Debian数据库

Sidebar