大数据技术之 Kafka (第 2 章 Kafka快速入门)

                                   第 2 章 Kafka 快速入门 

下载安装kafka集群

1.需要jdk

2.需要zookeeper,这个东西在最新版的Kafka中内置。

3.下载Kafka安装包 (下载官网地址:Apache Kafka)

一,下载Kafka安装包

二,Kafka安装包上传linux

这里我选择了最新版本下载,然后上传到centos7下,这里我使用xftp5这个工具上传到usr/local/software目录下(这里我上台机器都上传了,为了后面搭建集群使用)

上传已经ok,那我们使用xshell工具链接到字节的虚拟机centos7

首先进入到/usr/local/software这个目录

我们已经看见kafka的这个tar包

三,接下来我们需要解压这个tar包

1)使用这个命令解压这里我的解压目录是 /usr/local/hadoop/kafka/       tar -zxvf kafka_2.12-2.4.1.tgz -C /usr/local/hadoop/kafka/

2)修改解压后的文件名称 

    这里我没有修改目录名字              可以修改   mv kafka_2.12-2.4.1/ kafka   我不改的原因是这样看起来直观知道用的那个版本的

3)在/usr/local/hadoop/kafka/kafka_2.12-2.4.1/  目录下创建 logs 文件夹 

4)修改配置文件 

#broker 的全局唯一编号,不能重复 broker.id=0 
#删除 topic 功能使能 delete.topic.enable=true 
#处理网络请求的线程数量 num.network.threads=3 
#用来处理磁盘 IO 的现成数量 num.io.threads=8 
#发送套接字的缓冲区大小 socket.send.buffer.bytes=102400 
#接收套接字的缓冲区大小 socket.receive.buffer.bytes=102400 
#请求套接字的缓冲区大小 socket.request.max.bytes=104857600 
#kafka 运行日志存放的路径 log.dirs=/usr/local/hadoop/kafka/kafka_2.12-2.4.1/logs 
#topic 在当前 broker 上的分区个数 num.partitions=1 
#用来恢复和清理 data 下数据的线程数量 num.recovery.threads.per.data.dir=1 
#segment 文件保留的最长时间,超时将被删除 log.retention.hours=168 
#配置连接 Zookeeper 集群地址 zookeeper.connect=backup01:2181,backup02:2181,backup03:2181 

注意新版本是kafka是内置zookeeper  我们可以看见这个zookeeper.properties这个配置文件

注意:这里根据你的需要选择是内置zookeeper还是自己安装的zookeeper,我使用的是自己安装的zookeeper。

四,环境变量的配置    vim /etc/profile

[root@backup01 java]# source /etc/profile

五,将配置好的zookeeper分发到集群的所有机器

经过上面的四个步骤kafka已经配置完毕,然后将其依次拷贝的集群的其他机器中。快捷一点可以使用 scp 命令来做这件事:

scp 本地zookeeper安装目录 登陆远程机器的用户名@远程机器地址 : 远程机器存放kafka的地址eg:scp -r kafka skyler@slave1:/usr/local/hadoop/

六,不知道大家有没有关注到前面说过的  server.properties

#broker 的全局唯一编号,不能重复 broker.id=0 

所以我们需要修改集群下的这个全局唯一编号  broker.id(注意这个id只能是Interger类型)

将集群backup02  backup03机器侠的kafkabroker.id分别改为1和2

cd /usr/local/hadoop/kafka/kafka_2.12-2.4.1/config
vim server.properties

到这里基本搭建完成

启动zk zk的集群安装和启动参考这篇博客

启动kafka集群    启动命令并且要指定配置文件config/server.properties

依次在 backup01、backup02、backup03 节点上启动 kafka 
cd /usr/local/hadoop/kafka/kafka_2.12-2.4.1/
[root@backup01 kafka_2.12-2.4.1]# bin/kafka-server-start.sh config/server.properties
[root@backup02 kafka_2.12-2.4.1]# bin/kafka-server-start.sh config/server.properties
[root@backup03 kafka_2.12-2.4.1]# bin/kafka-server-start.sh config/server.properties

启动报内存不足解决办法

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/576500.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

使用ICSharpCode.TextEditor制作一个语法高亮显示的XML编辑器

本文转载:http://www.cnblogs.com/lefay/archive/2010/07/25/1784919.html转载于:https://www.cnblogs.com/51net/archive/2012/04/21/2462431.html

文因互联 CEO 鲍捷:确保搞砸人工智能项目的十种方法

文因互联 CEO 鲍捷:确保搞砸人工智能项目的十种方法 原文链接 原创: 鲍捷 文因互联 前天 做成一件事儿不容易,而坑恒在。 鲍捷博士于5月10日在将门创投的线上 talk 中盘点了人工智能项目的大坑小坑,选出了看上去非常反常识的十…

启动kafka失败报内存不足(Cannot allocate memory)

原因分析,因为我的虚拟机内存一共才1G 查看一下我的虚拟机内存还剩余多少? 天呐,我的只有60M了 我们看下kafka的启动脚本 vim kafka-server-start.sh 看见下面的脚本文件内容没有,默认是1G,而我只有60M&#xff0…

Introduce Null Object(引入Null对象)

Introduce Null Object(引入Null对象)你需要再三检查某对象是否为null。将null值替换为null对象。if (customer null) plan BillingPlan.basic(); else plan customer.getPlan(); 动机多态的最根本好处在于:你不必再向对象询问"你是…

