赞
踩
mkdir -p /export/{data,apps,logs,conf,downloads} cd /export/downloads curl -OLk https://download.oracle.com/java/17/archive/jdk-17.0.10_linux-x64_bin.tar.gz tar zxf jdk-17.0.10_linux-x64_bin.tar.gz mv /export/downloads/jdk-17.0.10 /export/apps/ ln -s /export/apps/jdk-17.0.10 /export/apps/jdk cat >> /etc/profile << EOF export JAVA_HOME=/export/apps/jdk export CLASSPATH=.:$JAVA_HOME/lib/ export PATH=.:\$JAVA_HOME/bin:\$PATH EOF source /etc/profile
docker pull zookeeper:3.9.2-jre-17
sudo docker run -d --name zk --privileged -p 2181:2181 -p 2888:2888 -p 3888:3888 zookeeper:3.9.2-jre-17
docker pull bitnami/kafka:3.7.0
docker run -d -t -p 9092:9092 --restart=always \
-e KAFKA_BROKER_ID=0 \
-e ALLOW_PLAINTEXT_LISTENER=yes \
-e KAFKA_CFG_ZOOKEEPER_CONNECT=192.168.1.30:2181 \
-e KAFKA_CFG_ADVERTISED_LISTENERS=PLAINTEXT://192.168.1.30:9092 \
-e TZ="Asia/Shanghai" --name kafka-0 --privileged=true bitnami/kafka:3.7.0
#参数说明 #docker run -d -t -p 9092:9092 --restart=always \ #-p 自己的内网 宿主机端口:容器端口 #-e KAFKA_BROKER_ID=0 \ #集群的broker的ID,该ID是集群的唯一标识,可以理解为节点ID。 #-e ALLOW_PLAINTEXT_LISTENER=yes \ #允许使用PLAINTEXT侦听器 #-e KAFKA_CFG_ZOOKEEPER_CONNECT=192.168.1.30:2181 \ #zookeeper的连接地址 #-e KAFKA_CFG_ADVERTISED_LISTENERS=PLAINTEXT://1192.168.1.30:9092 \ #kafka发布到zookeeper供客户端使用的服务地址。 #-e TZ="Asia/Shanghai" --name kafka-0 --privileged=true bitnami/kafka:3.7.0 #TZ:指定时区,这里指定亚洲上海时区,也就是东八区 #--name 给容器取个名字 #--privileged:使用该参数,container内的root拥有真正的root权限。否则,container内的root只是外部的一个普通用户权限。
#创建topic:kafka-topics.sh --create --bootstrap-server 192.168.1.30:9092 --replication-factor 1 --partitions 3 --topic test
#查看topic列表:kafka-topics.sh --list --bootstrap-server 192.168.1.30:9092
#单个查询topic描述:kafka-topics.sh --topic test --bootstrap-server 192.168.1.30:9092 --describe --exclude-internal
#生产消息:kafka-console-producer.sh --bootstrap-server 192.168.1.30:9092 --topic test
#消费消息:kafka-console-consumer.sh --bootstrap-server 192.168.1.30:9092 --topic test --from-beginning
#删除某条消息:kafka-delete-records.sh --bootstrap-server 192.168.1.30:9092 --offset-json-file /tmp/delete-strategy.json
#{
# "partitions": [
# {"topic": "test", "partition": 1, "offset": 1}
# ],
# "version":1
#}
#删除某主题下topic消息(超时时间设置短一些):kafka-configs.sh --zookeeper 192.168.1.30:2181 --entity-type topics --entity-name test --alter --add-config retention.ms=100
#删除topic:kafka-topics --bootstrap-server 192.168.1.30:9092 --topic test --delete
#查看消息内容:kafka-console-consumer.sh --bootstrap-server 192.168.1.30:9200 --topic test --from-beginning
cat > kfkui-docker-compose.yml << EOF version: '3.4' services: kafka-ui: container_name: kafka-ui image: provectuslabs/kafka-ui:latest ports: - 9093:8080 extra_hosts: - "kafka1-nonesecure:192.168.1.30" environment: KAFKA_CLUSTERS_0_NAME: kafka-cluster-0 KAFKA_CLUSTERS_0_BOOTSTRAPSERVERS: kafka1-nonesecure:9092 EOF docker compose -f kfkui-docker-compose.yml up -d
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。