如何在生产环境中以非 Root 用户启动 Kafka

简介: 如何在生产环境中以非 Root 用户启动 Kafka


为了在生产环境中以非 root 用户(如 kafka 用户)启动 Kafka,您需要确保 Kafka 的安装目录和数据目录的权限正确设置,以便 Kafka 用户可以访问和操作这些目录。以下是步骤和示例:


如何在生产环境中以非 Root 用户启动 Kafka

在生产环境中,以非 root 用户(如 Kafka 用户)启动 Kafka 可以提高安全性,防止潜在的权限滥用。本文将介绍如何配置 Kafka 以非 root 用户启动并总结相关经验。

1. 创建 Kafka 用户

首先,确保 Kafka 用户存在。你可以通过以下命令创建 Kafka 用户:

sudo useradd kafka

2. 设置目录权限

为确保 Kafka 用户能够访问和操作 Kafka 的安装目录和数据目录,设置这些目录的权限:

sudo chown -R kafka:kafka /opt/kafka
sudo chown -R kafka:kafka /opt/data/kafka

3. 配置 systemd 服务文件

为了使用 Kafka 用户启动 Kafka 服务,需要修改 systemd 服务文件。创建或编辑 /etc/systemd/system/kafka.service:

[Unit]
Description=Apache Kafka Server
Documentation=http://kafka.apache.org/documentation.html
After=network.target
[Service]
User=kafka
Group=kafka
ExecStart=/opt/kafka/bin/kafka-server-start.sh /opt/kafka/config/server.properties
ExecStop=/opt/kafka/bin/kafka-server-stop.sh
Restart=on-failure
RestartSec=10
[Install]
WantedBy=multi-user.target

4. 启动和启用 Kafka 服务

重新加载 systemd 配置,然后启动并启用 Kafka 服务:

sudo systemctl daemon-reload
sudo systemctl start kafka
sudo systemctl enable kafka

5. 验证 Kafka 服务

确保 Kafka 服务正在以 Kafka 用户身份运行:

ps aux | grep kafka

你应该看到 Kafka 进程是由 Kafka 用户启动的。

经验总结

在生产环境中以非 root 用户启动 Kafka 是一个最佳实践,能够有效提高系统安全性。通过以下步骤确保操作顺利进行:

  1. 创建并配置 Kafka 用户。
  2. 设置目录权限确保 Kafka 用户可以访问必要的文件和目录。
  3. 修改 systemd 服务文件,使 Kafka 服务以 Kafka 用户启动。
  4. 启动和验证 Kafka 服务,确保配置正确。

通过这些操作,可以保证 Kafka 服务以更安全的方式运行。


这种方式不仅能提高安全性,还能避免使用 root 用户带来的潜在风险。

相关文章
|
6月前
|
消息中间件 Java Kafka
Kafka【环境搭建 01】kafka_2.12-2.6.0 单机版安装+参数配置及说明+添加到service服务+开机启动配置+验证+chkconfig配置说明(一篇入门kafka)
【2月更文挑战第19天】Kafka【环境搭建 01】kafka_2.12-2.6.0 单机版安装+参数配置及说明+添加到service服务+开机启动配置+验证+chkconfig配置说明(一篇入门kafka)
238 1
|
4月前
|
消息中间件 Kafka
kafka配置中启动zookeeper时没有启动成功的解决办法
kafka配置中启动zookeeper时没有启动成功的解决办法
|
6月前
|
Apache
Apache ZooKeeper - 构建ZooKeeper源码环境及StandAlone模式下的服务端和客户端启动
Apache ZooKeeper - 构建ZooKeeper源码环境及StandAlone模式下的服务端和客户端启动
126 2
|
6月前
|
消息中间件 Java Kafka
Apache Kafka-初体验Kafka(02)-Centos7下搭建单节点kafka_配置参数详解_基本命令实操
Apache Kafka-初体验Kafka(02)-Centos7下搭建单节点kafka_配置参数详解_基本命令实操
108 0
|
消息中间件 Ubuntu Java
kafka 安装及测试
kafka 安装及测试
197 0
|
消息中间件 前端开发 Java
环境篇之 kafka 集群测试|学习笔记
快速学习环境篇之 kafka 集群测试
143 0
|
消息中间件 存储 Kafka
【Kafka】(八)Kafka 集群安装与环境测试
【Kafka】(八)Kafka 集群安装与环境测试
205 0
|
Shell 数据安全/隐私保护
Zookeeper的客户脚本及命令(五)
Zookeeper的客户脚本及命令(五)
231 0
|
消息中间件 分布式计算 大数据
Kafka 的安装及测试_2
快速学习 Kafka 的安装及测试_2
127 0
|
消息中间件 分布式计算 大数据
Kafka 的安装及测试_1
快速学习 Kafka 的安装及测试_1
136 0