记快乐符号:
    利用docker搭建zookeeper 以及 kafa

    1. 官网: https://kafka.apache.org/documentation/
    2. 安装zookeeper
    3. docker run -it -p2888:2888 -p2181:2181 --name=zookeeper zookeeper
    4. 安装centosDocker镜像
    5. docker run -it -p9092:9092 --name=kafka centos:7
    6. 以下操作保持在 我们启动的kafka容器中操作
    7. 我们更新一下软件列表
    8. dnf update
    9. 更完成后,我们再去下载vim
    10. dnf install vim
    11. 由于kafka需要java环境,我们需要安装openjdk
    12. dnf install java
    13. java -version
    14. 通过curl下载kafka
    15. https://mirrors.bfsu.edu.cn/apache/kafka/
    16. curl -O -L https://mirrors.tuna.tsinghua.edu.cn/apache/kafka/2.6.0/kafka_2.12-2.6.0.tgz
    17. tar -zvxf kafka_2.12-2.6.0.tgz
    18. 使用contro+p+q来退出docker 内部容器控制台,返回值宿主机控制台
    19. 我们要查看zookeeperip 那我们使用
    20. docker inspect --format='{{.NetworkSettings.IPAddress}} CONTAINER ID
    21. docker inspect --format='{{.NetworkSettings.IPAddress}} 995242c5d83c
    22. qinghai@localhost software % docker inspect --format='{{.NetworkSettings.IPAddress}}' zookeeper
    23. 172.17.0.2
    24. 那么我获取到的zookeeperip地址为:172.17.0.2
    25. 我们重新回到kafka容器内部
    26. docker exec -it kafka /bin/bash
    27. 进入kafka的安装目录后,我们进入bin目录中
    28. 进入kafkaconfig的路径中
    29. 编辑server.properties文件
    30. zookeeper.connect=localhost:2181更改为zookeeper.connect=172.17.0.2:2181
    31. 启动kafka
    32. ./kafka-server-start.sh ../config/server.properties
    33. 上面的部分省略....
    34. [2020-09-09 13:59:16,767] INFO [KafkaServer id=0] started (kafka.server.KafkaServer)
    35. 此时,我们使用contro+p+q重新进入kafka容器中
    36. docker exec -it kafka /bin/bash
    37. 进入kafka的安装路径,在进入bin执行
    38. [root@0db103c94a5c bin]#
    39. ./kafka-topics.sh --create --zookeeper 172.17.0.2:2181 --replication-factor 1 --partitions 1 --topic nanjolono
    40. 得到了结果,我们创建了一个名字为nanjolonotopic
    41. Created topic nanjolono.
    42. 查看创建的topic
    43. ./kafka-topics.sh --list --zookeeper 172.17.0.2:2181
    44. 发送一些消息
    45. [root@0db103c94a5c bin]#
    46. ./kafka-console-producer.sh --broker-list localhost:9092 --topic nanjolono
    47. >
    48. 我们再次创建一个shell窗口
    49. 进入kafka容器中
    50. docker exec -it kafka /bin/bash
    51. 进入kafka的安装目录,进入bin目录
    52. ./kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic nanjolono --from-beginning
    53. kafka-consumer-groups.sh --bootstrap-server localhost:9092 --describe --group my-group
    54. https://kafka.apache.org/documentation/
    55. 此时,我们在生产者控制台输入文字,消费者控制台能够成功接受到,就是成功啦!