zoukankan      html  css  js  c++  java
  • centos搭建kafka集群环境

    最近公司项目需要用到kafka消息队列,所以特地花了一个周末的时间对kafka的搭建以及使用做了一个了解,特地记录一下。

    kafka搭建需要依赖于zookeeper作为注册中心,前面两篇文已经介绍了zookeeper的环境搭建,现在将记录一下kafka的搭建,同样也是选取三个节点

    如下:

    Node1:192.168.153.133

    Node2:192.168.153.137

    Node3:192.168.153.138

    开始安装kafka,参照官网地址:http://kafka.apachecn.org/quickstart.html
    执行命令:
    /#进入下载目录
    cd /usr/opt/
    #下载kafka
    wget http://archive.apache.org/dist/kafka/1.0.0/kafka_2.11-1.0.0.tgz
    #解压文件并且重命名
    tar -zxvf kafka_2.11-1.0.0.tgz && mv kafka_2.11-1.0.0 kafka
    编辑配置文件(三台机器都是如此配置,记得修改ip以及broker.id):
    #修改日志存储地址
    log.dirs=/usr/opt/kafka/data
    #节点id,用于区分子节点,就算是节点ip改变了,也能找到此节点
    broker.id=1
    #将使用外部的zookeeper配置
    zookeeper.connect=192.168.153.133:2008,192.168.153.137:2008,192.168.153.138:2008
    #指定主机地址,区分localhost,避免出错
    host.name=192.168.153.137
    #监听地址
    listeners = PLAINTEXT://192.168.153.137:9092
    #添加此项是为了api能够监听到此服务
    advertised.listeners = PLAINTEXT://192.168.153.137:9092
    配置kafka环境变量:
    #编辑环境配置
    vim /etc/profile

    加入以下配置:

    export PATH=$PATH:$ZOOKEEPER_HOME/bin
    export KAFKA_HOME=/usr/opt/kafka

    然后生效配置文件:

    #环境配置文件生效
    source /etc/profile

    后台启动kafka

    ./bin/kafka-server-start.sh -daemon config/server.properties
    检查kafka是否启动成功:
    jps
    启动成功之后显示:
    更多命令查看官网介绍:http://kafka.apachecn.org/quickstart.html
    创建生产者
    bin/kafka-topics.sh --create --zookeeper 192.168.153.137:2181 --replication-factor 3 --partitions 1 --topic my-replicated-topic
    测试:
    查看主题列表
    > bin/kafka-topics.sh --list --bootstrap-server 192.168.153.137:9092
    
    启动控制台消费者        
    > bin/kafka-console-consumer.sh --bootstrap-server 192.168.153.137:9092 --topic my-replicated-topic--from-beginning
    
    启动控制台消费者        
    > bin/kafka-console-consumer.sh --bootstrap-server 192.168.153.138:9092 --topic my-replicated-topic--from-beginning
    在生产者发送一条消息,可以再消费者都接收到,成功!
     
    另外出现Connection to node 1 (/192.168.153.133:9092) could not be established. Broker may not be available.错误的时候,可能是防火墙未关闭,或者是端口访问不同,注意检查,
    还有就是kafka 发送消息 报错 topic test with key: null
    可能是9092端口未打开,此时只要打开端口并关闭防火墙就行
    firewall-cmd --zone=public --add-port=9092/tcp --permanent 
    service firewalld stop

    然后重启kafka即可

  • 相关阅读:
    [原] KVM 虚拟化原理探究(6)— 块设备IO虚拟化
    [原] KVM 虚拟化原理探究(5)— 网络IO虚拟化
    [原] KVM 虚拟化原理探究(4)— 内存虚拟化
    [原] KVM 虚拟化原理探究(3)— CPU 虚拟化
    [原] KVM 虚拟化原理探究(2)— QEMU启动过程
    [原] KVM虚拟机网络闪断分析
    [原] KVM 环境下MySQL性能对比
    [源]云计算技术堆栈系列——鸟瞰
    [原] 利用 OVS 建立 VxLAN 虚拟网络实验
    [原] Cgroup CPU, Blkio 测试
  • 原文地址:https://www.cnblogs.com/advanceBlog/p/11877003.html
Copyright © 2011-2022 走看看