kafka集群搭建+服务自启

13 篇文章 0 订阅
10 篇文章 0 订阅

说明:至少准备三台linux主机,此外kafka有内置zookeeper,也可以自己安装zookeeper,本文使用的是自己安装的

一、下载并解压kafka

cd到要安装的目录:

wget http://mirrors.tuna.tsinghua.edu.cn/apache/kafka/2.3.1/kafka_2.12-2.3.1.tgz

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

二、修改环境变量

vim /etc/profile

例如小编的配置:

export ZOOKEEPER_HOME=/usr/local/zookeeper-3.4.9/
export PATH=$ZOOKEEPER_HOME/bin:$PATH
export KAFKA_HOME=/usr/local/kafka
export PATH=$KAFKA_HOME/bin:$PATH
export PATH

使配置生效:

source /etc/profile

三、修改kafka 配置文件

[root@ms kafka]# cd config/
[root@ms config]# vim server.properties 

  修改的复方如下:

    注:其他主机配置安装也一样

四、启动、关闭及先后循序

先启动zookeeper集群,再启动kafka集群,否则kafka启动失败。

  1、启动(后台运行方式):

[root@ms kafka]# cd bin/
[root@ms bin]# ./kafka-server-start.sh -daemon config/server.properties 1>/dev/null 2>&1 &

2、关闭

[root@ms kafka]# cd bin/
[root@ms bin]# ./kafka-server-stop.sh 

五、测试

在其中一台虚拟机创建topic


[root@ms kafka]#bin/kafka-topics.sh --create --zookeeper 192.168.1.139:2181 --replication-factor 3 -partitions 1 --topic mytopic

查看创建的topic信息

[root@ms kafka]# bin/kafka-topics.sh --list --zookeeper 192.168.1.139:2181,192.168.1.136:2181,192.168.1.137:2181
mytopic

[root@ms kafka]# bin/kafka-topics.sh --describe --zookeeper 192.168.1.139:2181 --topic mytopic
[2019-11-01 11:14:32,440] ERROR Unable to open socket to 0.0.0.1/0.0.0.1:2181 (org.apache.zookeeper.ClientCnxnSocketNIO)
Topic:mytopic	PartitionCount:1	ReplicationFactor:3	Configs:
	Topic: mytopic	Partition: 0	Leader: 137	Replicas: 137,136,139	Isr: 137,136,139

删除topic:

[root@ms kafka]# bin/kafka-topics.sh --delete --zookeeper 192.168.1.139:2181,192.168.1.136:2181,192.168.1.137:2181 --topic mytopic
Topic mytopic is marked for deletion.
Note: This will have no impact if delete.topic.enable is not set to true.
[root@ms kafka]# bin/kafka-topics.sh --list --zookeeper 192.168.1.139:2181,192.168.1.136:2181,192.168.1.137:2181
[root@ms kafka]# 

注:如果嫌弃命令太长,可以自己写shell脚本操作,生产、消费服务测试这里就不详细写了。

六、设置kafka服务自启

[root@ms ~]# cd /etc/init.d/
[root@ms init.d]# vim kafka

内容如下:

#!/bin/bash
#description: kafka start stop restart
#processname:kafka
#chkconfig: 2345 21 90

KAFKA_HOME=/usr/local/kafka

case $1 in
     start) ${KAFKA_HOME}/bin/kafka-server-start.sh -daemon ${KAFKA_HOME}/config/server.properties 1>/dev/null 2
>&1 &;; 
     stop) ${KAFKA_HOME}/bin/kafka-server-stop.sh;;
     restart) 
          ${KAFKA_HOME}/bin/kafka-server-stop.sh
          ${KAFKA_HOME}/bin/kafka-server-start.sh -daemon ${KAFKA_HOME}/config/server.properties 1>/dev/null 2>&1 &;;      
     *) echo 'plase use:kafka {start|stop|restart}';;
esac          
exit 0

修改权限:
[root@ms init.d]# chmod +x kafka
添加到服务:
[root@ms init.d]# chkconfig --add kafka
查看:
[root@ms init.d]# chkconfig --list kafka
设置kafka服务自启:
[root@ms init.d]# chkconfig kafka on

设置成功后,手动操作:
[root@ms init.d]# service kafka start
[root@ms init.d]# service kafka stop
[root@ms init.d]# service kafka restart

注:# chkconfig: 234 21 902345表示系统运行级别是2,3,4或者5时都启动此服务,21是启动的优先级数字越低,优先级越高,90是关闭的优先级数字越低,优先级越高,如果启动优先级配置的数太小时如0时,则有可能启动不成功,因为此时可能其依赖的网络服务还没有启动,从而导致自启动失败。优先级范围是0-100,数字越大,优先级越低。

# 缺省的运行级,RHS用到的级别如下:

0:关机

1:单用户模式

2:无网络支持的多用户模式

3:有网络支持的多用户模式

4:保留,未使用

5:有网络支持有X-Window支持的多用户模式

6:重新引导系统,即重启

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Kafka是一种开源的分布式消息系统,常用于实时数据流处理和数据传输。在搭建Kafka环境和配置项目文件时,需要以下步骤: 1. 下载和安装Kafka:从官方网站或Github上下载Kafka的二进制文件,并解压到本地目录。 2. 配置Zookeeper:Kafka依赖于Zookeeper进行集群的管理和协调。在Kafka目录中找到config文件夹,编辑zookeeper.properties文件,设置Zookeeper的连接地址和端口。 3. 配置Kafka:在config文件夹中找到server.properties文件,编辑该文件以配置Kafka的属性。可以设置Kafka监听的端口、数据存储路径、副本因子、消息保留时间等。 4. 启动Zookeeper:打开一个命令行窗口,进入Kafka目录的bin文件夹中,运行命令`zookeeper-server-start.sh config/zookeeper.properties`来启动Zookeeper。 5. 启动Kafka服务:打开另一个命令行窗口,同样进入Kafka目录的bin文件夹中,运行命令`kafka-server-start.sh config/server.properties`来启动Kafka服务。 6. 创建Topic:通过执行命令`kafka-topics.sh`,可以创建主题(Topic),设置副本因子、分区数等属性。 7. 生产者和消费者配置:在开发项目时,需要配置Kafka的生产者和消费者。可以通过设置相关属性,如Kafka服务器地址、Topic名称、序列化方式、自动提交偏移量等。 8. 开发和测试:通过连接Kafka集群,编写生产者和消费者的代码,实现消息的发送和接收。可以使用Kafka提供的Java客户端或其他语言的客户端库来实现。 总之,搭建Kafka环境和配置项目文件需要下载安装Kafka、配置Zookeeper和Kafka的属性文件、启动Zookeeper和Kafka服务、创建Topic,并通过代码编写生产者和消费者来实现消息的传输和处理。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值