kafka在ubuntu上怎么设置
导读:1. 准备工作 系统要求:Ubuntu 16.04及以上版本;内存≥4GB;硬盘≥500GB;Java 8及以上;Zookeeper 3.4及以上。 网络要求:确保服务器能访问外网(用于下载安装包)。 2. 安装Java环境 Kafka...
1. 准备工作
- 系统要求:Ubuntu 16.04及以上版本;内存≥4GB;硬盘≥500GB;Java 8及以上;Zookeeper 3.4及以上。
- 网络要求:确保服务器能访问外网(用于下载安装包)。
2. 安装Java环境 Kafka依赖Java运行,需先安装OpenJDK 8:
sudo apt update
sudo apt install openjdk-8-jdk
# 验证安装
java -version
若输出Java版本信息(如openjdk version "1.8.0_392"
),则说明安装成功。
3. 安装与配置Zookeeper Kafka通过Zookeeper管理集群元数据,需先安装Zookeeper:
# 下载并解压Zookeeper(以3.6.3为例)
wget https://downloads.apache.org/zookeeper/zookeeper-3.6.3/zookeeper-3.6.3.tar.gz
tar -xzvf zookeeper-3.6.3.tar.gz
sudo mv zookeeper-3.6.3 /opt/zookeeper
# 创建数据目录并授权
sudo mkdir -p /var/lib/zookeeper
sudo chown -R $(whoami):$(whoami) /opt/zookeeper /var/lib/zookeeper
# 配置Zookeeper
sudo cat >
/opt/zookeeper/conf/zoo.cfg <
<
EOF
tickTime=2000
dataDir=/var/lib/zookeeper
clientPort=2181
EOF
# 启动Zookeeper
/opt/zookeeper/bin/zkServer.sh start
# 验证启动(检查2181端口)
sudo netstat -plnt | grep 2181
若输出包含0.0.0.0:2181
,则Zookeeper启动成功。
4. 安装Kafka 下载并解压Kafka(以3.5.2为例):
# 下载并解压Kafka
wget https://downloads.apache.org/kafka/3.5.2/kafka_2.12-3.5.2.tgz
tar -xzvf kafka_2.12-3.5.2.tgz
sudo mv kafka_2.12-3.5.2 /opt/kafka
# 创建日志目录并授权
sudo mkdir -p /var/lib/kafka
sudo chown -R $(whoami):$(whoami) /opt/kafka /var/lib/kafka
5. 配置Kafka
编辑Kafka配置文件server.properties
(位于/opt/kafka/config/
):
sudo nano /opt/kafka/config/server.properties
修改以下关键参数:
# Broker唯一标识(集群中需唯一)
broker.id=0
# 监听地址(单机用localhost,集群用服务器IP)
listeners=PLAINTEXT://localhost:9092
# 日志存储目录
log.dirs=/var/lib/kafka
# Zookeeper连接地址
zookeeper.connect=localhost:2181
# 可选:日志保留时间(小时)
log.retention.hours=168 # 7天
保存退出(Ctrl+O
→Enter
→Ctrl+X
)。
6. 启动Kafka
# 启动Kafka(后台模式)
/opt/kafka/bin/kafka-server-start.sh -daemon /opt/kafka/config/server.properties
# 验证启动(检查9092端口)
sudo netstat -plnt | grep 9092
若输出包含0.0.0.0:9092
,则Kafka启动成功。
7. 测试Kafka功能
- 创建Topic:
/opt/kafka/bin/kafka-topics.sh --create --zookeeper localhost:2181 \ --replication-factor 1 --partitions 1 --topic test
- 列出Topic:
/opt/kafka/bin/kafka-topics.sh --list --zookeeper localhost:2181
- 启动生产者(向
test
Topic发送消息):
输入消息(如/opt/kafka/bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test
Hello Kafka
),按Ctrl+C
结束。 - 启动消费者(接收
test
Topic的消息):
应能看到生产者发送的消息。/opt/kafka/bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 \ --topic test --from-beginning
8. 可选:配置开机自启动
创建systemd服务文件/etc/systemd/system/kafka.service
:
sudo nano /etc/systemd/system/kafka.service
添加以下内容:
[Unit]
Description=Kafka Service
After=network.target zookeeper.service
[Service]
Type=forking
Environment="JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64"
ExecStart=/opt/kafka/bin/zookeeper-server-start.sh /opt/zookeeper/config/zoo.cfg
ExecStartPost=/opt/kafka/bin/kafka-server-start.sh /opt/kafka/config/server.properties
ExecStop=/opt/kafka/bin/kafka-server-stop.sh
ExecStopPost=/opt/zookeeper/bin/zkServer.sh stop
Restart=on-failure
[Install]
WantedBy=multi-user.target
保存退出后,执行以下命令启用并启动服务:
sudo systemctl daemon-reload
sudo systemctl start kafka
sudo systemctl enable kafka
通过sudo systemctl status kafka
可查看服务状态。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: kafka在ubuntu上怎么设置
本文地址: https://pptw.com/jishu/728941.html