kafka本地单机安装部署

kafka是一种高吞吐量的分布式发布订阅消息系统,这几天要上kafka,只在其中的一个节点使用,结合具体的项目实践在此将kafka的本地安装部署流程记录下来与各位同仁分享交流。
准备工作:
这里写图片描述

上述的文件除了jdk以外均放在/usr/local/kafka目录下。

1、安装jdk,kafka的使用要用到jdk
首先检查有无jdk:java -version
cd /usr/local/hadoop(本例中我是将jdk的安装包放到hadoop文件夹下,各位可以依据自己情况)
http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html
将下载的安装包上传到服务器上的/usr/local/hadoop文件夹下
tar-zxvf jdk-7u79-linux-x64.tar.gz
配置jdk的环境变量:
vim /etc/profile

这里写图片描述

使其立即生效 source /etc/profile
检查是否安装成功:java –version

这里写图片描述

至此jdk安装配置成功。

2、安装zookeeper
cd /usr/local/kafka
wget https://archive.apache.org/dist/zookeeper/zookeeper-3.3.6/zookeeper-3.3.6.tar.gz
tar -zxvf zookeeper-3.3.6.tar.gz
vim /etc/profile

这里写图片描述

使之立即生效
source /etc/profile

测试zookeeper是否安装成功
cd /usr/local/zookeeper-3.3.6/bin
./zkServer.sh start

这里写图片描述

如上图所示,即为zookeeper安装配置成功。

3、安装kafka
cd /usr/local/kafka
wget https://archive.apache.org/dist/kafka/0.8.0/kafka_2.8.0-0.8.0.tar.gz
tar -zxvf kafka_2.8.0-0.8.0.tar.gz
配置kafka,修改文件server.properties
cd /usr/local/kafka/kafka_2.8.0-0.8.0/config

这里写图片描述

vim server.properties

这里写图片描述

将上图中的host.name处写上本地服务器的IP地址

这里写图片描述

上图中的log.dirs结合自己所建的文件夹路径填写,没有严格要求

这里写图片描述

上图中的红框处默认为2181端口

配置kafka下zookeeper
mkdir /usr/local/kafka/zookeeper #创建zookeeper目录
mkdir /usr/local/kafka/log/zookeeper #创建zookeeper日志目录
cd /usr/local/kafka/kafka_2.8.0-0.8.0/config
vim zookeeper.properties

这里写图片描述

上图中的dataDir和dataLogDir可以依据自己建立的文件夹路径填写。

4、创建启动和关闭kafka脚本
(1)创建kafka脚本
vim kafkastart.sh

这里写图片描述

(2)创建关闭kafka脚本
vim kafkastop.sh

这里写图片描述

(3)添加脚本执行权限
chmod +x kafkastart.sh
chmod +x kafkastop.sh

(4)设置脚本开机启动自动执行
vim /etc/rc.d/rc.local

这里写图片描述

5、测试kafka

(1)创建主题
cd /usr/local/kafka/kafka_2.8.0-0.8.0/bin
./kafka-create-topic.sh –partition 1 –replica 1 –zookeeper localhost:2181 –topic test

这里写图片描述

检查主题是否创建成功
./kafka-list-topic.sh –zookeeper localhost:2181

这里写图片描述

(2)启动producer
./kafka-console-producer.sh –broker-list 192.168.18.229:9092 –topic test
(192.168.18.229是本地服务器IP地址,读者根据情况填写)

这里写图片描述

如上图所示,输入hello kafka!后,回车
然后另外打开一个shell终端
cd /usr/local/kafka/kafka_2.8.0-0.8.0/bin
在此终端下启动consumer
./kafka-console-consumer.sh –zookeeper localhost:2181 –topic test

这里写图片描述

由上图可见,终端1生产者下所输入的hello kafka!,在终端2下的消费者下显现,至此kafka的单机安装部署完成。

(6)关闭kafka

cd /usr/local/kafka
./kafkastop.sh

附:有可能遇到的问题和解决方案
问题1: Failed to acquire lock on file .
这里写图片描述

解决方案:
这是因为之前已经有kafka进程在运行,可以如下:
通过jps命令查看进程号,并kill掉,然后重新启动kafka即问题解决

这里写图片描述

问题2:BindException: Address already in use
这里写图片描述

解决方案:
这个有时可以忽略,只要最后成功启动了kafka就可以,也可以将server.properties下的2181的端口号换一下,这个报错是因为2181端口被占用了。

本页内容版权归属为原作者,如有侵犯您的权益,请通知我们删除。

Swift 存储目录 - 2016-07-20 17:07:03

  在 Storage node 上运行着 Linux系统并 使用了 XFS文件系统 ,逻辑上使用一致性哈希算法将固定总数的 partition 映射到每个 Storage node 上,每个 Data 也使用同样的哈希算法映射到 Partition 上,其层次结构如下图所示: Figure1:Stoage node hierachy     以我们的一台 storage node sws51 为例,该 device 的文件路径挂载到 /srv/node/sdc ,目录结构如下所示: root@sws51
