在Linux下,Zookeeper的配置文件通常命名為zoo.cfg。這個文件包含了Zookeeper服務器的基本配置信息,如端口號、數據目錄、日志目錄等。以下是一些常見的配置項及其解析:
tickTime: 基本時間單位(毫秒),用于控制心跳和超時時間。例如,tickTime=2000表示基本時間單位為2000毫秒。
dataDir: 數據目錄,用于存儲Zookeeper的數據文件。例如,dataDir=/var/lib/zookeeper表示數據目錄為/var/lib/zookeeper。
dataLogDir: 日志目錄,用于存儲Zookeeper的日志文件。例如,dataLogDir=/var/log/zookeeper表示日志目錄為/var/log/zookeeper。
clientPort: 客戶端連接端口,默認值為2181。例如,clientPort=2181表示客戶端連接端口為2181。
initLimit: 允許Follower連接并同步到Leader的最大時間(以tickTime為單位)。例如,initLimit=5表示允許Follower在5個tickTime內連接并同步到Leader。
syncLimit: 允許Follower與Leader進行數據同步的最大時間(以tickTime為單位)。例如,syncLimit=2表示允許Follower在2個tickTime內與Leader進行數據同步。
server: 服務器列表,用于配置集群中的各個節點。例如,server.1=zoo1:2888:3888表示集群中有一個節點,其主機名為zoo1,2888端口用于節點間通信,3888端口用于選舉Leader。
autopurge.snapRetainCount: 保留快照的最大數量。例如,autopurge.snapRetainCount=3表示保留最近3個快照。
autopurge.purgeInterval: 自動清理間隔(小時)。例如,autopurge.purgeInterval=1表示每小時自動清理一次。
這些配置項只是zoo.cfg文件中的一部分,更多配置項可以參考Zookeeper官方文檔。在修改配置文件后,需要重啟Zookeeper服務以使更改生效。