消息中间件--kafka(1)安装部署

一、概念

1、什么是kafka

Kafka是由Apache软件基金会开发的一个开源的分布式流处理平台,由ScalaJava编写。Kafka是一个分布式、分区的、多副本的、多订阅者,基于zookeeper协调的分布式日志系统(也可以当做MQ系统),它可以处理消费者在网站中的所有动作流数据。

  • Kafka在一个或多个可以跨越多个数据中心的服务器上作为集群运行。
  • Kafka集群将记录流存储在称为topic的类别中。
  • 每个记录由一个键,一个值和一个时间戳组成。

2、流平台具有三个关键功能:

  • 发布和订阅记录流,类似于消息队列或企业消息传递系统。
  • 以容错的持久方式存储记录流。
  • 处理记录流。

3、解决什么问题

Kafka主要设计目标如下:

  • 以时间复杂度为O(1)的方式提供消息持久化能力,即使对TB级以上数据也能保证常数时间的访问性能。
  • 高吞吐率。即使在非常廉价的商用机器上也能做到单机支持每秒100K条消息的传输。
  • 支持Kafka Server间的消息分区,及分布式消费,同时保证每个partition内的消息顺序传输。
  • 同时支持离线数据处理和实时数据处理。
  • Scale out:支持在线水平扩展

Kafka通常用于两大类应用程序:

  • 建立实时流数据管道,以可靠地在系统或应用程序之间获取数据
  • 构建实时流应用程序以转换或响应数据流

4、在Kafka中,客户端和服务器之间的通信是通过简单,高性能,与语言无关的TCP协议完成的。该协议已版本化,并与旧版本保持向后兼容性。提供了Java客户端,但是客户端支持多种语言

二、安装部署kafka

下载地址:http://mirrors.hust.edu.cn/apache/kafka/2.0.0/kafka_2.11-2.0.0.tgz

kafka最为重要三个配置依次为:broker.id、log.dir、zookeeper.connect,kafka server端config/server.properties参数

vim config/server.properties

·公布访问地址和端口

advertised.listeners=PLAINTEXT://192.168.3.100:9092

配置zookeeper

默认localhost:2181,如果是其他的zookeeper改为相应地址

zookeeper.connect=localhost:2181

启动kafka

[[email protected] bin]# ./kafka-server-start.sh ../config/server.properties

注:此方法为前台启动,若需要后台启动,则在上面命令的最后加上 &

检测是否启动 netstat -tunlp | egrep "(2181|9092)"

测试发送信息和消费消息

创建主题

[[email protected] bin]# ./kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test

启动生产者

[[email protected] bin]#./kafka-console-producer.sh --broker-list localhost:9092 --topic test

启动消费者

[[email protected] bin]#./kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginning

生产者发布消息

[[email protected] bin]# ./kafka-console-producer.sh --broker-list localhost:9092 --topic test
>is successfully
>good night
>

消费者接收到消息

[[email protected] bin]# ./kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginning
hallo
;
你好
is successfully
good night

注:消费者中会出现一些历史消息

  由于启动添加了--from-beginning参数,所以会把过往消息也显示,省略该参数,即可不显示历史消息就!



原文地址:https://www.cnblogs.com/lfhappy/p/11675155.html

时间: 2024-08-15 10:55:03

消息中间件--kafka(1)安装部署的相关文章

消息中间件之zookper安装部署

消息中间件之zookper安装部署jdk可以在官网或者网上下载[[email protected] tools]# chmod 755 jdk-8u40-linux-x64.rpm [[email protected] tools]# rpm -i jdk-8u40-linux-x64.rpm Unpacking JAR files... rt.jar... jsse.jar... charsets.jar... tools.jar... localedata.jar... jfxrt.jar.

