kafka/images/kafka-broker/root/opt/kafka/bin/dns-srv-to-broker-list.sh

16 lines
413 B
Bash
Executable File

#!/bin/sh
set -euo pipefail
SRV=$1
OUTPUT=""
IFS=$'\n'
for SERVER in $(nslookup -type=srv ${SRV} 2>&1 | awk 'f;/Non-authoritative/{f=1}' | sed '$d'); do
PORT=$(echo -n ${SERVER} | awk '{ print $6 }')
CNAME=$(echo -n ${SERVER} | awk '{ print $7 }')
ADDR=$(nslookup -type=a ${CNAME} 2>&1 | awk -F': ' 'NR==6 { print $2 }')
OUTPUT="${OUTPUT}${ADDR}:${PORT},"
done
echo $(echo -n ${OUTPUT} | sed 's/,$//')