安裝 Cassandra
Apache Cassandra 可安裝在許多 Linux 發行版上
-
AlmaLinux
-
Amazon Linux Amazon Machine Images (AMI)
-
Debian
-
RedHat Enterprise Linux (RHEL)
-
SUSE Enterprise Linux
-
Ubuntu
這不是作業系統平台的完整清單,也不是規範性的。但是,建議使用者在使用較不流行的 Linux 發行版時進行詳盡的測試。不建議在較舊的 Linux 版本上部署,除非您之前在生產環境中使用過較舊的發行版。
先決條件
-
從下列其中一個位置安裝最新版本的 Java 11 或 Java 17
-
驗證已安裝的 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 映像很簡單。您需要在 Mac 上安裝 Docker Desktop,在 Windows 上安裝 Docker Desktop,或在 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 方法都需要 |
使用 Docker 安裝
-
拉取 docker 映像。對於最新的映像,請使用
docker pull cassandra:latest
這個
docker pull
指令會從 Dockerhub 取得最新版本的官方 Docker Apache Cassandra 映像。 -
使用
docker run
指令啟動 Cassandradocker run --name cass_cluster cassandra:latest
--name
選項會是所建立的 Cassandra 群集名稱。此範例使用名稱cass_cluster
。 -
啟動 CQL shell,
cqlsh
與所建立的 Cassandra 節點互動docker exec -it cass_cluster cqlsh
安裝 tarball 檔
-
驗證已安裝的 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)
-
從 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 Archives。
-
選擇性:使用 這裡 的其中一種方法驗證已下載 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 檔案進行比較
-
解壓縮 tarball
$ tar xzvf apache-cassandra-4.0.0-bin.tar.gz
檔案會解壓縮到
apache-cassandra-4.0.0/
目錄。這是 tarball 安裝位置。 -
位於 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 工具的位置 -
啟動 Cassandra
$ cd apache-cassandra-4.0.0/ && bin/cassandra
這會以經過驗證的 Linux 使用者身分執行 Cassandra。
-
使用下列方式監控啟動進度
$ 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 以取得組態資訊。
-
檢查 Cassandra 的狀態
$ bin/nodetool status
輸出中的狀態欄位應報告
UN
,代表「正常」。或者,使用下列方式連線至資料庫
$ bin/cqlsh
安裝為 Debian 套件
-
驗證已安裝的 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)
-
將 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
-
將 Apache Cassandra 儲存庫金鑰新增至伺服器上受信任金鑰清單
-
從來源更新套件索引
$ sudo apt-get update
-
使用 APT 安裝 Cassandra
$ sudo apt-get install cassandra
-
使用下列方式監控啟動進度
$ 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 以取得組態資訊。
-
檢查 Cassandra 的狀態
$ nodetool status
輸出中的狀態欄位應報告
UN
,代表「正常」。或者,使用下列方式連線至資料庫
$ cqlsh
安裝為 RPM 套件
-
驗證已安裝的 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)
-
將 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
-
從來源更新套件索引
$ sudo yum update
-
使用 YUM 安裝 Cassandra
$ sudo yum install cassandra
安裝過程中會建立新的 Linux 使用者
cassandra
。Cassandra 服務也會以這個使用者身分執行。 -
啟動 Cassandra 服務
$ sudo service cassandra start
-
使用下列方式監控啟動進度
$ 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 以取得組態資訊。
-
檢查 Cassandra 的狀態
$ nodetool status
輸出中的狀態欄位應報告
UN
,代表「正常」。或者,使用下列方式連線至資料庫
$ cqlsh
進一步安裝資訊
如需安裝問題的協助,請參閱疑難排解部分。