zookeeper Error contacting service. It is probably not running

通过命令zkServer.sh start之后,显示STARTED 通过client测试报错 无法连接 连接关闭 Connecting to localhost:2181 2020-03-29 12:44:31,855 [myid:] - INFO [main:Environment100] - Client environment:zookeeper.version3.4.13-2d71af4dbe22557fda74f9a9b430…

引言

推荐系统从0到1_引言什么是推荐?什么是推荐系统?推荐系统的应用什么是推荐? 说起推荐,就不得不说搜索。搜索这里指信息检索,在大量的信息中,我们需要找到自己需要的信息,就用到了搜索引擎&…

JNI的方式调用DLL(SO)(上)

最近有个项目要调用原有的DLL文件,本来准备使用JNA,可是客户不同意,非要使用JNI的方式。万般无奈之下,只能重新使用JNI,现将JAVA调用动态链接库的一般方法总结如下。 JNI是Java Native Interface(JAVA本地调…

搭建推荐系统所需要的材料

搭建推荐系统所需要的材料人力物力推荐系统的原材料物品流量最后人力物力 在上一小节中《推荐系统的必要性》里已经讨论过一个推荐业务团队需要哪些人员储备,需要什么核心技术等。这里在重点说下物力,即机器资源设备。 往往从头开始搭建这样一个团队&a…

kafka:topic为什么要进行分区?副本机制是如何做的?

kafka为什么要在topic里加入分区的概念?如果没有分区,topic中的segment消息写满后,直接给订阅者不是也可以吗? Kafka可以将主题划分为多个分区(Partition),会根据分区规则选择把消息存储到哪个分区中,只要如…

将某字符串切割成阵列并排序列出

老师布置的另外一道题是将字符串"a;b;d;z;y;u"切割成阵列并排序列出。老师出这题也许是让Insus.NET掌握或复习Array.Sort()函数,不管怎样,先按自己的想法实现,然后是等老师的意见。protected void Page_Load(object sender, EventA…

关于管理,这5大误区你越早知道越好

关于管理,这5大误区你越早知道越好 原创: 陈春花 管理的常识 绝大部分人都感觉自己已经非常努力地工作,但结果却不尽如人意,到底问题出在哪里? 就让北京大学国家发展研究院管理学教授、北大国发院BiMBA商学院院长陈春…

大数据技术之 Kafka (第 3 章 Kafka 架构深入 ) Log存储解析

Kafka 工作流程 Kafka 中消息是以 topic 进行分类的,生产者生产消息,消费者消费消息,都是面向 topic的。 topic 是逻辑上的概念,而 partition 是物理上的概念,每个 partition 对应于一个 log 文件,该 log…

推荐系统整体框架概览

推荐系统整体框架概览推荐系统整体架构 推荐系统的核心组成部分离线核心节点服务UI总结推荐系统整体架构 先说点题外话,最近在看的书中讲到了怎么进行自学的方法,分了十个层级。第一个便是要了解所学内容的概况,也就是轮廓,大的东…

大数据技术之 Kafka (第 3 章 Kafka 架构深入 ) Kafka 生产者

3.2.1 分区策略 1)分区的原因 (1)方便在集群中扩展,每个 Partition 可以通过调整以适应它所在的机器,而一个 topic又可以有多个 Partition 组成,因此整个集群就可以适应任意大小的数据了; &a…

MySQL定时备份实现

一、备份数据库 –all-databases 备份所有数据库 /opt/mysqlcopy/all_$(date “%Y-%m-%d %H:%M:%S”).sql 备份地址 docker exec -it 容器名称 sh -c "mysqldump -u root -ppassword --all-databases > /opt/mysqlcopy/all_$(date "%Y-%m-%d %H:%M:%S").sq…

程序员健身的重要性

程序员健身的重要性人的身体就是人的灵魂最好的写照! --- 路德维系.维特根斯坦 健身不仅是保持健康体魄的关键要素之一,也是灵活的、具有创造性的脑力活动的基础。 --- 约翰.肯尼迪 …

Java 8 中的哈希表

JDK 的代码是开源的,我们打开idea开发工具,引入jdk1.8 找到hashmap HashMap 是基于 HashTable 的一种数据结构,在普通哈希表的基础上,它支持多线程操作以及空的 key 和 value。 在 HashMap 中定义了几个常量: static final in…

NSJSONSerialization介绍

ios5中apple增加了解析JSON的api——NSJSONSerialization。网上已经有人做过测试,NSJSONSerialization在效率上完胜SBJSON、TouchJSON、YAJL、JSONKit、NextiveJson。详情见这里。既然apple为我们提供了这么良好的工具,我们没理由不用吧。 NSJSONSeriali…

[转帖]ISE与Modelsim联合观察中间信号

如何仿真IP核(建立modelsim仿真库完整解析) 来源:http://www.ednchina.com/ART_49023_19_0_AN_7116cf44.HTM IP核生成文件:(Xilinx/Altera 同) IP核生成器生成 ip 后有两个文件对我们比较有用,假…

sql server 2008学习12 事务和锁

事务 事务的点: 1.begin tran 是事务开始的地方,也是 事务回滚的起点.也就说他会忽略这个起点之后的最终没有提交的所有语句, 2.commit tran 事务的提交 是一个事务的终点 当发出 commit tran命令时,可以认为 该事务是 持久的. 撤销已完成事务的唯一方法 是 发出一个新的事务.…