@@ -11,17 +11,17 @@ data:
11
11
export KAFKA_BROKER_ID=${HOSTNAME##*-}
12
12
sed -i "s/\${KAFKA_BROKER_ID}/$KAFKA_BROKER_ID/" /etc/kafka/server.properties
13
13
14
- PODNAME=$HOSTNAME
15
- NAMESPACE=$(cat /var/run/secrets/kubernetes.io/serviceaccount/namespace)
16
-
17
- # todo add curl to kafka image, switch to a curl image for init or write the whole lookup in java
18
- hash curl 2>/dev/null || { apt-get update; DEBIAN_FRONTEND=noninteractive apt-get install curl -y --no-install-recommends; }
19
-
20
- API=https://$KUBERNETES_SERVICE_HOST:$KUBERNETES_SERVICE_PORT/api
21
- AUTH="--cacert /run/secrets/kubernetes.io/serviceaccount/ca.crt --header \"Authorization: Bearer $(cat /run/secrets/kubernetes.io/serviceaccount/token)\""
22
-
23
- curl -s $AUTH $API/namespaces /kafka/pods/$PODNAME -I --fail-early || {
24
- echo "Access problems. Could be RBAC."
14
+ hash kubectl 2>/dev/null || {
15
+ sed -i "s/#init#broker.rack=#init#/#init#broker.rack=# kubectl not found in path/" /etc/kafka/server.properties
16
+ } && {
17
+ ZONE=$(kubectl get node "$NODE_NAME" -o=go-template='{{index .metadata.labels "failure-domain.beta.kubernetes.io/zone"}}')
18
+ if [ $? -ne 0 ]; then
19
+ sed -i "s/#init#broker.rack=#init#/#init#broker.rack=# zone lookup failed, see -c init-config logs/" /etc/kafka/server.properties
20
+ elif [ "x$ZONE" == "x<no value>" ]; then
21
+ sed -i "s/#init#broker.rack=#init#/#init#broker.rack=# zone label not found for node $NODE_NAME/" /etc/kafka/server.properties
22
+ else
23
+ sed -i "s/#init#broker.rack=#init#/broker.rack=$ZONE/" /etc /kafka/server.properties
24
+ fi
25
25
}
26
26
27
27
server.properties : |-
47
47
# The id of the broker. This must be set to a unique integer for each broker.
48
48
broker.id=${KAFKA_BROKER_ID}
49
49
50
- #broker.rack=${KAFKA_BROKER_RACK}
50
+ #init# broker.rack=#init#
51
51
52
52
# Switch to enable topic deletion or not, default value is false
53
53
delete.topic.enable=true
0 commit comments