文章目录
- 一.Docker的安装
- 二. CentOS下安装Kafka
-
-
-
-
- 1.去官网下载: [http://kafka.apache.org/](http://kafka.apache.org/),我这里选择的是二进制包安装
- 2.解压安装包:
- 3.需要Zookeeper依赖
- 4.后台启动zookeeper -daemon 或用nohup
- 5.由于目前Kafka是部署在Linux服务器上的,外网如果想要访问,需要修改Kafka的配置文件config/server.properties,修改下Kafka的监听地址,否则会无法连接;
- 6.后台启动Kafka
- 7.查看进程是否正常运行 zk运行端口2181 kafka运行端口 9092
- 8.1首先创建一个叫consoleTopic的Topic
- 8.2接下来查看Topic
- 8.3会显示如下Topic信息;
- 8.4 向Topic中发送消息:
- 8.5直接在命令行中输入信息即可发送;
- 8.6重新打开一个窗口,通过如下命令可以从Topic中获取消息
- 安装 Kafka可视化,需要安装jdk8
- 下载完成后将JDK解压到指定目录并配置ja
- 安装kafka-eagle
- 下载完成后将kafka-eagle解压到指定目录;
- 安装MySQL并添加数据库ke,kafka-eagle之后会用到它;
-
-
-
- 三 ,Kafka软件可视化 可视化工具--Kafka Tool
- 四,python-Kafka的使用
一.Docker的安装
1、一气呵成拉3个镜像
docker pull wurstmeister/kafka
docker pull wurstmeister/zookeeper
docker pull sheepkiller/kafka-manager
解决docker pull 速度慢问题
将docker镜像源修改为国内的:
在 /etc/docker/daemon.json 文件中添加以下参数(没有该文件则新建):
{
"registry-mirrors": ["https://mj9kvemk.mirror.aliyuncs.com"]
}
服务重启:
systemctl daemon-reload
systemctl restart docker
2、启动zookeeper
docker run -d -t --name zookeeper -p 2181:2181 wurstmeister/zookeeper
docker ps
3、启动kafka
docker run -d --name kafka -p 9092:9092 -e KAFKA_BROKER_ID=0 -e KAFKA_ZOOKEEPER_CONNECT=192.168.2.250:2181 -e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://192.168.2.250:9092 -e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092 -t wurstmeister/kafka
docker ps
4.0、进入容器,创建主题
docker exec -it kafka /bin/bash
/opt/kafka/bin/kafka-topics.sh --create --zookeeper 192.168.2.250:2181 --replication-factor 1 --partitions 1 --topic test_topic
#有警报可以忽略
4.1、修改kafka的配置
docker exec -it kafka /bin/bash
vi /opt/kafka_2.13-2.7.1/config/server.properties
---------------------------------------------------------
#broker.id属性在kafka集群中必须要是唯一
broker.id=0
#kafka部署的机器ip和提供服务的端口号
listeners=PLAINTEXT://192.168.48.128:9092
#kafka的消息存储文件
log.dir=/temp/kafka-logs
#kafka连接zookeeper的地址
zookeeper.connect=192.168.48.128:2181
保存退出:wq
退出容器:exit
docker restart ag_kafka_v1
5、创建模拟消费者,在阻塞等待
/opt/kafka/bin/kafka-console-consumer.sh --bootstrap-server 192.168.2.250:9092 --topic test_topic --from-beginning
6、模拟生产者,连接另一个终端
docker exec -it kafka /bin/bash
/opt/kafka/bin/kafka-console-producer.sh --broker-list 192.168.2.250:9092 --topic test_topic
7、运行kafka生产者发送消息
./kafka-console-producer.sh --broker-list localhost:9092 --topic mmr
8、运行kafka-manager
docker run -d --name kafka-manager -p 9000:9000 --link zookeeper:zookeeper --link kafka:kafka --env ZK_HOSTS=zookeeper:2181 sheepkiller/kafka-manager
8.1 如果占用可以删除,注意需要先删除容器,在删除镜像
docker ps -a
docker rm -f 容器id
--------------------------------------
docker images
docker rmi -f 镜像id
9 进入管理页面,http://192.168.2.250:9000
9.1创建用户
查看topic
至此,我们利用docker搭建kafka就成功了, kafka-manager是管理kafka集群的,真正的环境中,zookeeper至少是3个结点,kafka是两个结点,保证集群稳定与负载均衡。
列出所有topics (在本地kafka路径下)
二. CentOS下安装Kafka
1.去官网下载: http://kafka.apache.org/,我这里选择的是二进制包安装
2.解压安装包:
tar -zxvf kafka_2.11-1.0.0.tgz
cd kafka_2.11-1.0.0
如果需要用自己的 zookeeper 多集群配置 需要修改 vi config/server.properties
3.需要Zookeeper依赖
使用kafka自带的zookeeper,适用于测试等小型场景或者单点kafka
使用kafka安装包中的脚本启动单节点zookeeper实例
4.后台启动zookeeper -daemon 或用nohup
./bin/zookeeper-server-start.sh -daemon config/zookeeper.properties
# 后台运行服务,并把日志输出到当前文件夹下的zookeeper-out.file文件中
nohup bin/zookeeper-server-start.sh config/zookeeper.properties > zookeeper-out.file 2>&1 &
5.由于目前Kafka是部署在Linux服务器上的,外网如果想要访问,需要修改Kafka的配置文件config/server.properties,修改下Kafka的监听地址,否则会无法连接;
############################# Socket Server Settings #############################
# Th