一、Jvm参数
在zookeeper/conf创建java.env文件,以16G内存为例
export JVMFLAGS="-Xms8G -Xmx8G -Xmn4G -XX:+PrintGCDetails -XX:+PrintGCDateStamps -Xloggc:/data/zkout/gc/gc-%t.log $JVMFLAGS"
二、日志滚动
1.conf/log4j.properties调整为滚动输出
zookeeper.root.logger=WARN, ROLLINGFIL
zookeeper.log.dir=/data/zkout/logs
log4j.appender.ROLLINGFILE=org.apache.log4j.DailyRollingFileAppender
log4j.appender.ROLLINGFILE.Threshold=${zookeeper.log.threshold}
log4j.appender.ROLLINGFILE.File=${zookeeper.log.dir}/${zookeeper.log.file}
log4j.appender.ROLLINGFILE.MaxFileSize=100MB
2.zkEnv.sh调整日志输出方式
if [ "x${ZOO_LOG_DIR}" = "x" ]
then
ZOO_LOG_DIR="/data/zkout/logs/"
fi
if [ "x${ZOO_LOG4J_PROP}" = "x" ]
then
ZOO_LOG4J_PROP="INFO,ROLLINGFILE"
fi
三、系统参数调整
1.limits.conf 设置用户能打开的最大文件数
vim /etc/security/limits.conf
# End of file
root soft nofile 655360 #根据部署用户
root hard nofile 655360
* soft nofile 655360
* hard nofile 655360
2.系统参数调整
vim /etc/sysctl.conf
# 表示开启SYN Cookies。当出现SYN等待队列溢出时,启用cookies来处理,可防范少量SYN攻击,默认为0,表示关闭;
net.ipv4.tcp_syncookies = 1
# 表示开启重用。允许将TIME-WAIT sockets重新用于新的TCP连接,默认为0,表示关闭;为1,开启
net.ipv4.tcp_tw_reuse = 1
# 表示开启TCP连接中TIME-WAIT sockets的快速回收,默认为0,表示关闭;为1,开启;
net.ipv4.tcp_tw_recycle = 1
# 修改系統默认的 TIMEOUT 时间
net.ipv4.tcp_fin_timeout = 5
# the kernel's socket backlog limit
net.core.somaxconn = 65535
# the application's socket listen backlog
net.ipv4.tcp_max_syn_backlog = 100000
sysctl -p