Kafka 完全分布式集群环境搭建
思路:
先在主机s1上安装配置,然后远程复制到其它两台主机s2、s3上,
并分别修改配置文件server.properties中的broker.id属性。
1、 搭建前准备
示例共三台主机,主机IP映射信息如下:
192.168.32.101 s1
192.168.32.102 s2
192.168.32.103 s3
搭建ZooKeeper 集群,搭建步骤参考:
https://www.cnblogs.com/jonban/p/zookeeper.html
2、下载 Kafka
下载地址:
https://mirrors.tuna.tsinghua.edu.cn/apache/kafka/2.2.0/kafka_2.12-2.2.0.tgz
3、解压到 /opt 下
tar -zxvf kafka_2.12-2.2.0.tgz -C /opt/
4、配置
进入到安装目录
cd /opt/kafka_2.12-2.2.0/
创建日志文件目录
mkdir logs
修改配置文件 config/server.properties
vi /opt/kafka_2.12-2.2.0/config/server.properties
修改以下属性配置
broker.id=1
log.dirs=/opt/kafka_2.12-2.2.0/logs
zookeeper.connect=s1:2181,s2:2181,s3:2181
5、远程复制到其它两台主机s2,s3上
scp -r /opt/kafka_2.12-2.2.0/ root@s2:/opt/
scp -r /opt/kafka_2.12-2.2.0/ root@s3:/opt/
登录主机s2
ssh s2
vi /opt/kafka_2.12-2.2.0/config/server.properties
修改 config/server.properties 中的 broker.id=2
broker.id=2
登录主机s3
ssh s3
vi /opt/kafka_2.12-2.2.0/config/server.properties
修改 config/server.properties 中的 broker.id=3
broker.id=3
6、配置三台主机环境变量
vi /etc/profile
添加如下内容:
export KAFKA_HOME=/opt/kafka_2.12-2.2.0
export PATH=$PATH:$KAFKA_HOME/bin
使用source命令使配置立即生效
source /etc/profile
7、启动
启动ZooKeeper 集群
zkServer.sh start
启动Kafka
kafka-server-start.sh -daemon /opt/kafka_2.12-2.2.0/config/server.properties
8、查看状态
在三台主机上分别输入 jps 命令,查看集群状态,内容如下:
[root@s1 ~]# jps
2852 QuorumPeerMain
3180 Kafka
[root@s2 ~]# jps
2788 QuorumPeerMain
3433 Kafka
[root@s3 ~]# jps
2791 QuorumPeerMain
3128 Kafka
启动正常!
9、测试
创建主题
kafka-topics.sh --create --zookeeper s1:2181,s2:2181,s3:2181 --replication-factor 3 --partitions 3 --topic test
查看主题列表
kafka-topics.sh --list --zookeeper s1:2181,s2:2181,s3:2181
生产者
kafka-console-producer.sh --broker-list s1:9092,s2:9092,s3:9092 --topic test
消费者
kafka-console-consumer.sh --bootstrap-server s1:9092,s2:9092,s3:9092 --from-beginning --topic test
10、停止kafka服务器,自带kafka-server-stop.sh 脚本无法正常停止,重写停止脚本,内容如下:
#!/bin/sh
PIDS=$(ps -ef | grep java | grep kafka | grep -v grep | awk '{print $2}')
for PID in $PIDS
do
kill - $PID
done
echo -e "Stop Finished!\n"
执行停止脚本
kafka-server-stop.sh
11、Spring boot 集成Kafka
参考:https://www.cnblogs.com/jonban/p/spring-kafka.html
Kafka 完全分布式集群环境搭建
.
Kafka 完全分布式集群环境搭建的更多相关文章
- Kafka:ZK+Kafka+Spark Streaming集群环境搭建(二十一)NIFI1.7.1安装
一.nifi基本配置 1. 修改各节点主机名,修改/etc/hosts文件内容. 192.168.0.120 master 192.168.0.121 slave1 192.168.0.122 sla ...
- Kafka:ZK+Kafka+Spark Streaming集群环境搭建(十)安装hadoop2.9.0搭建HA
如何搭建配置centos虚拟机请参考<Kafka:ZK+Kafka+Spark Streaming集群环境搭建(一)VMW安装四台CentOS,并实现本机与它们能交互,虚拟机内部实现可以上网.& ...
- Spark 1.6.1分布式集群环境搭建
一.软件准备 scala-2.11.8.tgz spark-1.6.1-bin-hadoop2.6.tgz 二.Scala 安装 1.master 机器 (1)下载 scala-2.11.8.tgz, ...
- Kafka:ZK+Kafka+Spark Streaming集群环境搭建(十三)kafka+spark streaming打包好的程序提交时提示虚拟内存不足(Container is running beyond virtual memory limits. Current usage: 119.5 MB of 1 GB physical memory used; 2.2 GB of 2.1 G)
异常问题:Container is running beyond virtual memory limits. Current usage: 119.5 MB of 1 GB physical mem ...
- Kafka:ZK+Kafka+Spark Streaming集群环境搭建(十二)VMW安装四台CentOS,并实现本机与它们能交互,虚拟机内部实现可以上网。
Centos7出现异常:Failed to start LSB: Bring up/down networking. 按照<Kafka:ZK+Kafka+Spark Streaming集群环境搭 ...
- Kafka:ZK+Kafka+Spark Streaming集群环境搭建(十一)定制一个arvo格式文件发送到kafka的topic,通过Structured Streaming读取kafka的数据
将arvo格式数据发送到kafka的topic 第一步:定制avro schema: { "type": "record", "name": ...
- Kafka:ZK+Kafka+Spark Streaming集群环境搭建(九)安装kafka_2.11-1.1.0
如何搭建配置centos虚拟机请参考<Kafka:ZK+Kafka+Spark Streaming集群环境搭建(一)VMW安装四台CentOS,并实现本机与它们能交互,虚拟机内部实现可以上网.& ...
- Kafka:ZK+Kafka+Spark Streaming集群环境搭建(八)安装zookeeper-3.4.12
如何搭建配置centos虚拟机请参考<Kafka:ZK+Kafka+Spark Streaming集群环境搭建(一)VMW安装四台CentOS,并实现本机与它们能交互,虚拟机内部实现可以上网.& ...
- Kafka:ZK+Kafka+Spark Streaming集群环境搭建(三)安装spark2.2.1
如何搭建配置centos虚拟机请参考<Kafka:ZK+Kafka+Spark Streaming集群环境搭建(一)VMW安装四台CentOS,并实现本机与它们能交互,虚拟机内部实现可以上网.& ...
随机推荐
- 利用C++创建DLL并C#调用
日期:2018年11月26日 环境:window 10,VS2015 community 一.利用C++创建DLL 1.新建项目: 2.打开CreateDLL.cpp文件,并输入测试代码 #inclu ...
- offsetLeft在各浏览器的值
上网找了好久没有找到一个offsetLeft在各浏览器的值,自己用了一晚上的时间在各浏览器测试出来的offsetLeft的值. <!DOCTYPE html> <html lang= ...
- PJzhang:web漏洞扫描工具sitadel
猫宁!!! 参考链接:https://www.freebuf.com/sectool/194769.html 转变博客的写作思路,力求精简快捷,不浪费自己或者他人的时间. sitadel是一款精简的w ...
- Ant Design中的Form组件
1. 使用Form.create()包裹过的组件可以获取到this.props.form属性 Form.create()(Comp) 2. getFieldDecorator() // 在表单中的使用 ...
- redids
Redis 地理位置(geo) Redis 键(key) Redis 字符串(String) Redis 哈希(Hash) Redis 列表(List) Redis 集合(Set) Redis 有序集 ...
- 上传、裁剪图片-----Jcrop图片裁剪插件
Jcrop文档:http://code.ciaoca.com/jquery/jcrop/C#裁剪:http://www.cnblogs.com/xyang/archive/2013/02/25/293 ...
- 图片旋转js代码
function rotateImage(imgId) { imageToRotate = document.getElementById(imgId); imageToRotate.style.fi ...
- POJ-2186-Popular Cows(强连通分量,缩点)
链接:https://vjudge.net/problem/POJ-2186 题意: 有N(N<=10000)头牛,每头牛都想成为most poluler的牛,给出M(M<=50000)个 ...
- 2017"百度之星"程序设计大赛 - 初赛(A)小C的倍数问题
Problem Description 根据小学数学的知识,我们知道一个正整数x是3的倍数的条件是x每一位加起来的和是3的倍数.反之,如果一个数每一位加起来是3的倍数,则这个数肯定是3的倍数. 现在给 ...
- jQuery基础(3)
摘要:jQuery的位置信息,JS的事件流的概念(重点),事件对象,jQuery的事件绑定和解绑,时间委托(时间代理) 一.jQuery的位置信息 jQuery的位置信息跟JS的client系列.of ...