激动无比,终于成功搭建了一套集群的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. #10042. 「一本通 2.1 练习 8」收集雪花 || 离散化 || 双指针法 || C++ || LOJ

    题目:#10042. 「一本通 2.1 练习 8」收集雪花 看到网上没有这道题的题解,所以写一下. 要标记数字是否存在,看到x<=1e9,所以考虑用离散化,然后开一个last数组,last[i] ...

  2. pandas数据查询(数值、列表、区间、条件、函数)

    import pandas as pd # 0 读取数据 df = pd.read_csv("文件路径")#例子是北京一年的天气情况 df.head()#查看表头 # 设定索引为日 ...

  3. 一、ARM

    1.1 ARM 分类 1.1.1 版本号分类 以前分类的是 ARM7,ARM9... ARM11,在 ARM11 之后,就是以 Cortex 系列分类了: Cortex-R:应用在实时系统上的系列 C ...

  4. LinkedList与ArrayList的区别(内部实现)

    ArrayList的内部实现是基于内部数组Object[],所以从概念上讲,它更像数组: LinkedList的内部实现是基于一组连接的记录,所以,它更像一个链表结构,所以,它们在性能上有很大的差别. ...

  5. Cobaltstrike系列教程(三)-beacon详解

    0x000--前文 Cobaltstrike系列教程(一)-简介与安装 Cobaltstrike系列教程(二)-Listner与Payload生成 heatlevel 0x001-Beacon详解 1 ...

  6. Dubbo学习-1-基础知识

    分布式基础理论 1.什么是分布式系统: 分布式系统是若干独立计算机的集合,这些计算机对于用户来说就像是单个相关系统.分布式系统是建立在网络之上的软件系统 随着互联网发展,网站应用规模的不断扩大,常规的 ...

  7. 检测代理IP匿名程度的方法,很实用

    做网络的基本都知道代理,这个是肯定的,不管是用花刺还是猎手的网页代理,还是直接VPN的通道代理,代理有着不用说大家也知道的重要性.不管是做CPA还是做点击亦或者投票,代理都能帮我们一下,虽然帮的忙不大 ...

  8. 谜之WA

    完全k叉树 谜之WA #include<bits/stdc++.h> using namespace std; typedef unsigned long long ll; ll k,n; ...

  9. custom serializer for just one property in Json.NET

    Json序列化的时候跳过加密字段 字段类定义如下 public class Field { public bool IsEncrypted { get; set; } public string Na ...

  10. Linux之虚拟机里的REHL7的IP

    RHEL7最小化安装之后(桥接模式),我们查看本机IP, ip addr ifconfig 我们要修改配置文件 找到目录 找到文件,用vi编辑器打开修改配置文件 保存退出后,需要重启网络服务 只有我们 ...