如何在Debian 9上安装Apache Cassandra
Apache Cassandra是一个免费的开源NoSQL数据库,没有单点故障。
它提供了线性可扩展性和高可用性,而不会影响性能。
许多拥有大量活动数据集的都使用Apache Cassandra,包括Reddit,NetFlix,Instagram和Github。
本教程将指导我们完成在Debian 9上安装Apache Cassandra的过程。
准备工作
为了能够在Debian系统上安装软件包,我们需要以具有sudo特权的用户身份登录。
安装Apache Cassandra
在Debian 9上安装Apache Cassandra的推荐方法是通过从官方Apache Cassandra存储库安装deb软件包。
在撰写本文时,Apache Cassandra的最新版本为'3.11',并且要求在计算机上安装OpenJDK 8.
要安装OpenJDK 8软件包,请运行以下命令:
sudo apt updatesudo apt install openjdk-8-jdk
完成后,通过打印Java版本进行验证:
java -version
输出应如下所示:
openjdk version "1.8.0_181" OpenJDK Runtime Environment (build 1.8.0_181-8u181-b13-2~deb9u1-b13) OpenJDK 64-Bit Server VM (build 25.181-b13, mixed mode)
安装通过HTTPS访问存储库所必需的'apt-transport-https'软件包:
sudo apt install apt-transport-https
下一步是启用Apache Cassandra存储库。
使用以下“ wget”命令导入存储库的公钥:
wget -q -O - https://www.apache.org/dist/cassandra/KEYS | sudo apt-key add
上面的命令应该输出“ OK”,这意味着密钥已成功导入,并且来自此存储库的软件包将被视为受信任的软件包。
通过运行以下命令,将Cassandra存储库添加到系统源列表中:
sudo sh -c 'echo "deb http://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 114.55 KiB 256 100.0% d8c27e24-ea26-4eeb-883c-5986218ba3ca rack1
就是这样。
Apache Cassandra已安装在Debian服务器上。
配置Apache Cassandra
Apache Cassandra数据存储在“/var/lib/cassandra”目录中。
配置文件位于“/etc/cassandra”中,而Java启动选项可以在“/etc/default/cassandra”文件中进行配置。
默认情况下,Cassandra仅在localhost上侦听。
如果连接数据库的客户端也在同一台计算机上运行,则无需更改绑定界面。
要通过命令行与Cassandra进行交互,请使用Cassandra软件包随附的“ cqlsh”工具。
cqlsh
Connected to Test Cluster at 127.0.0.1:9042. [cqlsh 5.0.1 | Cassandra 3.11.4 | CQL spec 3.4.4 | Native protocol v4] Use HELP for help. cqlsh>
重命名Apache Cassandra集群
默认情况下,Cassandra群集被命名为“测试群集”。
如果要更改名称,请按照以下步骤操作:
- 首先,通过键入以下内容登录到Cassandra CQL终端:
cqlsh
并运行以下命令将群集名称更改为“ theitroad Cluster”:
UPDATE system.local SET cluster_name = 'theitroad Cluster' WHERE KEY = 'local';
用我们想要的名称更改“ theitroad群集”。完成后,键入“ exit”退出终端。
- 接下来,编辑“ cassandra.yaml”配置文件,并放置新的集群名称。/etc/cassandra/cassandra.yaml
cluster_name: 'theitroad Cluster'
- 运行以下命令以清除系统缓存:
nodetool flush system
- 最后,通过运行以下命令重新启动Cassandra服务:
sudo systemctl restart cassandra