博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
kafka搭建入门
阅读量:4069 次
发布时间:2019-05-25

本文共 2449 字,大约阅读时间需要 8 分钟。

Zookeeper的功能以及工作原理

ZooKeeper是什么? ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,它是集群的管理者,监视着集群中各个节点的状态根据节点提交的反馈进行下一步合理操作。最终,将简单易用的接口和性能高效、功能稳定的系统提供给用户。

Kafka简介

Kafka是最初由Linkedin公司开发,是一个分布式、支持分区的(partition)、多副本的(replica),基于zookeeper协调的分布式消息系统,它的最大的特性就是可以实时的处理大量数据以满足各种需求场景:比如基于hadoop的批处理系统、低延迟的实时系统、storm/Spark流式处理引擎,web/nginx日志、访问日志,消息服务等等,用scala语言编写,Linkedin于2010年贡献给了Apache基金会并成为顶级开源 项目。

一、基础环境准备:服务器是  “192.168.42.50 ”; 关闭防火墙   service iptables stop

二、布置服务器JDK环境: 查看 java -version 或者 rpm -qa |grep jdk

没有的话yum查看:yum  -y  list java*

 

java -version   #查看jadk

yum -y list  java*   #查看yum源中的java

yum -y install java-1.8.0*  #安装1.8jdk

 

 

三、定义目录结构:mkdir  -p  /opt/zookeeper

                                mkdir  -p  /opt/kafka

四、下载包:

cd cd  /opt/zookeepe   

        wget https://mirrors.aliyun.com/apache/zookeeper/zookeeper-3.4.13/zookeeper-3.4.13.tar.gz

cd  /opt/kafka

         wget  https://mirrors.aliyun.com/apache/kafka/1.1.1/kafka_2.12-1.1.1.tgz

##  没wget需要  yum  -y  install  wget         安装

 

五、配置启动zookeeper(虽然一般kafka自带zookeeper但是看到博客上都推荐使用自己单独的zookeeper):

cd /opt/zookeeper/

tar -zxvf zookeeper-3.4.13.tar.gz

cd /opt/zookeeper/conf

cp zoo_sample.cfg zoo.cfg

 

vim  zoo.cfg修改配置部分分别为:

zkdata跟zkdatalog目录自己创建

dataDir 定义:zookeeper保存数据的目录;   

dataLogDir=   #Zookeeper将写数据的日志文件保存在这个目录里;

server.1 这个1是服务器的标识也可以是其他的数字, 表示这个是第几号服务器,用来标识服务器,这个标识后续会用到。

第一个端口是master和slave之间的通信端口,默认是2888,第二个端口是leader选举的端口。默认3888。 修改完成后,保存即可。

 mkdir  /opt/zookeeper/zkdata/myid

 vim   /opt/zookeeper/zkdata/myid  输入1

启动服务:cd /opt/zookeeper/zookeeper-3.4.13/bin

./zkServer.sh start  ###启动

./zkServer.sh status ###启动后一定要查看

./zkServer.sh stop  ###关闭

 

六、Kafka搭建:

cd /opt/kafka

tar zxvf  kafka_2.12-1.1.1.tgz

cd /opt/kafka/kafka_2.12-1.1.1/config #进入kafka配置目录

 cp server.properties  server.properties.bak  #备份kafka默认配置文件

修改配置文件: vim server.properties

 

这里listeners=PLAINTEXT://192.168.42.50:9092 #监听端口   也是可以的

broker.id=1 #当前机器在集群中的唯一标识

advertised.listeners=PLAINTEXT://10.15.21.62:9092 #提供给生产者,消费者的端口号。可以不设置则使用listeners的值

logs日志路径没有的话需要创建

 

启动可以绝对路径:(备注:先进入kafka的bin目录)

启动:./kafka-server-start.sh -daemon ../config/server.properties

关闭:./kafka-server-stop.sh

 

七、测试kafka:

1、先创建一个测试主题:

./kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic kafkatest

2、查看主题: ./kafka-topics.sh --list --zookeeper localhost:2181    

3、发送一些消息:

./kafka-console-producer.sh --broker-list 192.168.42.50:9092 --topic kafkatest

4、启动命令行消费者,将消息转储到标准输出:

./kafka-console-consumer.sh --bootstrap-server 192.168.42.50:9092 --topic kafkatest --from-beginning 

kafka伪分布式搭建参考: 

转载地址:http://qjhji.baihongyu.com/

你可能感兴趣的文章
Jenkins 启动命令
查看>>
[LeetCode By Python]121. Best Time to Buy and Sell Stock
查看>>
Android/Linux 内存监视
查看>>
Android2.1消息应用(Messaging)源码学习笔记
查看>>
剑指offer算法题分析与整理(三)
查看>>
JVM并发机制探讨—内存模型、内存可见性和指令重排序
查看>>
nginx+tomcat+memcached (msm)实现 session同步复制
查看>>
WAV文件解析
查看>>
WPF中PATH使用AI导出SVG的方法
查看>>
QT打开项目提示no valid settings file could be found
查看>>
android 代码实现圆角
查看>>
java LinkedList与ArrayList迭代器遍历和for遍历对比
查看>>
drat中构造方法
查看>>
JavaScript的一些基础-数据类型
查看>>
coursesa课程 Python 3 programming 统计文件有多少单词
查看>>
coursesa课程 Python 3 programming course_2_assessment_7 多参数函数练习题
查看>>
coursesa课程 Python 3 programming course_2_assessment_8 sorted练习题
查看>>
多线程使用随机函数需要注意的一点
查看>>
getpeername,getsockname
查看>>
Visual Studio 2010:C++0x新特性
查看>>