如何在CentOS 8上安装Apache Cassandra
Apache Cassandra是一个免费的开源NoSQL数据库,没有单点故障。
它提供了线性可扩展性和高可用性,而不会影响性能。
许多拥有大型活动数据集的都使用Apache Cassandra,包括Reddit,NetFlix,Instagram和Github。
本文介绍了如何在CentOS 8上安装Apache Cassandra。
安装Apache Cassandra
在CentOS 8上安装Apache Cassandra的最简单方法是从官方Apache Cassandra存储库安装rpm软件包。
Apache Cassandra的最新版本是“ 3.11”,并且要求在系统上安装OpenJDK 8.
以root或者具有sudo特权的用户身份运行以下命令来安装OpenJDK:
sudo dnf install java-1.8.0-openjdk-devel
完成后,通过打印Java版本来验证安装:
java -version
输出应如下所示:
openjdk version "1.8.0_262" OpenJDK Runtime Environment (build 1.8.0_262-b10) OpenJDK 64-Bit Server VM (build 25.262-b10, mixed mode)
现在已经安装了Java,下一步是添加Apache Cassandra存储库。
打开文本编辑器并创建以下存储库文件:
sudo nano /etc/yum.repos.d/cassandra.repo
将以下内容粘贴到文件中:
/etc/yum.repos.d/cassandra.repo
[cassandra] name=Apache Cassandra baseurl=https://www.apache.org/dist/cassandra/redhat/311x/ gpgcheck=1 repo_gpgcheck=1 gpgkey=https://www.apache.org/dist/cassandra/KEYS
保存文件并通过键入以下命令安装最新版本的Apache Cassandra:
sudo dnf install cassandra
出现提示时,键入“ y”以导入GPG密钥。
安装完成后,启动并启用Cassandra服务:
sudo systemctl start cassandrasudo systemctl enable 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 69.99 KiB 256 100.0% ce0389a3-b48c-4cc9-b594-abe23e677d33 rack1
就是这样。
至此,我们已经在CentOS服务器上安装了Apache Cassandra。
配置Apache Cassandra
Apache Cassandra数据存储在“/var/lib/cassandra”目录中,配置文件位于“/etc/cassandra”中,而Java启动选项可以在“/etc/default/cassandra”文件中进行配置。
默认情况下,Cassandra配置为仅在localhost上侦听。
如果连接数据库的客户端也在同一主机上运行,则无需更改默认配置文件。
要通过CQL(Cassandra查询语言)与Cassandra进行交互,我们可以使用Cassandra软件包随附的名为“ cqlsh”的命令行实用程序。
'cqlsh'要求Python 2位于系统的PATH中。
如果我们未在服务器上安装Python 2,则可以使用以下命令进行操作:
sudo dnf install python2sudo alternatives --set python /usr/bin/python2
设置好python后,运行'cqlsh'来访问CQL shell:
cqlsh
[cqlsh 5.0.1 | Cassandra 3.11.7 | CQL spec 3.4.4 | Native protocol v4] Use HELP for help. cqlsh>
重命名Apache Cassandra集群
默认情况下,Cassandra群集被命名为“测试群集”。
如果要更改群集名称,请按照以下步骤操作:
- 使用'cqlsh'登录到Cassandra CQL终端:
cqlsh
以下命令会将群集名称更改为“ theitroad群集”:
UPDATE system.local SET cluster_name = 'theitroad Cluster' WHERE KEY = 'local';
用我们想要的名称替换“ theitroad Cluster”。完成后,键入“ exit”退出控制台。
- 打开“ cassandra.yaml”配置文件,搜索“ cluster_name”并输入新的集群名称:
sudo nano /etc/cassandra/default.conf/cassandra.yaml
/etc/cassandra/default.conf/cassandra.yaml
cluster_name: 'theitroad Cluster'
- 清除系统缓存:
nodetool flush system
- 最后重新启动Cassandra服务:
sudo systemctl restart cassandra