kafka

Zookeeper安装

Zookeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件。它是一个为分布式应用提供一致性服务的软件,提供的功能包括: 配置维护,域名服务,分布式同步。

目标:封装好复杂易出错的关键服务,将简单易用的接口和性能高效,功能稳定的系统提供给用户。

1.官网下载zk

2.进行解压,进入conf目录,新建配置文件zoo.cfg

配置文件说明:

  • dataDir 数据文件目录
  • dataLogDir 日志文件目录
  • clientPort 客户端连接端口
  • tickTime 服务器之间或客户端与服务器之间维持心跳的时间间隔,也就是每个tickTime时间就会发送一个心跳。单位毫秒
  • initLimit 集群中follower服务器和leader服务器初始连接时能容忍的最多心跳数
  • syncLimit 集群中的follower服务器与leader服务器之间请求和应答之间能容忍的最多心跳数
  • server.N=YYY:A:B 集群信息,N服务器编号,YYY服务器IP地址,A为LF通信端口,表示该服务器与集群中的leader交换的信息的端口;B为选举端口,标识选举新leader时服务器间相互通信的端口(当leader挂掉时,其余服务器相互通信,选择新的leader)

3. zookeeper的data/myid配置

zookeeper1 对应的是 1,zookeeper2 对应的是 2,zookeeper3 对应的是 3

4. 启动节点,完成对zk集群的搭建

5. zk的基本操作

  • ls / 查看当前zk包含的所有内容
  • create /zk mydata 创建一个新的znode节点“zk”以及与它关联的字符串
  • get /zk 获取znode节点
  • delete /zk 删除节点
  • quit 退出客户端

注:安装jdk环境,且路径不包含特殊字符和空格

6. zk节点为什么是奇数个?

zk容错是指,当宕掉几个zk之后,剩下的个数必须大于宕掉的个数,也就是剩下的个数大于n/2,zk才可以继续使用,无论奇偶数都可以选举leader。是在最大容错服务器个数的条件下,节省资源,如果是6个zk,做多也就宕掉2个,没必要部署多余1个;集群中只有过半的机器正常工作,那么整个集群对外才是可用的。 2n和2n-1容忍是一样的,如果只部署2个zk,挂掉一个,剩下一个并不能构成quorum的大多数,部署2个比单机模式更不靠谱。

7. windows查看是否有2181端口

netstat -ano|findstr 2181

8. 搭建服务器注意的几点问题

zkServer.cmd文件末尾增加pause,避免闪退

‘wmic’ 不是内部或外部命令,也不是可运行的程序 解决方法
环境变量中增加%SystemRoot%;%SystemRoot%\system32;%SystemRoot%\System32\Wbem

kafka 安装

kafka是一种高吞吐量的分布式发布订阅系统

1. 官网下载kafka http://kafka.apache.org/downloads

2. 修改配置文件server.properties

  • log.dirs 定义日志的生成的位置,"/" 或者 转义字符"\",这样会生成正确的路径
  • zookeeper.connect 连接zk的ip以及端口

3. 启动kafka (确保zk已启动,需要zk这种分布式应用程序协调服务)

  • 在kafka目录中执行 .\bin\windows\kafka-server-start.bat .\config\server.properties
  • 注:不要关闭窗口,会按照默认在9092端口运行,并连接zookeeper默认端口2181
  • 在kafka下windows目录下: 创建主题 kafka-topics.bat --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test0811
  • 在kafka下windows目录下: 创建生产者 kafka-console-producer.bat --broker-list localhost:9092 --topic test0811
  • 在kafka下windows目录下: 创建消费者 kafka-console-consumer.bat --bootstrap-server localhost:9092 --topic test0811

操作日志的处理 kafka-run-class.bat文件中默认使用log4j.properties文件中的配置

更改配置可以将日志归档在一个文件下log4j.appender.kafkaAppender.File=C:/software/kafka/kafka_2.12-2.7.0/logs
消除不断生成日志的问题,就是同一天的不同时间不停生成 log4j.logger.kafka.controller=TRACE, controllerAppender
将trace改为INFO

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值