kafka安装、使用以及常用功能

kafka安装、使用以及常用功能

docker 安装kafka

创建网络:docker network create mynet-a --driver bridge

获取zk镜像:docker pull zookeeper

获取zk管理程序镜像:docker pull maauso/zkui

获取kafka镜像:docker pull bitnami/kafka

获取kafka-manager镜像(可以界面创建和管理topic):docker pull sheepkiller/kafka-manager

获取kafka-map镜像(可以可视化看到kafka消息,每个分区消息):docker pull dushixiang/kafka-map

启动zk:docker run -d --name zk --network mynet -p 2181:2181 zookeeper

启动zkui:docker run -d --name zkui -p 9090:9090 --network mynet -e ZKLIST=zk:2181 maauso/zkui

启动3个kafka broker:这里要注意,网上搜的关于bitnami/kafka 大多过时,目前latest版本默认已经抛弃zk(据说是zk性能不佳,而且kafka不希望依赖第三方组件才能组成集群),转而使用自家的kraft算法进行集群的管理(有关kraft不多介绍,有兴趣可以自行百度),kraft需要配置controller端口以及voters的地址,所以使用网上方法启动有可能启动失败,或者启动后zk看不到任何信息。因为kraft仍处于实验阶段,而且zk可更直观看到kafka集群信息,我还是采用传统的kafka+zk。因此启动container需要加上-e KAFKA_ENABLE_KRAFT=no。

如下:

docker run -d --name k1 --network mynet -e ALLOW_PLAINTEXT_LISTENER=yes -e KAFKA_ENABLE_KRAFT=no -e KAFKA_CFG_ZOOKEEPER_CONNECT=zk:2181 -e KAFKA_CFG_LISTENERS=PLAINTEXT://:9092 -e KAFKA_CFG_ADVERTISED_LISTENERS=PLAINTEXT://k1:9092 -p 9092:9092 bitnami/kafka

docker run -d --name k2 --network mynet -e ALLOW_PLAINTEXT_LISTENER=yes -e KAFKA_ENABLE_KRAFT=no -e KAFKA_CFG_ZOOKEEPER_CONNECT=zk:2181 -e KAFKA_CFG_LISTENERS=PLAINTEXT://:9092 -e KAFKA_CFG_ADVERTISED_LISTENERS=PLAINTEXT://k2:9092 -p 9093:9092 bitnami/kafka

docker run -d --name k3 --network mynet -e ALLOW_PLAINTEXT_LISTENER=yes -e KAFKA_ENABLE_KRAFT=no -e KAFKA_CFG_ZOOKEEPER_CONNECT=zk:2181 -e KAFKA_CFG_LISTENERS=PLAINTEXT://:9092 -e KAFKA_CFG_ADVERTISED_LISTENERS=PLAINTEXT://k3:9092 -p 9094:9092 bitnami/kafka

启动kafka-manager:docker run -d --name km --network myne

你可能感兴趣的:(kafka,linq,分布式)