Cassandra 文档

版本

您正在查看预发布版本的文档。

安装 Cassandra

Apache Cassandra 可以安装在许多 Linux 发行版上

  • AlmaLinux

  • Amazon Linux Amazon Machine Images (AMI)

  • Debian

  • RedHat Enterprise Linux (RHEL)

  • SUSE Enterprise Linux

  • Ubuntu

这不是操作系统平台的详尽列表,也不是强制性的。但是,如果使用不太流行的 Linux 发行版,建议用户进行详尽的测试。不建议在较旧的 Linux 版本上部署,除非您在生产环境中拥有使用较旧发行版的先前经验。

先决条件

  1. 验证已安装的 Java 版本。例如

  • 命令

  • 结果

$ java -version
openjdk version "11.0.20" 2023-07-18
OpenJDK Runtime Environment Temurin-11.0.20+8 (build 11.0.20+8)
OpenJDK 64-Bit Server VM Temurin-11.0.20+8 (build 11.0.20+8, mixed mode)
  • 要使用 CQL shell cqlsh,请安装最新版本的 Python 3.8-3.11。

要验证您是否安装了正确版本的 Python,请键入 python --version

对 Python 2.7 的支持已弃用。

选择安装方法

有三种常见的 Cassandra 安装方法

  • Docker 镜像

  • Tarball 二进制文件

  • 软件包安装 (RPM、YUM)

如果您是当前的 Docker 用户,安装 Docker 镜像很简单。您需要安装 Docker Desktop for Mac、Docker Desktop for Windows 或在 Linux 上安装 docker。从 Docker Hub 拉取相应的镜像,并使用 docker run 命令启动 Cassandra。

对于许多用户来说,安装二进制 tarball 也是一个简单的选择。tarball 将所有内容解压缩到一个位置,二进制文件和配置文件位于其自己的子目录中。tarball 安装最明显的优势是它不需要 root 权限,可以在任何 Linux 发行版上安装。

打包安装需要 root 权限,最适合生产安装。如果您想使用 YUM 安装 Cassandra,请在 CentOS 和基于 RHEL 的发行版上安装 RPM 构建。如果您想使用 APT 安装 Cassandra,请在 Ubuntu 和其他基于 Debian 的发行版上安装 Debian 构建。

请注意,YUM 和 APT 方法都需要 root 权限,并将以 cassandra 操作系统用户身份安装二进制文件和配置文件。

使用 Docker 安装

  1. 拉取 docker 镜像。对于最新镜像,请使用

    docker pull cassandra:latest

    docker pull 命令将从 Dockerhub 获取官方 Docker Apache Cassandra 镜像的最新版本。

  2. 使用 docker run 命令启动 Cassandra

    docker run --name cass_cluster cassandra:latest

    --name 选项将是创建的 Cassandra 集群的名称。此示例使用名称 cass_cluster

  3. 启动 CQL shell,cqlsh 以与创建的 Cassandra 节点交互

    docker exec -it cass_cluster cqlsh

安装 tarball 文件

  1. 验证已安装的 Java 版本。例如

  • 命令

  • 结果

$ java -version
openjdk version "11.0.20" 2023-07-18
OpenJDK Runtime Environment Temurin-11.0.20+8 (build 11.0.20+8)
OpenJDK 64-Bit Server VM Temurin-11.0.20+8 (build 11.0.20+8, mixed mode)
  1. Apache Cassandra 下载 站点上的镜像之一下载二进制 tarball。例如,要下载 Cassandra 4.0

    $ curl -OL http://apache.mirror.digitalpacific.com.au/cassandra/4.0.0/apache-cassandra-4.0.0-bin.tar.gz

    镜像只托管每个主要支持版本的最新版本。要下载早期版本的 Cassandra,请访问 Apache 存档

  2. 可选:使用 此处 的方法之一验证下载的 tarball 的完整性。例如,要使用 GPG 验证下载文件的哈希值

    • 命令

    • 结果

    $ gpg --print-md SHA256 apache-cassandra-4.0.0-bin.tar.gz
    apache-cassandra-4.0.0-bin.tar.gz: 28757DDE 589F7041 0F9A6A95 C39EE7E6
                                       CDE63440 E2B06B91 AE6B2006 14FA364D

    将签名与下载站点上的 SHA256 文件进行比较

    • 命令

    • 结果

    $ curl -L https://downloads.apache.org/cassandra/4.0.0/apache-cassandra-4.0.0-bin.tar.gz.sha256
    28757dde589f70410f9a6a95c39ee7e6cde63440e2b06b91ae6b200614fa364d
  3. 解压缩 tarball

    $ tar xzvf apache-cassandra-4.0.0-bin.tar.gz

    文件将被提取到 apache-cassandra-4.0.0/ 目录中。这是 tarball 安装位置。

  4. tarball 安装位置包含脚本、二进制文件、实用程序、配置、数据和日志文件的目录

    <tarball_installation>/
        bin/		(1)
        conf/		(2)
        data/		(3)
        doc/
        interface/
        javadoc/
        lib/
        logs/		(4)
        pylib/
        tools/		(5)
    1 运行 cassandra、cqlsh、nodetool 和 SSTable 工具的命令的位置
    2 cassandra.yaml 和其他配置文件的位置
    3 提交日志、提示和 SSTable 的位置
    4 系统和调试日志的位置 <5>cassandra-stress 工具的位置
  5. 启动 Cassandra

    $ cd apache-cassandra-4.0.0/ && bin/cassandra

    这将以经过身份验证的 Linux 用户身份运行 Cassandra。

  6. 使用以下命令监控启动进度

    • 命令

    • 结果

    $ tail -f logs/system.log

    当您在 system.log 中看到类似以下内容的条目时,Cassandra 就已准备就绪

    +

    INFO  [main] 2019-12-17 03:03:37,526 Server.java:156 - Starting listening for CQL clients on localhost/127.0.0.1:9042 (unencrypted)...

    有关配置信息,请参阅 配置 Cassandra

  1. 检查 Cassandra 的状态

    $ bin/nodetool status

    输出中的状态列应报告 UN,表示“正常运行”。

    或者,使用以下命令连接到数据库

    $ bin/cqlsh

