激动无比,终于成功搭建了一套集群的kafka,记录下我的搭建步骤,供大家参考,如有不对,请指正:

1.集群搭建

首先搭建一个一主三从(或一主两从)的集群,

2.配置jdk环境

需要是jdk8的包

我的是ubuntu14,需要预选准备jdk包,然后解压配置环境变量

路径:/usr/local/jdk

解压:tar -zxvf jdk-8u191-linux-x64.tar.gz

配置环境变量

编辑/etc/profile:vi /etc/profile

设置:

export JAVA_HOME=/usr/local/jdk/jdk1.8.0_191

export JRE_HOME=${JAVA_HOME}/jre

export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib

export PATH=${JAVA_HOME}/bin:$PATH

更新配置生效:source /etc/profile

无效解决方法:

检查~/.profile 和~/.bashrc 文件是否有环境变量配置存在,

(~/.bashrc ~/.profile /etc/profile)前两个是当前用户的配置,后面是系统配置,集群中的服务器配置相同

卸载jdk:

卸载:

$ sudo apt-get autoremove default-jdk

如果不能卸载干净,用下面的方法彻底卸载:

1、卸载JDK

$ sudo apt-get update

$ sudo apt-cachesearch java | awk '{print($1)}' | grep -E -e '^(ia32-)?(sun|oracle)-java' -e'^openjdk-' -e '^icedtea' -e '^(default|gcj)-j(re|dk)' -e '^gcj-(.*)-j(re|dk)'-e 'java-common' | xargs sudo apt-get -y remove

$ sudo apt-get -yautoremove

2、清除配置信息:

$ dpkg -l | grep ^rc | awk '{print($2)}' |xargs

$ sudo apt-get -y purge

3、清除java配置及缓存:

$ bash -c 'ls -d /home/*/.java' | xargs

$ sudo rm -rf

4、手动清除JVMs:

