clientPort={{ env['ZOOKEEPER_CLIENT_PORT'] }} dataDir=/var/lib/zookeeper/data dataLogDir=/var/lib/zookeeper/data {# optional properties #} {% set other_props = { 'ZOOKEEPER_TICK_TIME': 'tickTime', 'ZOOKEEPER_GLOBAL_OUTSTANDING_LIMIT' : 'globalOutstandingLimit', 'ZOOKEEPER_PRE_ALLOC_SIZE': 'preAllocSize', 'ZOOKEEPER_SNAP_COUNT': 'snapCount', 'ZOOKEEPER_TRACE_FILE': 'traceFile', 'ZOOKEEPER_MAX_CLIENT_CNXNS' : 'maxClientCnxns', 'ZOOKEEPER_CLIENT_PORT_ADDRESS' : 'clientPortAddress', 'ZOOKEEPER_MIN_SESSION_TIMEOUT' : 'minSessionTimeout', 'ZOOKEEPER_MAX_SESSION_TIMEOUT' : 'maxSessionTimeout', 'ZOOKEEPER_FSYNC_WARNING_THRESHOLDMS' : 'fsync.warningthresholdms', 'ZOOKEEPER_AUTOPURGE_SNAP_RETAIN_COUNT' : 'autopurge.snapRetainCount', 'ZOOKEEPER_AUTOPURGE_PURGE_INTERVAL': 'autopurge.purgeInterval', 'ZOOKEEPER_SYNC_ENABLED': 'syncEnabled', 'ZOOKEEPER_ELECTION_ALG' : 'electionAlg', 'ZOOKEEPER_INIT_LIMIT': 'initLimit', 'ZOOKEEPER_LEADER_SERVES': 'leaderServes', 'ZOOKEEPER_SYNC_LIMIT' : 'syncLimit', 'ZOOKEEPER_CNX_TIMEOUT': 'cnxTimeout', 'ZOOKEEPER_FORCE_SYNC': 'forceSync', 'ZOOKEEPER_JUTE_MAX_BUFFER': 'jute.maxbuffer', 'ZOOKEEPER_SKIP_ACL': 'skipACL', 'ZOOKEEPER_QUORUM_LISTEN_ON_ALL_IPS': 'quorumListenOnAllIPs' } -%} {% for k, property in other_props.iteritems() -%} {% if env.get(k) != None -%} {{property}}={{env[k]}} {% endif -%} {% endfor -%} {% if env['ZOOKEEPER_SERVERS'] %} {% set servers = env['ZOOKEEPER_SERVERS'].split(';') %} {% for server in servers %} server.{{ loop.index }}={{server}} {% endfor %} {% endif %} {% if env['ZOOKEEPER_GROUPS'] %} {% set groups = env['ZOOKEEPER_GROUPS'].split(';') %} {% for group in groups %} group.{{ loop.index }}={{group}} {% endfor %} {% endif %} {% if env['ZOOKEEPER_WEIGHTS'] %} {% set weights = env['ZOOKEEPER_WEIGHTS'].split(';') %} {% for weight in weights %} weight.{{ loop.index }}={{weight}} {% endfor %} {% endif %}