如何在 Ubuntu 22.04 上安装 Cassandra 并运行单节点集群

作者选择了 自由和开源基金作为 写给捐款计划的一部分接受捐款。

介绍

Apache Cassandra是一个开源,无主导,分布式NoSQL数据库系统.Cassandra被认为非常适合任务关键的应用程序和多节点设置,因为它是可扩展,弹性和容错的。

在本教程中,您将安装并使用Cassandra在Ubuntu 22.04上运行单节点集群。

前提条件

要完成本教程,您将需要以下内容:

<$>[注] 注: 如果您更新包数据库并使用sudo apt updatesudo apt upgrade命令升级服务器,在本文中启动步骤 1 之前重新启动服务器将阻止步骤 1 中遇到的提示再次出现。

步骤 1 – 安装 Cassandra

您将使用来自官方 Apache Software Foundation 存储库的包来安装 Cassandra。

首先,您可以登入您的服务器:

1ssh sammy@your-server-ip

更新包数据库:

1sudo apt update

然后更新系统:

1sudo apt upgrade

y确认安装。

在升级过程中,您可能会收到您的终端(见下图)中的提示,要求您输入已安装的内核版本,并要求您重新启动服务器。

Ubuntu 22.04 kernel upgrade/reboot prompt

点击Enter,以关闭提示,但在完成本教程后,请注意重新启动服务器。

您也可以收到下面的提示,如果你这样做,请按Enter来接受默认选项。

Ubuntu 22.04 service restart prompt

更新完成后,请使用以下命令将官方的 Cassandra 存储库添加到系统中:

1echo "deb http://www.apache.org/dist/cassandra/debian 40x main" | sudo tee -a /etc/apt/sources.list.d/cassandra.sources.list

Echo命令将引用字符串编写到标准输出中,该输出将被导向tee命令(echo命令)。tee命令将其编写到cassandra.sources.list文件中。-a旗指示tee将字符串附加到文件的尽头,否则它将重写现有内容,如果有的话。

在写作时,Cassandra 的最新版本是 4.0.4. 命令引用 40x,因为您正在添加 Cassandra 的 4.0 系列的存储库。

如果成功添加,产量应该是:

1[secondary_label Output]
2deb http://www.apache.org/dist/cassandra/debian 40x main

然后,使用wgettee命令,将存储库的密钥添加到系统中的可信密钥列表中:

1wget -q -O - https://www.apache.org/dist/cassandra/KEYS | sudo tee /etc/apt/trusted.gpg.d/cassandra.asc

在这个管道命令中,wget下载了KEYS文件,然后被导向tee命令。tee命令将所收到的输入写入到cassandra.asc文件中。q选项指示wget命令抑制其正常输出,而O选项指示wget将其下载的文件写入标准输出(-)。

再次更新包数据库:

1sudo apt update

最后,安装卡桑德拉:

1sudo apt install cassandra

如果提示,请用y确认安装。

有了它,卡桑德拉现在应该安装在服务器上. 在下一节,你将确认卡桑德拉大象正在运行。

步骤 2 — 确认卡桑德拉戴蒙正在运行

随着软件包的安装,卡桑德拉戴蒙应该自动启动。

要确认它正在运行,请使用此命令:

1sudo systemctl status cassandra

输出应该与以下相似:

 1[secondary_label Output]
 2 cassandra.service - LSB: distributed storage system for structured data
 3     Loaded: loaded (/etc/init.d/cassandra; generated)
 4     Active: active (running) since Tue 2022-06-28 03:25:52 UTC; 1min 32s ago
 5       Docs: man:systemd-sysv-generator(8)
 6    Process: 4606 ExecStart=/etc/init.d/cassandra start (code=exited, status=0/SUCCESS)
 7      Tasks: 52 (limit: 9495)
 8     Memory: 2.2G
 9        CPU: 17.401s
10     CGroup: /system.slice/cassandra.service
11             └─4723 /usr/bin/java -ea -da:net.openhft... -XX:+UseThreadPriorities -XX:+HeapDumpOnOutOfMemoryError -Xss256k -XX:+AlwaysPreTouch -XX>
12
13Jun 28 03:25:52 ubuntu-cass systemd[1]: Starting LSB: distributed storage system for structured data...
14Jun 28 03:25:52 ubuntu-cass systemd[1]: Started LSB: distributed storage system for structured data.

如果输出显示,戴蒙未能以 oom-kill 错误启动,戴蒙无法启动,因为系统失去内存。 要解决问题,请向服务器添加更多的 RAM。

现在你已经确认卡桑德拉大象正在运行,你将接下来检查集群的状态,并连接到它。

步骤 3 – 连接到集群

要连接到集群,你将使用 nodetool实用程序。

要检查集群的状态,键入:

1sudo nodetool status

在输出中,UN意味着它是 U p 和 ** N** normal:

1[secondary_label Output]
2Datacenter: datacenter1
3=======================
4Status=Up/Down
5|/ State=Normal/Leaving/Joining/Moving
6--  Address Load Tokens Owns (effective)  Host ID Rack 
7UN 127.0.0.1 69.08 KiB 16 100.0%            d9618485-4c16-4feb-8a2a-632192c0d587 rack1

然后使用其交互式命令行界面cqlsh连接到群集:

1cqlsh

你会看到它连接:

1[secondary_label Output]
2Connected to Test Cluster at 127.0.0.1:9042
3[cqlsh 6.0.0 | Cassandra 4.0.4 | CQL spec 3.4.5 | Native protocol v5]
4Use HELP for help.

退出类型:

1exit

结论

你现在有一个单节点卡桑德拉集群运行在Ubuntu 22.04. 你可以设置一个多节点集群与 如何安装卡桑德拉和运行多节点集群

Published At
Categories with 技术
comments powered by Disqus