本節說明 Cassandra 的定期維護工作。
反熵維護
Apache Cassandra 環節點需要定期維護,以確保所有節點的一致性。如要執行這項維護作業,請使用下列指令:
nodetool -h localhost repair -pr
Apigee 建議在執行這個指令時執行下列動作:
- 在每個 Cassandra 節點上執行 (在所有區域或資料中心)。
- 一次在一個節點上執行,以確保環環中所有節點的一致性。
- 在工作負載相對較低的期間執行 (這項工具會對系統造成大量負載)。
- 請至少每七天執行一次,才能排除與 Cassandra「忘記刪除」相關的問題。
- 您可以針對不同的節點執行不同節點,或是將其排程,讓每個節點各執行幾小時。
- 使用
-pr
選項 (分區器範圍) 可以僅指定節點的主要分區器範圍。
如果您為 Cassandra 啟用 JMX 驗證,則必須在叫用 nodetool
時提供使用者名稱和密碼。例如:
nodetool -u username -pw password -h localhost repair -pr
詳情請參閱下列資源:
維護記錄檔
Cassandra 記錄檔會儲存在每個節點的 /opt/apigee/var/log/cassandra
目錄中。預設情況下,您可以建立最多 50 個記錄檔,每個檔案的大小上限為 20 MB。一旦達到這個上限,建立新的記錄就會刪除。
如果您發現 Cassandra 記錄檔佔用過多空間,您可以編輯 log4j 設定,修改分配給記錄檔的空間容量。
- 編輯
/opt/apigee/customer/application/cassandra.properties
即可設定下列屬性。如果該檔案不存在,請建立檔案:conf_logback_maxfilesize=20MB # max file size conf_logback_maxbackupindex=50 # max open files
- 使用下列指令重新啟動 Cassandra:
/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart