要驗證CentOS上的Kafka配置,可以按照以下步驟進行:
首先,確保Kafka服務正在運行。
sudo systemctl status kafka
如果服務未運行,可以使用以下命令啟動它:
sudo systemctl start kafka
Kafka的主要配置文件是server.properties
,通常位于/etc/kafka/
目錄下。檢查以下關鍵配置項:
示例配置片段:
broker.id=0
listeners=PLAINTEXT://your.host.name:9092
advertised.listeners=PLAINTEXT://your.host.name:9092
log.dirs=/var/lib/kafka/logs
zookeeper.connect=localhost:2181
確保防火墻允許Kafka使用的端口(默認是9092)。
sudo firewall-cmd --list-all
如果需要,添加規則:
sudo firewall-cmd --permanent --add-port=9092/tcp
sudo firewall-cmd --reload
Kafka依賴Zookeeper,確保Zookeeper服務正在運行并且Kafka可以連接到它。
echo ruok | nc localhost 2181
如果返回imok
,則表示Zookeeper正常運行。
創建一個測試Topic并查看其詳細信息。
kafka-topics.sh --create --topic test --bootstrap-server localhost:9092 --replication-factor 1 --partitions 1
驗證Topic是否創建成功:
kafka-topics.sh --describe --topic test --bootstrap-server localhost:9092
編寫簡單的生產者和消費者腳本來測試Kafka的基本功能。
生產者腳本 (producer.py):
from kafka import KafkaProducer
producer = KafkaProducer(bootstrap_servers='localhost:9092')
producer.send('test', b'Hello, Kafka!')
producer.flush()
消費者腳本 (consumer.py):
from kafka import KafkaConsumer
consumer = KafkaConsumer('test', bootstrap_servers='localhost:9092')
for message in consumer:
print(f"Received message: {message.value}")
運行生產者和消費者腳本,確保消息能夠正確發送和接收。
檢查Kafka的日志文件,通常位于/var/lib/kafka/logs/server.log
,查看是否有任何錯誤或警告信息。
tail -f /var/lib/kafka/logs/server.log
通過以上步驟,你應該能夠驗證CentOS上Kafka的配置是否正確并且能夠正常工作。