以 Debian 软件包形式安装

  1. 验证已安装的 Java 版本。例如

  • 命令

  • 结果

$ java -version
openjdk version "11.0.20" 2023-07-18
OpenJDK Runtime Environment Temurin-11.0.20+8 (build 11.0.20+8)
OpenJDK 64-Bit Server VM Temurin-11.0.20+8 (build 11.0.20+8, mixed mode)
  1. 将 Apache Cassandra 的存储库添加到 cassandra.sources.list 文件中。

    最新主要版本是 {50_version},相应的发行版名称是 50x(以“x”作为后缀)。对于旧版本,请使用

    • 50x 用于 C* {50_version} 系列

    • 41x 用于 C* {41_version} 系列

    • 40x 用于 C* 4.0 系列

例如,要添加 {50_version} 版本(50x)的存储库

+

$ echo "deb [signed-by=/etc/apt/keyrings/apache-cassandra.asc] https://debian.cassandra.apache.org 50x main" | sudo tee -a /etc/apt/sources.list.d/cassandra.sources.list
deb https://debian.cassandra.apache.org 50x main
  1. 将 Apache Cassandra 存储库密钥添加到服务器上的受信任密钥列表中

    • 命令

    • 结果

    $ curl -o /etc/apt/keyrings/apache-cassandra.asc https://downloads.apache.org/cassandra/KEYS
    % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                     Dload  Upload   Total   Spent    Left  Speed
    100  266k  100  266k    0     0   320k      0 --:--:-- --:--:-- --:--:--  320k
    OK
  2. 从源更新软件包索引

    $ sudo apt-get update
  3. 使用 APT 安装 Cassandra

    $ sudo apt-get install cassandra
  4. 使用以下命令监控启动进度

    • 命令

    • 结果

    $ tail -f logs/system.log

    当您在 system.log 中看到类似以下内容的条目时,Cassandra 就已准备就绪

    +

    INFO  [main] 2019-12-17 03:03:37,526 Server.java:156 - Starting listening for CQL clients on localhost/127.0.0.1:9042 (unencrypted)...

    有关配置信息,请参阅 配置 Cassandra

  1. 检查 Cassandra 的状态

    $ nodetool status

    输出中的状态列应报告 UN,表示“正常运行”。

    或者,使用以下命令连接到数据库

    $ cqlsh

以 RPM 软件包形式安装

  1. 验证已安装的 Java 版本。例如

  • 命令

  • 结果

$ java -version
openjdk version "11.0.20" 2023-07-18
OpenJDK Runtime Environment Temurin-11.0.20+8 (build 11.0.20+8)
OpenJDK 64-Bit Server VM Temurin-11.0.20+8 (build 11.0.20+8, mixed mode)
  1. 将 Apache Cassandra 的存储库添加到 /etc/yum.repos.d/cassandra.repo 文件中(以 root 用户身份)。

    最新主要版本是 {50_version},相应的发行版名称是 50x(以“x”作为后缀)。对于旧版本,请使用

    • 50x 用于 C* {50_version} 系列

    • 41x 用于 C* {41_version} 系列

    • 40x 用于 C* 4.0 系列

例如,要添加 {50_version} 版本(50x)的存储库

+

[cassandra]
name=Apache Cassandra
baseurl=https://redhat.cassandra.apache.org/42x/
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://downloads.apache.org/cassandra/KEYS
  1. 从源更新软件包索引

    $ sudo yum update
  2. 使用 YUM 安装 Cassandra

    $ sudo yum install cassandra

    一个新的 Linux 用户 cassandra 将作为安装的一部分创建。Cassandra 服务也将以该用户身份运行。

  3. 启动 Cassandra 服务

    $ sudo service cassandra start
  4. 使用以下命令监控启动进度

    • 命令

    • 结果

    $ tail -f logs/system.log

    当您在 system.log 中看到类似以下内容的条目时,Cassandra 就已准备就绪

    +

    INFO  [main] 2019-12-17 03:03:37,526 Server.java:156 - Starting listening for CQL clients on localhost/127.0.0.1:9042 (unencrypted)...

    有关配置信息,请参阅 配置 Cassandra

  1. 检查 Cassandra 的状态

    $ nodetool status

    输出中的状态列应报告 UN,表示“正常运行”。

    或者,使用以下命令连接到数据库

    $ cqlsh

更多安装信息

有关安装问题的帮助,请参阅 故障排除 部分。