[新增]24.07初始化模板

This commit is contained in:
zhanghongqing
2024-08-13 17:39:54 +08:00
parent 777f8d6448
commit 7697eab8f5
6 changed files with 535 additions and 0 deletions

View File

@@ -0,0 +1,71 @@
#!/bin/bash
source /etc/profile
partition_nums={{ groups.kafka | length }}
replication_nums={{ 2 if groups.kafka | length >1 else 1 }}
kafka_servers="{% for host in groups['kafka'] %}{{ host }}:9092{% if not loop.last %},{% endif %}{% endfor %}"
common_topic=(
BGP-RECORD
DOS-EVENT
NETWORK-TRAFFIC-METRIC
OBJECT-STATISTICS-METRIC
POLICY-RULE-METRIC
PROXY-EVENT
PROXY-EVENT-PROCESSED
PXY-EXCH-INTERMEDIA-CERT
SESSION-RECORD-IPFIX
STATISTICS-RULE-METRIC
VOIP-CONVERSATION-RECORD
VOIP-RECORD
VOIP-RECORD-PROCESSED
TOPK-METRIC
DOS-PROTECTION-RULE-METRIC
DOS-SKETCH-TOP-SERVER-IP
DOS-SKETCH-METRIC
DATAPATH-TELEMETRY-RECORD
TRAFFIC-SKETCH-METRIC
)
multi_partition_topic=(
TRANSACTION-RECORD
TRANSACTION-RECORD-PROCESSED
SESSION-RECORD
SESSION-RECORD-PROCESSED
TRAFFIC-FILE-STREAM-RECORD
)
function getTopic() {
docker exec kafka kafka-topics.sh --bootstrap-server $kafka_servers --list
}
function createTopic() {
exist_topic=$(echo "$exist_topic_list" | grep -wx "$3" | wc -l)
if [ $exist_topic -eq '0' ]; then
docker exec kafka kafka-topics.sh '--create' '--if-not-exists' '--bootstrap-server' "$kafka_servers" '--replication-factor' $1 '--partitions' $2 '--topic' $3
fi
}
function checkTopic() {
exist_topic_list=$(getTopic)
all_topic=("${common_topic[@]}" "${multi_partition_topic[@]}")
for topic_name in ${all_topic[@]}; do
exist_topic=$(echo "$exist_topic_list" | grep -wx "$topic_name" | wc -l)
if [ $exist_topic -eq '0' ]; then
echo "Topic $topic_name creation failure"
exit 1
fi
done
}
exist_topic_list=$(getTopic)
for topic_name in ${common_topic[@]}; do
createTopic $replication_nums $partition_nums $topic_name
done
for topic_name in ${multi_partition_topic[@]}; do
createTopic 1 $((partition_nums * 3)) $topic_name
done
checkTopic