翻译:@胡杨(superhy199148@hotmail.com) @胥可(feitongxiaoke@gmail.com) 校对调整: 寒小阳 龙心尘 时间:2016年7月 出处: http://blog.csdn.net/han_xiaoyang/article/details/51932536 http://blog.csdn.net/longxinchen_ml/article/details/51940065 说明:本文为斯坦福大学CS224d课程的中文版内容笔记,已得到斯坦福大学课程@Rich

三分钟部署Laxcus大数据系统 - 2016-07-20 17:07:47

Laxcus是Laxcus大数据实验室历时五年,全体系自主设计研发的国内首套大数据管理系统。能够支撑百万台级计算机节点,提供EB量级存储和计算能力,兼容SQL和关系数据库。 最新的2.x版本已经全面覆盖和集成当前大数据主流技术和功能 ,并投入到国内多个超算项目中使用。Laxcus同时也保持着使用和部署的极简性,所有对计算机略有认识的人都可以很容易掌握它。下面演示在一台Linux计算机上部署Laxcus demo系统的过程。根据我们的测试,这个部署过程大约需要三分钟,或者您熟悉Linux系统 ,也许不需要这

Devstack多节点部署实验 - 2016-07-20 14:07:52

本文为博主翻译文章,转载请注明出处Bob Hou: http://blog.csdn.net/minxihou 这是个在多物理服务器上部署openstack例子: 1 先决条件Linux网络 1.1 最小化安装系统 你需要一个刚安装好的Linux系统。你可以直接下载最小化的Ubuntu版本,devstack会下载安装所有额外的依赖关系。同样也支持网络安装Fedora,Centos/RHEL.安装几个包用于引导程序配置。 apt -get install -y git sudo || yum install
0 说明 0.1 备注 建立文件夹(sparkdir、hadoop、java、scala、spark) 每台机器均有/usr/sparkdir /hadoop /hadoop - 2.7 .2 /java /jdk1 .8 .0 _91 /scala /scala - 2.11 .8 /spark /spark - 1.6 .1 -bin -without -hadoop . tgz 0.2 用户组、用户管理 资源:http://www.cnblogs.com/vincedotnet/p/ 4017574
Ubuntu16.04安装Hadoop2.6+Spark1.6,并安装python开发工具Jupyter notebook,通过pyspark测试一个实例,調通整个Spark+hadoop伪分布式开发环境。 主要内容:配置root用户,配置Hadoop,Spark环境变量,Hadoop伪分布式安装并测试实例,spark安装并通过Jupter notebook进行开发实例,配置Jupter notebook兼容Python2和python3双内核共存开发。 默认已经正确安装了JDK,并设置了JAVA_HOM
摘要 MLlib(机器学习)分两种——监督学习,无监督学习。首先监督学习,类似普贝叶斯这样的分类算法。要求必须事先明确知道各个类别的信息,并且断言所有待分类项都有一个类别与之对应。显而眼见的是,这种需求另监督学习有很大的局限性,尤其在海量数据处理时。要预先处理数据以满足算法需求得耗费大量资源与时间。此时,可以使用聚类算法这样的无监督学习,相比于分类,聚类不依赖预定义的类和类标号的训练实例。本文将聚类算法拆分开来。深刻理解其思想。 相关知识 相异度计算——聚类,见名之意,便是将数据聚集起来,但是并非是将所有

Kubernetes1.3新特性 - 2016-07-20 14:07:33

本次分析的kubernetes版本号:v1.3.0。 scheduler模块 新增了kube-api-content-type参数,表示scheduler模块发送给api-server的请求类型,默认值是“application/vnd.kubernetes.protobuf”。 新增了hard-pod-affinity-symmetric-weight参数,表示POD调度规则亲和力的权重,取值范围从0到100。 新增了failure-domains参数,这是一个字符串参数,表示POD调度时亲和力参数。在
kafka学习之路(二)——提高 消息发送流程 因为Kafka 内在就是 分布式的 ,一个Kafka 集群通常包括多个代理。 为了均衡负载,将话题分成多个分区 , 每个代理存储一或多个分区 。 多个生产者和消费者能够同时生产和获取消息 。     过程: 1.Producer根据指定的partition方法(round-robin、hash等),将消息发布到指定topic的partition里面 2.kafka集群接收到Producer发过来的消息后,将其持久化到硬盘,并保留消息指定时长(可配置),而不关
(上图 2016微软全球合作伙伴大会吸引了144个国家的云解决方案商参会 ) ​2016年7月14日,历时三天的微软全球合作伙伴大会WPC 2016在加拿大多伦多落下帷幕,来自全球144个国家的16,000名软件开发商(ISV)、系统集成商(SI)、增值分销商(VAR)以及新一代云服务商(CSP)等汇聚一堂,他们也是全球最活跃、最顶尖的云计算生态代表。 在本次合作伙伴大会上,微软发布了合作伙伴“红宝书”——《当代微软合作伙伴系列:解决方案商如何在云世纪成功》。这本与IDC合作的书,历时4年完成,每年耗资上