Kafka集群安装,基于版本2.10,

使用kafka_2.10-0.10.1.0.tgz安装包。

1.安装规划

Storm集群模式,安装到下面三台机器

IP Hostname
10.43.159.237 zdh-237
10.43.159.238 zdh-238
10.43.159.239 zdh-239

Zookeeper集群,已经安装好

主机:zdh-237,zdh-238,zdh-239

端口:2181

用户:garrison/zdh1234

2.安装用户

kafka/zdh1234

useradd -g hadoop -s /bin/bash -md /home/kafka kafka

3.上传并且解压安装包

上传安装包:

ftp kafka_2.10-0.10.1.0.tgz

解压安装包:

tar -zxvf kafka_2.10-0.10.1.0.tgz

配置环境变量和别名,方便操作:

export KAFKA_HOME=/home/kafka/kafka_2.10-0.10.1.0
export PATH=$PATH:$KAFKA_HOME/bin
alias conf='cd $KAFKA_HOME/config'
alias logs='cd $KAFKA_HOME/logs'

创建本地数据存放的目录:

mkdir /home/kafka/kafka_2.10-0.10.1.0/kafka-logs

4.修改server.properties配置文件

broker.id=1
log.dirs=/home/kafka/kafka_2.10-0.10.1.0/kafka-logs
zookeeper.connect=zdh-237:2181,zdh-238:2181,zdh-239:2181

以下下配置项可以使用默认值:

port=9092
host.name=zdh-237
advertised.host.name=
num.partitions=2
log.retention.hours=168

参数说明:

# The id of the broker. This must be set to a unique integer for each broker.
#整数,建议根据ip区分,这里我是使用zookeeper中的id来设置 # The port the socket server listens on
# broker用于接收producer消息的端口 # Hostname the broker will bind to. If not set, the server will bind to all interfaces
# broker的hostname # Hostname the broker will advertise to producers and consumers. If not set, it uses the
# value for "host.name" if configured. Otherwise, it will use the value returned from
# java.net.InetAddress.getCanonicalHostName().
#这个是配置PRODUCER/CONSUMER连上来的时候使用的地址 # A comma seperated list of directories under which to store log files
#kafka存放消息文件的路径 # The default number of log partitions per topic. More partitions allow greater
# parallelism for consumption, but this will also result in more files across
# the brokers.
#topic的默认分区数 # The minimum age of a log file to be eligible for deletion
#kafka接收日志的存储目录(目前我们保存7天数据log.retention.hours=168) # Zookeeper connection string (see zookeeper docs for details).
# This is a comma separated host:port pairs, each corresponding to a zk
# server. e.g. "127.0.0.1:3000,127.0.0.1:3001,127.0.0.1:3002".
# You can also append an optional chroot string to the urls to specify the
# root directory for all kafka znodes.

5.拷贝Kafka到集群其他机器

将zdh-237上的kafka复制到其他机器上

scp -r kafka_2.10-0.10.1.0 kafka@zdh-238:/home/kafka

需要修改server.properties配置文件,

修改broker.id为其他整数,

修改host.name为当前所在机器,

参考示例:

broker.id=2
host.name=zdh-238

6.启动Kafka

/home/kafka/kafka_2.10-0.10.1.0/bin/kafka-server-start.sh /home/kafka/kafka_2.10-0.10.1.0/config/server.properties &>/home/kafka/kafka_2.10-0.10.1.0/catalina.log &

7.验证安装

7.1

在zdh-237上创建一个testTopic主题

KAFKA有3个,replication-factor就填3个

kafka-topics.sh --create --topic testTopic --replication-factor 3 --partitions 2 --zookeeper zdh-237:2181

7.2

在zdh-237上查看刚才创建的testTopic主题

kafka-topics.sh --list --zookeeper zdh-237:2181

7.3

在zdh-238上发送消息至kafka(模拟producer),发送消息"hello world"

kafka-console-producer.sh --broker-list zdh-237:9092 --sync --topic testTopic

然后输入hello wrold

7.4

在zdh-239上开启一个消费者(模拟consumer),可以看到刚才发送的消息"hello world"

kafka-console-consumer.sh --zookeeper zdh-237:2181 --topic testTopic --from-beginning

7.5

删除掉一个Topic,这里我们测试创建一个idoall的主题,再删除掉

kafka-topics.sh --create --topic idoall --replication-factor 3 --partitions 2 --zookeeper zdh-237:2181
kafka-topics.sh --delete --topic idoall --zookeeper zdh-237:2181

注意delete.topic.enable需要为true才能真正删除topic

#Switch to enable topic deletion or not, default value is false
delete.topic.enable=true

8.其他

8.1.Kafka Debug方法

在kafka-run-class.sh增加如下参数:

KAFKA_DEBUG=true
DEBUG_SUSPEND_FLAG="y"

8.2.清除kafka数据

执行如下命令:

rm -rf kafka-logs
mkdir kafka-logs