Kafka Manager安装部署及使用

 为了简化开发者和服务工程师维护Kafka集群的工作,yahoo构建了一个叫做Kafka管理器的基于Web工具,叫做 Kafka Manager.本文对其进行部署配置,并安装配置kafkatool对kafka进行监控.查询 一.kafka-manager 简介 为了简化开发者和服务工程师维护Kafka集群的工作,yahoo构建了一个叫做Kafka管理器的基于Web工具,叫做 Kafka Manager.这个管理工具可以很容易地发现分布在集群中的哪些topic分布不均匀,或者是分区在整个集群分布不

【kafka】安装部署kafka集群(kafka版本:kafka_2.12-2.3.0)

2.1 下载kafka并安装kafka_2.12-2.3.0.tgz tar -zxvf kafka_2.12-2.3.0.tgz 2.2 配置kafka集群 在config/server.properties中修改参数: [[email protected] kafka_2.12-2.3.0]$ cd config [[email protected] config]$ gedit server.properties 参数1:添加host.name=hadoop01 #############

4.kafka的安装部署

为了安装过程对一些参数的理解,我先在这里提一下kafka一些重点概念,topic,broker,producer,consumer,message,partition,依赖于zookeeper, kafka是一种消息队列,他的服务端是由若干个broker组成的,broker会向zookeeper,producer生成者对应一个topic主题生产的数据分成多个partition分区放在不同的broker中, 每个分区以message的形式存储对应的消息数据(包括key,value,offset,i

新版flume+kafka+storm安装部署

安装步骤: 1.版本介绍: zookeeper3.4.6 flume-ng1.6 kafka2.10-0.8.2 storm0.9.5 2.安装zookeeper 1.下载最新release版zookeeper http://zookeeper.apache.org/releases.html#download 2.修改zookeeper配置文件 $zookeeper_home/conf $ cp zoo_sample.cfg zoo_sample.cfg.bak $ mv zoo_sample

Kafka介绍及安装部署

本节内容: 消息中间件 消息中间件特点 消息中间件的传递模型 Kafka介绍 安装部署Kafka集群 安装Yahoo kafka manager kafka-manager添加kafka cluster 一.消息中间件 消息中间件是在消息的传输过程中保存消息的容器.消息中间件在将消息从消息生产者到消费者时充当中间人的作用.队列的主要目的是提供路由并保证消息的传送:如果发送消息时接收者不可用,消息对列会保留消息,直到可以成功地传递它为止,当然,消息队列保存消息也是有期限的. 二.消息中间件特点 1

Kafka Eagle安装详情及问题解答

1.概述 最近有很多同学给笔者留言,说在安装Kafka Eagle的时候,会遇到一些问题,请教如何解决?今天笔者就在这里总结一下安装步骤,和一些安装的注意事项,以及解决方式. 2.内容 在安装Kafka Eagle之前,可能新接触的同学对Kafka Eagle不太了解,那我们现在简要介绍一下Kafka Eagle. 源代码地址:https://github.com/smartloli/kafka-eagle (感兴趣的同学可以关注一波) 2.1 Kafka Eagle是什么? Kafka Eag

zookeeper与kafka安装部署及java环境搭建

1. ZooKeeper安装部署 本文在一台机器上模拟3个zk server的集群安装. 1.1. 创建目录.解压 cd /usr/ #创建项目目录 mkdir zookeeper cd zookeeper mkdir tmp mkdir zookeeper-1 mkdir zookeeper-2 mkdir zookeeper-3 cd tmp mkdir zk1 mkdir zk2 mkdir zk3 cd zk1 mkdir data mkdir log cd zk2 mkdir data

kafka本地单机安装部署

kafka是一种高吞吐量的分布式发布订阅消息系统,这几天要上kafka,只在其中的一个节点使用,结合具体的项目实践在此将kafka的本地安装部署流程记录下来与各位同仁分享交流. 准备工作: 上述的文件除了jdk以外均放在/usr/local/kafka目录下. 1.安装jdk,kafka的使用要用到jdk 首先检查有无jdk:java -version cd /usr/local/hadoop(本例中我是将jdk的安装包放到hadoop文件夹下,各位可以依据自己情况) http://www.or