zoukankan      html  css  js  c++  java
  • Kafka的安装和部署及测试

    1、简介

      大数据分析处理平台包括数据的接入,数据的存储,数据的处理,以及后面的展示或者应用。今天我们连说一下数据的接入,数据的接入目前比较普遍的是采用kafka将前面的数据通过消息的方式,以数据流的形式将数据接入到大数据存储平台。

      下面主要介绍一下kafka的安装和部署的过程。由于公司采用的是cloudera公司的产品,所以直接通过cloudera manager来安装部署kafka。只不过在安装的过程中,注意几个问题即可:

    (1)存放kafka的log文件的位置

    默认是/var/log/kafka/ 

    (2)存放kafka的data的位置

    默认是/var/local/kafka/data

    这些路径需要手动创建,并注意他们的权限的问题。

    2、kafka组建简介,并用控制台的方式来模拟一下

    (1)kafka主要有:producer、broker、topic、consumer。在安装好kafka之后,首先需要创建一个topic,实际上这个topic就是对应的将消息进行分类,也可以理解成message queue。创建topic的命令是:

      kafka-topics --create --zookeeper hadoop3:2181 --replication-factor 1 --partitions 1 --topic hello

    在这里hadoop3表示的是部署zookeeper的主机名(由于我部署的zookeeper只有一台机器,所以对应的就是hadoop3,这个根据具体的情况会不同),hello是对应的topic名称,--replication-factor参数指定对应的消息的副本数

    (2)创建好了topic之后,接下来就是生产者往这个topic中进行生产:

       kafka-console-producer --broker-list hadoop2:9092 --topic hello

    在这里hadoop2表示的是部署broker的主机名,hello对应的就是topic名称。

    (3)第三步就是消费对应的消息了:

       kafka-console-consumer --zookeeper hadoop3:2181 --topic hello --from-beginning

    在这里hadoop3表示的是对应部署zookeeper的主机名,hello表示的就是topic的名称。

    (4)查看topic的一些信息:

      创建多副本的topic:kafka-topics --create --zookeeper hadoop3:2181 --replication-factor 3 --partitions 1 --topic multi

        查看多副本的分布情况:kafka-topics --describe --zookeeper hadoop3:2181  --topic multi

    (5)测试一下容错机制

    测试一下容错能力Broker 1作为leader运行,现在我们直接重启102的那台主机 ,后我们查看topic的信息可以看到另外一个节点被选做了leader,102 不再出现在 Isr 列表中:  

    虽然最初负责续写消息的leader down掉了,但之前的消息还是可以消费的:

    > bin/kafka-console-consumer.sh --zookeeper hadoop3:2181 --from-beginning --topic mutil
    ...
    my test message 1
    my test message 2
  • 相关阅读:
    liunx基本命令
    liunx—awk
    python—__name__
    python—url路径拼接/编码
    python—__init__作用
    单元测试
    2、选择排序
    1、算法简介
    在命令行输入python出现“Warning:This Python interpreter is in a conda environment, but the environment has not been activated. Libraries may fail to load. To activate this environment please see https://conda.
    如何明确区分代码中的1和l
  • 原文地址:https://www.cnblogs.com/ljy2013/p/5160021.html
Copyright © 2011-2022 走看看