kafka单机部署

news/2025/3/16 0:10:32/

进入/home/appuser/application文件夹,将kafka安装包上传至此处

解压安装包并改名:

tar -xvf kafka_2.13-3.3.1.tgz
mv kafka_2.13-3.3.1.tgz kafka

在kafka文件夹下创建zookeeper数据文件夹,kafka和zookeeper的日志文件存放文件夹:

mkdir zookeeper
mkdir log
cd log
mkdir zookeeper
mkdir kafka

修改相关配置文件:

zookeeper.properties:

authProvider.1=org.apache.zookeeper.server.auth.SASLAuthenticationProvider
requireClientAuthScheme=sasl
jaasLoginRenew=3600000
dataDir=/home/appuser/application/kafka/zookeeper
#zookeeper端口
clientPort=2282
tickTime=2000
initLimit=10
syncLimit=5
server.0=当前服务器ip:2999:3999

server.properties:

broker.id=0
listeners=SASL_PLAINTEXT://当前服务器ip:9092
advertised.listeners=SASL_PLAINTEXT://当前服务器ip:9092
security.inter.broker.protocol=SASL_PLAINTEXT
sasl.enabled.mechanisms=PLAIN
sasl.mechanism.inter.broker.protocol=PLAIN
authorizer.class.name=kafka.security.authorizer.AclAuthorizer
allow.everyone.if.no.acl.found=true
super.users=User:admin
zookeeper.set.acl=true
log.dirs=/home/appuser/application/kafka/log/kafka
zookeeper.connect=当前服务器ip:2282

密码校验

新建jaas.conf文件,放置在kafka/config下

配置如下:

Server {org.apache.kafka.common.security.plain.PlainLoginModule requiredusername="admin"password="admin@1234"user_kafka="admin@1234"user_admin="admin@1234";
};
Client {org.apache.kafka.common.security.plain.PlainLoginModule requiredusername="kafka"password="admin@1234";
};
KafkaServer {org.apache.kafka.common.security.plain.PlainLoginModule requiredusername="kafka"password="admin@1234"user_admin="admin@1234"user_kafka="admin@1234";
};
KafkaClient {org.apache.kafka.common.security.plain.PlainLoginModule requiredusername="kafka"password="admin@1234";
};

将jaas.conf文件加入到kafka启动脚本(/kafka/bin/kafka-server-start.sh)和zookeeper启动脚本(/kafka/bin/zookeeper-server-start.sh)中:

if [ "x$KAFKA_HEAP_OPTS" = "x" ]; thenexport KAFKA_HEAP_OPTS="-Xmx1G -Xms1G -Djava.security.auth.login.config=/home/appuser/application/kafka/config/jaas.conf"
fi
if [ "x$KAFKA_HEAP_OPTS" = "x" ]; thenexport KAFKA_HEAP_OPTS="-Xmx512M -Xms512M -Djava.security.auth.login.config=/home/appuser/application/kafka/config/jaas.conf"
fi

启动服务

进入kafka目录,执行如下命令:

nohup ./bin/zookeeper-server-start.sh ./config/zookeeper.properties >./log/zookeeper/zookeeper.log 2>1 &nohup ./bin/kafka-server-start.sh ./config/server.properties >./log/kafka/kafka.log 2>1 &


http://www.ppmy.cn/news/1172923.html

相关文章

Mysql 事务的实现原理

Mysql 里面的事务,满足 ACID 特性,所以Mysql 的事务实现原理,就是InnoDB 是如何保证 ACID 特性的。 ACID A 表示 Atomic 原子性,也就是需要保证多个 DML 操作是原子的,要么都成功,要么都失败。那么&#xf…

SparkSQL之LogicalPlan概述

逻辑计划阶段在整个流程中起着承前启后的作用。在此阶段,字符串形态的SQL语句转换为树结构形态的逻辑算子树,SQL中所包含的各种处理逻辑(过滤、剪裁等)和数据信息都会被整合在逻辑算子树的不同节点中。逻辑计划本质上是一种中间过…

RT-Thread 中断管理(学习)

中断是一种异常,异常是导致处理器脱离正常运行转向执行特殊代码的任何事件,如果不及时进行处理,轻则系统出错,重则会导致系统毁灭性地瘫痪。所以正确地处理异常,避免错误的发生是提高软件鲁棒性(稳定性&…

MATLAB算法实战应用案例精讲-【人工智能】ROS机器人

目录 ROS机器人操作系统底层原理 1、序列化 1.1 什么是序列化? 1.2 ROS中的序列化实现

c进阶测试题

选择题 1.请问该程序的输出是多少&#xff08;C&#xff09; #include<stdio.h> int main(){unsigned char i 7;int j 0;for(;i > 0;i - 3){ j;} printf("%d\n", j);return 0; }A. 2 B. 死循环 C. 173 D. 172 首先unsigned char型是不会为负数&#xff…

【2021集创赛】Digilent杯二等奖:基于FPGA的动态视觉感知融合的运动目标检测系统

杯赛题目&#xff1a;Diligent杯&#xff1a;基于FPGA开源软核的硬件加速智能平台 参赛组别&#xff1a;A组 设计任务&#xff1a; 利用业界主流软核处理器(仅限于Cortex-M系列及 RISC-V系列)在限定的DIGILENT官方FPGA平台上构建SoC片上系统&#xff0c;在 SoC中添加面向智能应…

Leetcode 454 四数相加II(哈希表 + getOrDefault方法用于获取Map中指定键的值,如果键不存在,则返回一个默认值)

Leetcode 454 四数相加II&#xff08;哈希表&#xff09; 解法1 HashMap getOrDefault方法 解法1 HashMap getOrDefault方法 【HashMap】 【⭐️HashMap常用操作】 创建HashMap&#xff1a;HashMap<Integer, Integer> hash new HashMap<>(); 向HashMap添加元素…

【3D 图像分割】基于 Pytorch 的 VNet 3D 图像分割2(基础数据流篇)

构建pytorch训练模型读取的数据,是有模版可以参考的,是有套路的,这点相信使用过的人都知道。我也会给出一个套路的模版,方便学习和查询。 同时,也可以先去参考学习之前的一篇较为简单的3D分类任务的数据构建方法,链接在这里:【3D图像分类】基于Pytorch的3D立体图像分类…