blob: 74e1c111c2dd76b3d805f9d5d791fcea528e09a7 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
|
#!/usr/bin/env bash
#
# Copyright 2016 Confluent Inc.
#
# Licensed 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.
. /etc/confluent/docker/bash-config
dub ensure ZOOKEEPER_CLIENT_PORT
dub path /etc/kafka/ writable
# myid is required for clusters
if [[ -n "${ZOOKEEPER_SERVERS-}" ]]
then
dub ensure ZOOKEEPER_SERVER_ID
export ZOOKEEPER_INIT_LIMIT=${ZOOKEEPER_INIT_LIMIT:-"10"}
export ZOOKEEPER_SYNC_LIMIT=${ZOOKEEPER_SYNC_LIMIT:-"5"}
fi
if [[ -n "${ZOOKEEPER_SERVER_ID-}" ]]
then
dub template "/etc/confluent/docker/myid.template" "/var/lib/${COMPONENT}/data/myid"
fi
if [[ -n "${KAFKA_JMX_OPTS-}" ]]
then
if [[ ! $KAFKA_JMX_OPTS == *"com.sun.management.jmxremote.rmi.port"* ]]
then
echo "KAFKA_JMX_OPTS should contain 'com.sun.management.jmxremote.rmi.port' property. It is required for accessing the JMX metrics externally."
fi
fi
dub template "/etc/confluent/docker/${COMPONENT}.properties.template" "/etc/kafka/${COMPONENT}.properties"
dub template "/etc/confluent/docker/log4j.properties.template" "/etc/kafka/log4j.properties"
dub template "/etc/confluent/docker/tools-log4j.properties.template" "/etc/kafka/tools-log4j.properties"
ZK_REPLICAS=${ZOOKEEPER_REPLICAS:-1}
HOST=$(hostname -s)
DOMAIN=$(hostname -d)
ZK_SERVER_PORT=${ZOOKEEPER_SERVER_PORT:-2888}
ZK_ELECTION_PORT=${ZOOKEEPER_ELECTION_PORT:-3888}
function print_servers() {
if [[ $HOST =~ (.*)-([0-9]+)$ ]]; then
NAME=${BASH_REMATCH[1]}
for (( i=1; i<=$ZK_REPLICAS; i++ ))
do
echo "server.$i=$NAME-$((i-1)).$DOMAIN:$ZK_SERVER_PORT:$ZK_ELECTION_PORT"
done
fi
}
if [ $ZK_REPLICAS -gt 1 ]; then
print_servers >> /etc/kafka/${COMPONENT}.properties
fi
if [ -d /var/lib/zookeeper/data/version-2 ]; then
echo "API Keys already loaded";
else
cp -var /tmp/zookeeper/gerrit/oom-topics/data-zookeeper/* /var/lib/zookeeper/data/;
rm -rf /tmp/zookeeper/gerrit;
echo "Copying API Keys completed.";
fi
|