部署前提
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.propertiesfirewall-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 - 博客園