29.Docker部署Kafka【腾讯云服务器】
29.Docker部署Kafka【腾讯云服务器】
背景
大数据开发中Kafka作为实时数据流,在业务中会经常使用,那么如何在服务器的Docker中部署Kafka呢?
下面来看看具体步骤
卸载旧Docker
#停止所有容器
docker stop $(docker ps -a -q)
#删除所有容器
docker rm $(docker ps -aq)
#删除所有镜像
docker rmi -f $(docker images -qa)
#删除旧Docker
sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
安装新Docker
#安装Docker
yum install docker -y
#启动Docker
service docker start
#停止Docker
service docker stop
#配置Docker镜像加速器
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://mirror.ccs.tencentyun.com"]
}
EOF
#重启Docker
service docker restart
#查看Docker运行状态
systemctl status docker
安装zookeeper
docker run -d \
--name zookeeper \
-p 2181:2181 \
-t wurstmeister/zookeeper
安装kafka
docker run -d \
--name kafka \
--publish 9092:9092 \
--link zookeeper \
--env KAFKA_ZOOKEEPER_CONNECT=zookeeper:2181 \
--env KAFKA_ADVERTISED_HOST_NAME=121.5.160.142 \
--env KAFKA_ADVERTISED_PORT=9092 \
wurstmeister/kafka
开启服务器端口访问
进入kafka
docker exec -it kafka /bin/bash
创建主题
cd /opt/kafka/bin/
./kafka-topics.sh --create \
--zookeeper 121.5.160.142:2181 \
--replication-factor 2 --partitions 1 \
--topic test
创建生产者
./kafka-console-producer.sh \
--broker-list 121.5.160.142:9092 \
--topic test
复制会话创建消费者
./kafka-console-consumer.sh \
--bootstrap-server 121.5.160.142:9092 \
--topic test \
--from-beginning
注
firewall-cmd --state #查看防火墙状态
systemctl stop firewalld.service #停止防火墙
常用kafka命令
#查看所有主题
./kafka-topics.sh --zookeeper 121.5.160.142:2181 --list
#查看主题详情
./kafka-topics.sh --zookeeper 121.5.160.142:2181 \
--describe --topic demo
#删除主题
./kafka-topics.sh --zookeeper 121.5.160.142:2181
--delete --topic demo
列出所有kafka消费组
./kafka-consumer-groups.sh --bootstrap-server \
127.0.0.1:9092 --list
查看具体的kafka消费组信息
./kafka-consumer-groups.sh --bootstrap-server 127.0.0.1:9092 \
--group console-consumer-40948 --describe
来源:https://blog.csdn.net/weixin_41405524/article/details/125549915