ZooKeeper configuration parameters
| Parameter | Description | Default value |
|---|---|---|
connect |
The ZooKeeper connection string used by other services or clusters. It is generated automatically |
— |
dataDir |
The location where ZooKeeper stores the in-memory database snapshots and, unless specified otherwise, the transaction log of updates to the database |
/var/lib/zookeeper |
| Parameter | Description | Default value |
|---|---|---|
clientPort |
The port to listen for client connections, that is the port that clients attempt to connect to |
2181 |
admin.serverPort |
The port that an embedded Jetty server listens on |
5181 |
admin.enableServer |
Enables Admin server — an embedded Jetty server that provides an HTTP interface to the four-letter-word commands |
False |
tickTime |
The basic time unit used by ZooKeeper (in milliseconds).
It is used for heartbeats.
The minimum session timeout will be twice the |
2000 |
initLimit |
The timeouts that ZooKeeper uses to limit the length of the time for ZooKeeper servers in quorum to connect to the leader |
5 |
syncLimit |
Defines the maximum date skew between server and the leader |
2 |
maxClientCnxns |
This property limits the number of active connections from the host, specified by IP address, to a single ZooKeeper Server |
0 |
autopurge.snapRetainCount |
When enabled, ZooKeeper auto-purge feature retains the |
3 |
autopurge.purgeInterval |
The time interval, for which the purge task has to be triggered (in hours).
Set to a positive integer ( |
24 |
Add key,value |
In this section you can define values for custom parameters that are not displayed in ADCM UI, but are allowed in the configuration file zoo.cfg |
— |
| Parameter | Description | Default value |
|---|---|---|
sslQuorum |
Enables encrypted quorum communication |
False |
serverCnxnFactory |
Specifies ServerCnxnFactory implementation. To use TLS-based server communication, this should be set to NettyServerCnxnFactory |
org.apache.zookeeper.server.NettyServerCnxnFactory |
ssl.quorum.keyStore.location |
Fully-qualified path to the server keystore file |
— |
ssl.quorum.keyStore.password |
Password for keystore |
— |
ssl.quorum.trustStore.location |
Fully-qualified path to the server truststore file |
— |
ssl.quorum.trustStore.password |
Password for truststore |
— |
ssl.protocol |
Protocol to be used in client TLS negotiation |
TLSv1.2 |
ssl.quorum.protocol |
Protocol to be used in quorum TLS negotiation |
TLSv1.2 |
| Parameter | Description | Default value |
|---|---|---|
ZOO_LOG_DIR |
The directory to store logs |
/var/log/zookeeper |
ZOOPIDFILE |
The directory to store the ZooKeeper process ID |
/var/run/zookeeper/zookeeper_server.pid |
SERVER_JVMFLAGS |
Used for setting different JVM parameters connected, for example, with garbage collecting |
-Xmx1024m -Djava.security.auth.login.config=/usr/lib/zookeeper/conf/zookeeper_server_jaas.conf |
JAVA |
A path to Java |
$JAVA_HOME/bin/java |
CLIENT_JVMFLAGS |
Client flags for JVM |
-Djava.security.auth.login.config=/usr/lib/zookeeper/conf/zookeeper_client_jaas.conf |
The ZooKeeper logging settings are part of the ZooKeeper Server component configuration that is presented below.
<!--
Copyright 2022 The Apache Software Foundation
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements. See the NOTICE file
distributed with this work for additional information
regarding copyright ownership. The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
Define some default values that can be overridden by system properties
-->
<configuration>
<!-- Uncomment this if you would like to expose Logback JMX beans -->
<!--jmxConfigurator /-->
<property name="zookeeper.console.threshold" value="INFO" />
<property name="zookeeper.log.dir" value="/var/log/zookeeper" />
<property name="zookeeper.log.file" value="zookeeper.log" />
<property name="zookeeper.log.threshold" value="INFO" />
<property name="zookeeper.log.maxfilesize" value="256MB" />
<property name="zookeeper.log.maxbackupindex" value="20" />
<!--
console
Add "console" to root logger if you want to use this
-->
<appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>%d{ISO8601} [myid:%X{myid}] - %-5p [%t:%C{1}@%L] - %m%n</pattern>
</encoder>
<filter class="ch.qos.logback.classic.filter.ThresholdFilter">
<level>${zookeeper.console.threshold}</level>
</filter>
</appender>
<!--
Add ROLLINGFILE to root logger to get log file output
-->
<appender name="ROLLINGFILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<File>${zookeeper.log.dir}/${zookeeper.log.file}</File>
<encoder>
<pattern>%d{ISO8601} [myid:%X{myid}] - %-5p [%t:%C{1}@%L] - %m%n</pattern>
</encoder>
<filter class="ch.qos.logback.classic.filter.ThresholdFilter">
<level>${zookeeper.log.threshold}</level>
</filter>
<rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
<maxIndex>${zookeeper.log.maxbackupindex}</maxIndex>
<FileNamePattern>${zookeeper.log.dir}/${zookeeper.log.file}.%i</FileNamePattern>
</rollingPolicy>
<triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
<MaxFileSize>${zookeeper.log.maxfilesize}</MaxFileSize>
</triggeringPolicy>
</appender>
<logger name="org.apache.zookeeper.audit.Slf4jAuditLogger" additivity="false" level="${audit.logger}">
<appender-ref ref="RFAAUDIT" />
</logger>
<root level="INFO">
<appender-ref ref="CONSOLE" />
<appender-ref ref="ROLLINGFILE" />
</root>
</configuration>
[Manager]
DefaultLimitCPU=
DefaultLimitFSIZE=
DefaultLimitDATA=
DefaultLimitSTACK=
DefaultLimitCORE=
DefaultLimitRSS=
DefaultLimitNOFILE=
DefaultLimitAS=
DefaultLimitNPROC=
DefaultLimitMEMLOCK=
DefaultLimitLOCKS=
DefaultLimitSIGPENDING=
DefaultLimitMSGQUEUE=
DefaultLimitNICE=
DefaultLimitRTPRIO=
DefaultLimitRTTIME=