Kafka集群安装Version2.10的更多相关文章

  1. kafka集群安装部署

    kafka集群安装 使用的版本 系统:centos6.5 centos6.7 jdk:1.7.0_79 zookeeper:3.4.9 kafka:2.10-0.10.1.0 一.环境准备[只列,不具 ...

  2. KafKa集群安装详细步骤

    最近在使用Spring Cloud进行分布式微服务搭建,顺便对集成KafKa的方案做了一些总结,今天详细介绍一下KafKa集群安装过程: 1. 在根目录创建kafka文件夹(service1.serv ...

  3. KafKa集群安装、配置

    一.事前准备 1.kafka官网:http://kafka.apache.org/downloads. 2.选择使用版本下载. 3.kafka集群环境准备:(linux) 192.168.145.12 ...

  4. Centos7.4 kafka集群安装与kafka-eagle1.3.9的安装

    Centos7.4 kafka集群安装与kafka-eagle1.3.9的安装 集群规划: hostname Zookeeper Kafka kafka-eagle kafka01 √ √ √ kaf ...

  5. (Linux环境Kafka集群安装配置及常用命令

    Linux环境Kafka集群安装配置及常用命令 Kafka 消息队列内部实现原理 Kafka架构 一.下载Kafka安装包 二.Kafka安装包的解压 三.设置环境变量 四.配置kafka文件 4.1 ...

  6. Kafka集群安装Version1.0.1(自带Zookeeper)

    1.说明 Kafka集群安装,基于版本1.0.1, 使用kafka_2.12-1.0.1.tgz安装包, 其中2.12是编译工具Scala的版本. 而且不需要另外安装Zookeeper服务, 使用Ka ...

  7. zookeeper+kafka集群安装之二

    zookeeper+kafka集群安装之二 此为上一篇文章的续篇, kafka安装需要依赖zookeeper, 本文与上一篇文章都是真正分布式安装配置, 可以直接用于生产环境. zookeeper安装 ...

  8. zookeeper+kafka集群安装之一

    zookeeper+kafka集群安装之一 准备3台虚拟机, 系统是RHEL64服务版. 1) 每台机器配置如下: $ cat /etc/hosts ... # zookeeper hostnames ...

  9. zookeeper+kafka集群安装之中的一个

    版权声明:本文为博主原创文章.未经博主同意不得转载. https://blog.csdn.net/cheungmine/article/details/26678877 zookeeper+kafka ...

随机推荐

  1. 实现android自动化测试部署与运行Shell脚本分享

    我的配置是linux 64, android4.2.2的sdk. 实现的细节都在代码注释里了,变量名以及echo的内容也是说明的一部分. 主流程为: 1.检测是否指定端口的模拟器已经运行,若有则关闭2 ...

  2. JavaScript实现数组去重方法

    一.利用ES6 Set去重(ES6中最常用) function unique (arr) { return Array.from(new Set(arr)) } var arr = [1,1,'tru ...

  3. 【C/C++】贪心/算法笔记4.4/PAT B1020月饼/PAT B1023组内最小数

    简单贪心 所谓简单贪心,就是每步都取最优的一种方法. 月饼问题:有N种月饼,市场最大需求量D,给出每种月饼的库存量和总售价. 思路:从贵的往便宜的卖.如果当前的已经卖完了,就卖下一个.如果剩余D不足, ...

  4. 【HarmonyOS】【DevEco Studio】NOTE04:How to Jump to a Page(页面间的跳转)

    页面创建与基本设置 创建页面 创建两个新页面,分别为AbilityPage1.AbilityPage2 设置页面基本内容 以AbilityPage1为例 导包 import com.example.m ...

  5. Linux入侵 反弹shell

    目录 一.简介 二.命令 三.NetCat 一.简介 黑入服务器很少会是通过账号密码的方式进入,因为这很难破解密码和很多服务器都做了限制白名单. 大多是通过上传脚本文件,然后执行脚本开启一个端口,通过 ...

  6. 童鞋,[HttpClient发送文件] 的技术实践请查收

    1.荒腔走板 前几天有个童鞋在群里面问:怎么使用HttpClient发送文件? 之前我写了一个ABP上传文件,主要体现的是服务端,上传文件的动作是由前端小姐姐完成的, 我还真没有用HttpClient ...

  7. CF312A Whose sentence is it? 题解

    Content \(\texttt{Freda}\) 和 \(\texttt{Rainbow}\) 在网上聊了 \(n\) 句话.我们根据他们聊天的语句的特点来判断每一句是谁说的.\(\texttt{ ...

  8. CF1099A Snowball 题解

    Content 有一个重量为 \(w\) 的雪球从高度为 \(h\) 的位置开始滚落,每秒它的高度会减少 \(1\),同时在高度为 \(i\) 的位置它的重量会增加 \(i\).在雪球滚动的路线上还有 ...

  9. LuoguP2097 资料分发1 题解

    Content 有一些电脑,一部分电脑有双向数据线连接.如果一个电脑得到数据,它可以传送到的电脑都可以得到数据.现在,你有这个数据,问你至少将其输入几台电脑,才能使所有电脑得到数据. 数据范围:\(n ...

  10. grep的时候Binary file matches **.log 怎么解决

    操作 grep "hello world" test.log 结果 Binary file test.log matches 原因:grep认为test.log是二进制文件 解决方 ...