Kafka搭建(单机版)

news/2024/7/8 7:50:33 标签: kafka, 分布式

部署前提

VMware环境 : 两台centos系统

Jdk包:jdk-8u202-linux-x64.tar.gz
Kafka包:kafka_2.12-3.5.0.tgz
Zookeeper包:apache-zookeeper-3.7.2-bin.tar.gz

百度网盘自取: 链接: https://pan.baidu.com/s/11EWuhBoSmH3musd_3Rgodw?pwd=e32t 提取码: e32t

Kafka搭建(单机版)

Centos搭建JDK8

mkdir /usr/local/env/java
cd /usr/local/env/java
wget https://repo.huaweicloud.com/java/jdk/8u202-b08/jdk-8u202-linux-x64.tar.gz
#解压java包到usr/local/env下
tar -zxvf jdk-8u202-linux-x64.tar.gz -C /usr/local/env/java
mv jdk1.8.0_411/* ./
#配置环境变量
vim /etc/profile

#将如下命令添加到文件末尾
export JAVA_HOME=/usr/local/java/jdk1.8.0_202
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH

#ESC退出并输入:wq保存

#使配置生效
source /etc/profile

#检查是否配置成功
java -version

Centos搭建Kafka

解压Kafka安装包

mkdir /usr/local/env/kafka
cd /user/local/env/kafka
tar -zxvf /usr/local/env/kafka_2.12-3.5.0.tgz -C /usr/local/env/kafka
mv kafka_2.12-3.5.0/* ./

配置Zookeeper

#创建zookeeper对应的数据地址、log地址
mkdir -p /usr/local/env/zookeeper/data
mkdir -p /usr/local/env/zookeeper/logs
#修改zookper配置
vim /usr/local/env/kafka/config/zookeeper.properties
#添加如下配置
dataDir=/usr/local/env/zookeeper/data
dataLogDir=/usr/local/env/zookeeper/logs

#设置zookeeperserver-service
#创建zookeeper自启动service
vim /etc/systemd/system/zookeeper.service

#添加如下配置
[Unit]
Description=zookeeper   #描述
Requires=network.target #需要的服务
After=network.target #在什么服务之后启动
[Service]
Type=forking
Environment=JAVA_HOME=/usr/local/env/java/jdk1.8.0_202  #依赖环境
WorkingDirectory=/usr/local/env/zookeeper
ExecStart=/usr/local/env/kafka/bin/zookeeper-server-start.sh -daemon /usr/local/env/kafka/config/zookeeper.properties 
ExecStop=/usr/local/env/kafka/bin/zookeeper-server-start.sh stop
Restart=always
RestartSec=10
TimeoutSec=360
[Install]
WantedBy=multi-user.target


#系统启动命令
systemctl daemon-reload   #重新加载service
systemctl enable zookeeper #开机自启动
systemctl start zookeeper
systemctl status zookeeper
systemctl stop zookeeper

配置Kafka

#修改Kafka配置
vim /usr/local/env/kafka/config/server.properties

firewall-cmd --zone=public --add-port=9092/tcp --permanent 
# 重启防火墙
firewall-cmd --reload

 #添加如下配置
listeners=PLAINTEXT://0.0.0.0:9092
advertised.listeners=PLAINTEXT://127.0.0.1:9092 #如果需要开启外网的情况下 比如外网IP为127.0.0.1
zookeeper.connect=:2181
delete.topic.enable=true
#advertised.listeners=PLAINTEXT://0.0.0.0:9092

#配置Kafka服务
vim /etc/systemd/system/kafka.service

[Unit]
Description=kafka
Requires=network.target
After=network.target zookeeper.service
[Service]
Type=forking
Environment=JAVA_HOME=/usr/local/env/java/jdk1.8.0_202
ExecStart=/usr/local/env/kafka/bin/kafka-server-start.sh -daemon /usr/local/env/kafka/config/server.properties
ExecStop=/usr/local/env/kafka/bin/kafka-server-stop.sh
Restart=always
RestartSec=10
TimeoutSec=360
[Install]
WantedBy=multi-user.target

#启动命令
systemctl daemon-reload
systemctl enable kafka
systemctl start kafka
systemctl status kafka
systemctl restart kafka
systemctl stop kafka


#测试命令
# 生产消息(创建名为testTopic的主题)
./bin/kafka-console-producer.sh --topic testTopic --bootstrap-server 172.16.2.25:9092
# 监听消息(重开一个终端监听testTopic主题的消息,在生产消息的终端发消息,此终端收消息)
./bin/kafka-console-consumer.sh --topic testTopic --from-beginning --bootstrap-server 172.16.2.25:9092

基本命令

Kafka基本命令

  • 生产者启动

    ./bin/kafka-console-producer.sh --topic myTestTopic --bootstrap-server 101.126.112.112:9092

  • 消费者启动

    ./bin/kafka-console-consumer.sh --topic myTestTopic --from-beginning --bootstrap-server 101.126.112.112:9092

  • 创建topic

    ./bin/kafka-topics.sh --create --replication-factor 1 --partitions 1 --topic myTestTopic --bootstrap-server 101.126.112.112:9092

  • 查看全部Topic

    ./kafka-topics.sh --bootstrap-server 101.126.112.112:9092 --list

部署参考文档

Kafka

WARN AdminClient clientId=adminclient-1 Connection to node -1 (localhost/127.0.0.1:9092) could not_2023-10-24 12:42:45,766warn adminclient client-CSDN博客

CentOS7安装配置Kafka3.2.0(含SpringBoot连接测试)_centos下载kafka-CSDN博客

SpringBoot3.1.7集成Kafka和Kafka安装_springboot3集成kafka-CSDN博客

FTP

FTP设置普通用户单一上传功能 - 补风的杨大爷 - 博客园

阿里云服务器,使用FTP客户端连接,报(331 Please specify the password…530 Login incorrect.)问题解决方案-CSDN博客

vsftp配置文件详解-腾讯云开发者社区-腾讯云

Linux实验13 配置虚拟用户登录FTP服务器-腾讯云开发者社区-腾讯云

配置ftp服务器只能上传不能进行其他操作 - Jerry_Jin - 博客园

Linux(Centos)配置vsftp使用账号密码(虚拟用户)登录ftp进行文件上传和修改 - yvioo - 博客园


http://www.niftyadmin.cn/n/5536797.html

相关文章

docker安装elasticesarch-head

安装 Elasticsearch-Head 通常涉及以下步骤: 拉取 Elasticsearch-Head 的 Docker 镜像。 运行 Elasticsearch-Head 容器并连接到 Elasticsearch 实例。 以下是具体的命令: 拉取 Elasticsearch-Head 的 Docker 镜像 docker pull mobz/elasticsearch-…

Java中的网络安全与防护策略

Java中的网络安全与防护策略 大家好,我是微赚淘客系统3.0的小编,也是冬天不穿秋裤,天冷也要风度的程序猿! 在当今信息化时代,网络安全问题日益突出,尤其对于Java开发者来说,保障应用程序和数据…

500mA、低压差、低噪声、超快、无需旁路电容的CMOS LDO稳压器RT9013

一般描述 RT9013 SOT23-5封装的外观和丝印 RT9013 是一款高性能的 500mA LDO 稳压器,具有极高的 PSRR 和超低压差。非常适合具有苛刻性能和空间要求的便携式射频和无线应用。 RT9013的静态电流低至25μA,进一步延长了电池的使用寿命。RT9013 也适用于低…

PID算法介绍以及代码实现过程说明

写在正文之前 在上一篇文章就说会在这两天会基于PID写一个文章,这里的原理部分值得大家都看一下,代码部分的实现是基于python的,但是对于使用其他编程语言的朋友,由于我写的很通俗易懂,所以也值得借鉴。 一、PID算法…

element Input 输入框 输入长度限制 maxlength=“10“默认输入长度提示颜色为红色

对于el-input&#xff0c;直接显示输入长度提示并上色并不直接支持&#xff0c;但我们可以用一些技巧来模拟这一效果。而对于el-textarea&#xff0c;虽然它没有直接的计数提示&#xff0c;但可以通过类似的技巧添加。 对于el-input <template><div class"inpu…

自然语言处理领域介绍及其发展历史

自然语言处理领域介绍及其发展历史 1 NLP2 主要任务3 主要的方法1 基于规则的方法&#xff08;1950-1980&#xff09;2 基于统计的方法&#xff08;传统的机器学习的方法&#xff09;3 Connectionist approach&#xff08;Neural networks&#xff09; 1 NLP 自动的理解人类语…

前端面试题11(浅谈JavaScript深拷贝与浅拷贝)

在JavaScript中&#xff0c;数据的复制可以分为浅拷贝&#xff08;Shallow Copy&#xff09;和深拷贝&#xff08;Deep Copy&#xff09;。这两种拷贝方式主要区别在于如何处理对象中的嵌套对象。下面我会详细解释这两者的概念、区别&#xff0c;并提供相应的实现代码。 浅拷贝…

使用Qt制作一个简单的界面

1、创建工程 步骤一&#xff1a; 步骤二&#xff1a; 步骤三&#xff1a; 选择 build system&#xff0c;有qmake、CMake 和 Qbs 三个选项。 CMake 很常用&#xff0c;功能也很强大&#xff0c;许多知名的项目都是用它&#xff0c;比如 OpenCV 和 VTK&#xff0c;但它的语法繁…