Zk数据与日志清理
dataDir目录、dataLogDir两个目录会随着时间推移变得庞大,容易造成硬盘满了,清理办法:
自己编写shell脚本,保留最新的n个文件
使用zk自带的zkClient.sh保留最新的n个文件,zkClient.sh –n 15
配置autopurge.snapRetainCount和autopurge.purgeInterval两个参数配合使用;
Too many connections
配置文件中,maxClientCnxns参数,配置单个客户端机器创建的最大连接数;
磁盘管理
磁盘的I/O性能直接制约zookeeper更新操作速度,为了提高zk的写性能建议:
使用单独的磁盘
Jvm堆内存设置要小心
磁盘管理集群数量
集群中机器的数量并不是越多越好,一个写操作需要半数以上的节点ack,所以集群节点数越多,整个集群可以抗挂点的节点数越多(越可靠),但是吞吐量越差。集群的数量必须为奇数;
节点存储数据量
zk是基于内存进行读写操作的,有时候会进行消息广播,因此不建议在节点存取容量比较大的数据;