在Ubuntu上配置Kafka主要包括以下几个步骤:
1. 安装Java和Zookeeper
首先,确保你已经安装了Java运行环境(推荐使用OpenJDK 8)和Zookeeper。
# 安装Java
sudo apt update
sudo apt install openjdk-8-jdk
java -version
# 下载并解压Zookeeper
wget https://archive.apache.org/dist/zookeeper/zookeeper-3.4.6/zookeeper-3.4.6.tar.gz
tar xvf zookeeper-3.4.6.tar.gz
sudo mv zookeeper-3.4.6 /usr/local/zookeeper
2. 配置Zookeeper
编辑Zookeeper的配置文件 /usr/local/zookeeper/conf/zoo.cfg
,设置数据目录和客户端连接端口。
# 编辑Zookeeper配置文件
sudo nano /usr/local/zookeeper/conf/zoo.cfg
# 添加或修改以下行
dataDir /var/lib/zookeeper
clientPort 2181
启动Zookeeper服务:
sudo /usr/local/zookeeper/bin/zkServer.sh start
3. 配置Kafka
下载并解压Kafka。
# 下载Kafka
wget https://downloads.apache.org/kafka/3.5.2/kafka_2.12-3.5.2.tgz
tar -xzf kafka_2.12-3.5.2.tgz
sudo mv kafka_2.12-3.5.2 /usr/local/kafka
编辑Kafka的配置文件 /usr/local/kafka/config/server.properties
,设置以下参数:
# Kafka broker的唯一标识符
broker.id 0
# Kafka服务器监听的地址和端口
listeners PLAINTEXT://your.server.ip:9092
# 对外暴露的地址和端口
advertised.listeners PLAINTEXT://your.server.ip:9092
# Zookeeper的地址和端口
zookeeper.connect localhost:2181
# Kafka日志目录
log.dirs /tmp/kafka-logs
# Kafka主题的分区数
num.partitions 1
# 默认副本因子
default.replication.factor 1
4. 启动Kafka服务
在配置文件目录中启动Kafka服务:
sudo /usr/local/kafka/bin/kafka-server-start.sh /usr/local/kafka/config/server.properties
5. 验证配置
创建一个Kafka主题来验证配置是否生效:
/usr/local/kafka/bin/kafka-topics.sh --create --bootstrap-server localhost:9092 --replication-factor 1 --partitions 1 --topic test
启动Kafka生产者命令示例:
/usr/local/kafka/bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test
启动Kafka消费者命令示例:
/usr/local/kafka/bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginning
6. 设置防火墙规则(如果需要)
确保防火墙允许Kafka使用的端口(如9092)。
sudo ufw allow 9092
7. 开机自启配置(可选)
在 /lib/systemd/system/
目录下创建 zookeeper
和 kafka
服务的配置文件。
zookeeper.service:
[Unit]
Description=Zookeeper service
After=network.target
[Service]
Type=simple
Environment="PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
User=root
Group=root
ExecStart=/usr/local/zookeeper/bin/zkServer.sh start
ExecStop=/usr/local/zookeeper/bin/zkServer.sh stop
Restart=on-failure
[Install]
WantedBy=multi-user.target
kafka.service:
[Unit]
Description=Apache Kafka server (broker)
After=zookeeper.service network.target
[Service]
Type=simple
Environment="PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
User=root
Group=root
ExecStart=/usr/local/kafka/bin/kafka-server-start.sh /usr/local/kafka/config/server.properties
ExecStop=/usr/local/kafka/bin/kafka-server-stop.sh
Restart=on-failure
[Install]
WantedBy=multi-user.target
刷新配置并启用服务:
sudo systemctl daemon-reload
sudo systemctl enable zookeeper
sudo systemctl enable kafka
sudo systemctl start zookeeper
sudo systemctl start kafka
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,请发送邮件至 55@qq.com 举报,一经查实,本站将立刻删除。转转请注明出处:https://www.szhjjp.com/n/1296640.html