設定 Cassandra
Cassandra
組態檔案位置會因安裝類型而異
-
docker:
/etc/cassandra
目錄 -
tarball:tarball 安裝位置內的
conf
目錄 -
package:
/etc/cassandra
目錄
Cassandra 的預設組態檔案 cassandra.yaml
足以探索單一節點的簡單 叢集
。但是,任何超出在本地執行單一節點叢集的行為都需要對各種 Cassandra 組態檔案進行額外的組態。需要非預設組態的一些範例包括部署多節點叢集或使用未在叢集節點上執行的客戶端。
-
cassandra.yaml
:Cassandra 的主要組態檔案 -
cassandra-env.sh
:可以設定環境變數 -
cassandra-rackdc.properties
或cassandra-topology.properties
:設定叢集的機架和資料中心資訊 -
logback.xml
:記錄組態,包括記錄層級 -
jvm-*
:多個伺服器和客戶端的 JVM 組態檔案 -
commitlog_archiving.properties
:設定commitlog
的封存參數
範例組態檔案也可以在 ./conf
中找到
-
cqlshrc.sample
:如何組態 CQL shell (cqlsh)
主要執行時期屬性
透過設定 cassandra.yaml
檔案中的 yaml 屬性來組態 Cassandra。至少您應該考慮設定下列屬性
-
cluster_name
:設定叢集名稱。 -
seeds
:叢集種子節點
的 IP 位址清單,以逗號分隔。 -
storage_port
:檢查防火牆是否沒有封鎖預設埠 7000。 -
listen_address
:監聽位址
是節點的 IP 位址,允許它與叢集中的其他節點進行通訊。預設設定為 localhost。或者,您可以設定listen_interface
以告知 Cassandra 要使用哪個介面,並連續使用哪個位址。設定一個屬性,而不是兩個。 -
native_transport_port
:檢查防火牆是否封鎖了 9042 預設埠,以便 cqlsh 等用戶端可以在此埠上與 Cassandra 通訊。
變更目錄位置
下列 yaml 屬性控制目錄的位置
-
data_file_directories
:儲存資料檔案(例如SSTables
)的一個或多個目錄。 -
commitlog_directory
:儲存提交記錄檔的目錄。 -
saved_caches_directory
:儲存已儲存快取的目錄。 -
hints_directory
:儲存hints
的目錄。
考量效能,如果您有多個磁碟,請考慮將提交記錄和資料檔案放在不同的磁碟上。