$ rm -rf /usr/lib/jvm/*

依次配置其他三台jdk

3.zookeeper安装

搭建zookeeper,zookeeper可以自行搭建也可以使用kafka内置zookeeper,我这里使用的是单独搭建的zookeeper

下载安装

下载安装包到指定目录

wget http://mirrors.hust.edu.cn/apache/zookeeper/zookeeper-3.4.13/zookeeper-3.4.13.tar.gz

解压:tar -zxvf zookeeper-3.4.13.tar.g

编辑配置

进入conf目录下:

配置环境变量前先复制一份zoo.cfg:cp zoo_sample.cfg zoo.cfg

编辑文件zoo.cfg:vi zoo.cfg

设置

#数据目录

dataDir=/usr/local/zookeeper/data

#日志目录

dataLogDir=/usr/local/zookeeper/data/log

#集群配置,四台设备的ip

server.1=192.168.56.100:2888:3885

server.2=192.168.56.101:2888:3886

server.3=192.168.56.102:2888:3887

server.4=192.168.56.103:2888:3888

保存退出

最后指定myid,放在dataDir=/usr/local/zookeeper/data目录下

切换到数据所在目录下:cd /usr/local/zookeeper/data

设置myid:echo '1' >myid #从1开始

安装其他三台

其中myid顺序配置

启动

依次在四台机执行启动:/usr/local/zookeeper/zookeeper-3.4.13/bin/zkServer.sh  start

查看状态:/usr/local/zookeeper/zookeeper-3.4.13/bin/zkServer.sh  status

停止:/usr/local/zookeeper/zookeeper-3.4.13/bin/zkServer.sh  stop

4.Kafka安装

下载启动

下载安装包到指定目录:wget http://mirror.bit.edu.cn/apache/kafka/2.2.1/kafka_2.12-2.2.1.tgz

解压:tar -zxvf kafka_2.12-2.2.1.tgz

新建日志目录:mkdir kafkalogs

编辑配置

进入到配置目录:cd config

编辑配置文件:vi server.properties

设置

#每个节点的broker.id 都不能相同,从0开始这是,后面其他三台依次配置1、2、3

broker.id=0

#默认PLAINTEXT://:9092

listeners=PLAINTEXT://:9092

#设置为主机名

advertised.listeners=PLAINTEXT://master:9092

#配置日志目录

log.dirs=/usr/local/kafka/kafkalogs

#设置zookeeper的连接信息,多个zookeeper用,分隔

zookeeper.connect=master.local:2181,slave-2.local:2181,slave-2.local:2181

#设置可以删除topic,末尾加入

delete.topic.enable=true

安装其他三台

其中broker.id顺序配置

启动

依次在四台机执行启动:前台启动,可以直接看到启动执行的日志:

/usr/local/kafka/kafka_2.12-2.2.1/bin/kafka-server-start.sh  /usr/local/kafka/kafka_2.12-2.2.1/config/server.properties

后台启动:

/usr/local/kafka/kafka_2.12-2.2.1/bin/kafka-server-start.sh  /usr/local/kafka/kafka_2.12-2.2.1/config/server.properties &

查看状态:jps

关闭zookeeper:/usr/local/kafka/kafka_2.12-2.2.1/bin/kafka-server-stop.sh

kafaka环境搭建的更多相关文章

  1. Kafaka高可用集群环境搭建

    zk集群环境搭建:https://www.cnblogs.com/toov5/p/9897868.html 三台主机每台的Java版本1.8 下面kafka集群的搭建:  3台虚拟机均进行以下操作:  ...

  2. 【入门教程】kafka环境搭建以及基础教程

    问题导读 1.Kafka独特设计在什么地方?2.Kafka如何搭建及创建topic.发送消息.消费消息?3.如何书写Kafka程序?4.数据传输的事务定义有哪三种?5.Kafka判断一个节点是否活着有 ...

  3. Kafka单机Windows环境搭建

    Kafka单机Windows环境搭建 1,安装jdk1.8:安装目录不能有中文空格: 2,下载zookeeper,https://mirrors.cnnic.cn/apache/zookeeper/z ...

  4. .NET Core系列 : 1、.NET Core 环境搭建和命令行CLI入门

    2016年6月27日.NET Core & ASP.NET Core 1.0在Redhat峰会上正式发布,社区里涌现了很多文章,我也计划写个系列文章,原因是.NET Core的入门门槛相当高, ...

  5. Azure Service Fabric 开发环境搭建

    微服务体系结构是一种将服务器应用程序构建为一组小型服务的方法,每个服务都按自己的进程运行,并通过 HTTP 和 WebSocket 等协议相互通信.每个微服务都在特定的界定上下文(每服务)中实现特定的 ...

  6. rnandroid环境搭建

    react-native 环境搭建具体步骤这个大家已经玩烂了,这个主要是记录下来自己做win7系统遇到的坑 1.com.android.ddmlib.installexception 遇到这个问题,在 ...

  7. python开发环境搭建

    虽然网上有很多python开发环境搭建的文章,不过重复造轮子还是要的,记录一下过程,方便自己以后配置,也方便正在学习中的同事配置他们的环境. 1.准备好安装包 1)上python官网下载python运 ...

  8. springMVC初探--环境搭建和第一个HelloWorld简单项目

    注:此篇为学习springMVC时,做的笔记整理. MVC框架要做哪些事情? a,将url映射到java类,或者java类的方法上 b,封装用户提交的数据 c,处理请求->调用相关的业务处理—& ...

  9. 【定有惊喜】android程序员如何做自己的API接口?php与android的良好交互(附环境搭建),让前端数据动起来~

    一.写在前面 web开发有前端和后端之分,其实android还是有前端和后端之分.android开发就相当于手机app的前端,一般都是php+android或者jsp+android开发.androi ...

随机推荐

  1. [Poj2349]Arctic Network(二分,最小生成树)

    [Poj2349]Arctic Network Description 国防部(DND)要用无线网络连接北部几个哨所.两种不同的通信技术被用于建立网络:每一个哨所有一个无线电收发器,一些哨所将有一个卫 ...

  2. [python 学习] sax

    #!/usr/bin/python # -*- coding: UTF-8 -*- import xml.sax class MovieHandler( xml.sax.ContentHandler ...

  3. [php 拓展开发] hello world

    1.下载php源码包 2.在php-7.0.9/ext 下执行 ./ext_skel --extname=hello  3. 4.拓展代码 5. 6.编译 多了分号,出错. 重新编译成功,但是生成的文 ...

  4. onupdate

    数据的初始化显示刚开始写在onupdate中,文档类中的数据更新之后,希望通过调用UpdateAllViews(FALSE)来实现视图的更新,可以实现!后来觉得不妥,想把初始化显示写在ondraw中, ...

  5. 浅谈MySQL优化

    本文整理了一些MySQL的通用优化方法,做个简单的总结分享,旨在帮助那些没有专职MySQL DBA的企业做好基本的优化工作,至于具体的SQL优化,大部分通过加适当的索引即可达到效果,更复杂的就需要具体 ...

  6. vue 3.0 vue-cli项目搭建要点

    一.使用vue-cli搭建项目(可使用vue ui图形化界面搭建项目,配置dist时,将名称设为项目名称) 二.项目搭建后 1.配置vue.config.js // 翻阅文档https://cli.v ...

  7. ::before和::after的详细介绍

    原文传送门: https://www.cnblogs.com/staro... 一.介绍 css3为了区分伪类和伪元素,伪元素采用双冒号写法. 常见伪类--:hover,:link,:active,: ...

  8. oracle、sql developer 删除某用户下所有的表

    1.在sql developer内   select 'drop table "'||table_name||'";'   from cat   where table_type= ...

  9. ORA-00020: maximum number of processes (800) exceeded

    [oracle@db04-1 ~]$ sqlplus -prelim / as sysdba SQL*Plus: Release 11.2.0.3.0 Production on 星期四 8月 31 ...

  10. loj#137 最小瓶颈路 加强版

    分析 我们知道答案一定再最小生成树上 于是我们按边权从小到大建立kruskal重构树 然后每次查询lca的值即可 由于询问较多采用st表维护lca 代码 格式化代码 #include<bits/ ...