zoukankan      html  css  js  c++  java
  • kafka集群部署

    虽然kafka集群部署的文章网络的到处都是,但是还是想把自己亲自操作的过程记录一下,同时也可以记录一下遇到的问题,避免以后部署的时候再遇到。

    一、安装

    1、下载,地址:

    https://www.apache.org/dyn/closer.cgi?path=/kafka/2.3.0/kafka_2.12-2.3.0.tgz

    2、解压

    1 tar xzvf kafka_2.12.3.0.tgz
    2 cd kafka_2.12.3.0

    二、启动服务

    kafka依赖zookeeper,如果本身没有已经启动的zookeeper集群的话,kafka的安装包中已经内置了一个脚本来启动一个单节点的zookeeper实例,我的机器没有zookeeper,所以需要先启动一个zookeeper实例,启动命令:

     bin/zookeeper-server-start.sh -daemon config/zookeeper.properties 

    然后启动kafka,启动命令:

     bin/kafka-server-start.sh -daemon config/server.properties 

    执行过命令后发现启动失败了,看日志发现没有Java命令,才想起来自己的电脑没有安装Java,于是安装下Java,centos的系统,安装命令:

     yum install java-1.8.0-openjdk 

    三、验证服务

    执行常见命令验证服务启动是否正常。

    1、创建topic

     bin/kafka-topics.sh --create --bootstrap-server localhost:9092 --replication-factor 1 --partitions 1 --topic test 

    2、查看topic

     bin/kafka-topics.sh --list --bootstrap-server localhost:9092 

    3、生产消息

     bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test 

    4、消费消息

     bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginning 

    四、部署集群

    上一步中配置的一个单节点的kafka,这在开发测试阶段当然没有问题,但是在正式环境中,还是应该部署集群模式来保证整个服务的高可用。

    拷贝server.propertise生成两个新的配置文件

    1 cp config/server.properties config/server-1.properties
    2 cp config/server.properties config/server-2.properties

    并修改其中的如下几行:

    1 config/server-1.properties:
    2     broker.id=1
    3     listeners=PLAINTEXT://:9093
    4     log.dirs=/tmp/kafka-logs-1
    5  
    6 config/server-2.properties:
    7     broker.id=2
    8     listeners=PLAINTEXT://:9094
    9     log.dirs=/tmp/kafka-logs-2

    启动server1和server2:

    1 bin/kafka-server-start.sh config/server-1.properties &
    2 bin/kafka-server-start.sh config/server-2.properties &

    测试集群,这里我们再创建一个副本个数为3的topic:

     bin/kafka-topics.sh --create --bootstrap-server localhost:9092 --replication-factor 3 --partitions 1 --topic my-replicated-topic 

    查看topic的信息:

     bin/kafka-topics.sh --describe --bootstrap-server localhost:9092 --topic my-replicated-topic 

  • 相关阅读:
    C# 中的 ConfigurationManager类引用方法
    添加Word,Excel等dll时如何操作。
    Win7(64位)中IIS配置Access数据库的asp.net程序中出现“未在本地计算机上注册“Microsoft.Jet.OLEDB.4.0”提供程序”
    sql模糊查询
    Spring中AOP的使用
    MongoDB的孤儿文档是如何产生的
    Docker
    MySql索引优化
    Kafka(分布式流式系统)
    synchronized的底层实现
  • 原文地址:https://www.cnblogs.com/lit10050528/p/11828642.html
Copyright © 2011-2022 走看看