cd /opt 下载对应的kafka https://mirrors.tuna.tsinghua.edu.cn/apache/kafka/ tar -xvf kafka_2.12-2.2.1.tgz -C /opt 修改对应的配置 #集群内id从0开始,不能重复 sed -i 's$broker.id=0$broker.id=1$g' /opt/kafka_2.12-2.2.1/config/server.properties #替换为当前节点ip sed -i 's$#listeners=PLAINTEXT://:9092$listeners=PLAINTEXT://192.168.6.117:9092$g' /opt/kafka_2.12-2.2.1/config/server.properties #设置副本数量为3(默认1) sed -i 's$num.partitions=1$num.partitions=3$g' /opt/kafka_2.12-2.2.1/config/server.properties #设置zk sed -i 's$zookeeper.connect=localhost:2181$zookeeper.connect=192.168.6.117:2181,192.168.6.118:2181,192.168.6.119:2181$g' /opt/kafka_2.12-2.2.1/config/server.properties #设置超时时间 sed -i 's$zookeeper.connection.timeout.ms=6000$zookeeper.connection.timeout.ms=60000$g' /opt/kafka_2.12-2.2.1/config/server.properties #启动kafka ./kafka-server-start.sh -daemon ../config/server.properties #增加kafka服务并设置为开机启动 cat > /usr/lib/systemd/system/kafka.service <<"EOF" [Unit] Description=Kafka service After=network.target zookeeper.service [Service] Type=simple PIDFile=/var/run/kafka.pid ExecStart=/opt/kafka_2.12-2.2.1/bin/kafka-server-start.sh ../config/server.properties ExecStop=/opt/kafka_2.12-2.2.1/bin/kafka-server-stop.sh [Install] WantedBy=multi-user.target EOF systemctl daemon-reload systemctl enable kafka #定期清理日志 cat > /opt/kafka_2.12-2.2.1/bin/clean_kafka_logs.sh << "EOF" #!/bin/bash find /opt/kafka_2.12-2.2.1/logs/ -type f -mtime +7|xargs rm -rf EOF chmod +x /opt/kafka_2.12-2.2.1/bin/clean_kafka_logs.sh 执行crontab -e,加入一行 0 0 * * * /bin/bash /opt/kafka_2.12-2.2.1/bin/clean_kafka_logs.sh 调整已有topic副本数目 kafka-topics.sh --alter --zookeeper localhost:2181 --partitions 10 --topic mytopic