kafka安装与集群部署(for Linux)(八)

目录

1. kafka安装

1.1 准备工作

1)下载地址

 2)本地文件保存目录

 3)文件上传

1.2 安装

 1.3 修改名称

 1.4 查看已安装的kafka目录

 1)查看bin目录内容

2)查看config目录内容

3)查看libs目录内容

1.5 创建文件存储目录

1.6 配置环境变量

​编辑 2. 集群配置

2.1 修改server.properties配置文件

 2.2 分发kafka安装包

 2.3 修改集群中其他虚拟机的server.properties

2.4 分发kafka环境变量

3. Kafka集群的启停

3.1 手动启停(不用)

1)手动启动

2) 手动停止

3.2 自动启停

1)创建 kf.sh 脚本

2)添加kf.sh文件执行权限

3)启动集群


1. kafka安装

1.1 准备工作

1)下载地址

kafka官网下载地址

 2)本地文件保存目录

 3)文件上传

将下载好的文件通过Termius工具,上传到虚拟机的/opt/software目录

1.2 安装

解压安装包到指定目录/opt/module目录下。

# /opt/software
[root@hadoop102 software]# tar -zxvf kafka_2.12-3.0.0.tgz -C /opt/module/

 1.3 修改名称

安装好的文件名过长,修改的短一点。

# /opt/module
[root@hadoop102 module]# mv kafka_2.12-3.0.0/ kafka

 

 1.4 查看已安装的kafka目录

 1)查看bin目录内容

所在目录: /opt/module/kafka/bin 

注: kafka是由生产者、消费者、主题组成,其中每一个模块对应一个脚本文件(如上图)。

2)查看config目录内容

所在目录: /opt/module/kafka/config

 kafka的每一个模块都对应一个配置文件。

server.properties配置文件记录有集群信息。

3)查看libs目录内容

全部都是第三方jar包。

1.5 创建文件存储目录

/opt/module/kafka/目录下创建一个datas目录

[root@hadoop102 ~]# cd /opt/module/kafka
[root@hadoop102 kafka]# mkdir datas

1.6 配置环境变量

(1)在/etc/profile.d/my_env.sh 文件中增加 kafka 环境变量配置

[root@hadoop102 ~]# vim /etc/profile.d/my_env.sh

增加如下内容:

#KAFKA_HOME

export KAFKA_HOME=/opt/module/kafka

export PATH=$PATH:$KAFKA_HOME/bin

(2)刷新一下环境变量

[root@hadoop102 ~]# source /etc/profile

(3)查看环境变量

[root@hadoop102 ~]# echo $PATH

 2. 集群配置

集群规划

hadoop102

hadoop103

hadoop104

zk

zk

zk

kafka

kafka

kafka

不是所有的服务器都要部署,而是那些服务器需要才部署。以上面三个为例:

2.1 修改server.properties配置文件

[root@hadoop102 ~]# cd /opt/module/kafka/config/
[root@hadoop102 config]# vim server.properties

修改三个参数: broker.idlog.dirszookeeper.connect

输入以下内容:


#broker 的全局唯一编号不能重复只能是数字。kafka在整个集群中的身份唯一标识,不能重复

(hadoop102为0,hadoop103为1,hadoop104为2)

broker.id=0

#kafka存放数据的目录

log.dirs=/opt/module/kafka/datas

#配置连接 Zookeeper 集群地址在 zk 根目录下创建/kafka,方便管理

zookeeper.connect=hadoop102:2181,hadoop103:2181,hadoop104:2181/kafka


 2.2 分发kafka安装包

[root@hadoop102 ~]# xsync /opt/module/kafka/

返回到module目录下,对当前安装并修改的kafka进行分发;

 2.3 修改集群中其他虚拟机的server.properties

分别在 hadoop103 和 hadoop104 上修改配置文件/opt/module/kafka/config/server.properties

中的 broker.id=1、broker.id=2

注:broker.id 不得重复,整个集群中唯一

[root@hadoop103 ~]# vim /opt/module/kafka/config/server.properties

修改: broker.id=1

[root@hadoop104 ~]# vim /opt/module/kafka/config/server.properties

修改: broker.id=2

2.4 分发kafka环境变量

分发环境变量文件到其他节点,并刷新环境配置。

[root@hadoop102 ~]# xsync /etc/profile.d/my_env.sh

打开另外两台主机终端

[root@hadoop103 ~]# source /etc/profile

[root@hadoop104 ~]# source /etc/profile

3. Kafka集群的启停

前提启动前先启动zk集群,关闭前要先关闭kafka集群

启停zk集群命令:

zk.sh脚本

# 自动启动zk集群
[root@hadoop102 ~]# zk.sh start
# 自动停止zk集群 
[root@hadoop102 ~]# zk.sh stop

查看集群运行进程: jpsall脚本

jpsall脚本

[root@hadoop102 ~]# jpsall

3.1 手动启停(不用)

1)手动启动

依次在 hadoop102、hadoop103、hadoop104 节点上启动 Kafka。

切换到kafka目录(cd /opt/module/kafka)

[root@hadoop102 kafka]# bin/kafka-server-start.sh -daemon config/server.properties
[root@hadoop103 kafka]# bin/kafka-server-start.sh -daemon config/server.properties
[root@hadoop104 kafka]# bin/kafka-server-start.sh -daemon config/server.properties

2) 手动停止

[root@hadoop102 kafka]# bin/kafka-server-stop.sh 
[root@hadoop103 kafka]# bin/kafka-server-stop.sh 
[root@hadoop104 kafka]# bin/kafka-server-stop.sh

3.2 自动启停

1)创建 kf.sh 脚本

在/root/bin 目录下创建文件 kf.sh 脚本文件。

[root@hadoop102 bin]$ vim /root/bin/kf.sh

脚本如下:

#! /bin/bash

case $1 in
"start"){
    for i in hadoop102 hadoop103 hadoop104
    do
        echo " --------启动 $i Kafka-------"
        ssh $i "/opt/module/kafka/bin/kafka-server-start.sh -daemon /opt/module/kafka/config/server.properties"
    done
};;
"stop"){
    for i in hadoop102 hadoop103 hadoop104
    do
        echo " --------停止 $i Kafka-------"
        ssh $i "/opt/module/kafka/bin/kafka-server-stop.sh "
    done
};;
esac

2)添加kf.sh文件执行权限

[root@hadoop102 bin]# chmod 777 kf.sh

3)启动集群

注意: 先启动zk集群

[root@hadoop102 ~]# kf.sh start

4)停止集群命令

注意: 先停止zk集群,否则只能通过kill -9 端口停止kafka。

[root@hadoop102 ~]# kf.sh stop

 

注意:停止 Kafka 集群时,一定要等 Kafka 所有节点进程全部停止后再停止 Zookeeper

集群。因为 Zookeeper 集群当中记录着 Kafka 集群相关信息,Zookeeper 集群一旦先停止,

Kafka 集群就没有办法再获取停止进程的信息,只能手动杀死 Kafka 进程了(kill -9 端口)。

 例如:

杀死hadoop102中的4301端口

kill -9 端口

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值