最佳實踐概述
場景描述
Kafka與Logstash互聯,可實現將Kafka作為inputs把消息傳遞給Logstash進行處理、或者是作為outputs將Kafka用作消息目的地。
技術架構圖
暫無。
方案優勢
- 可以異步處理數據:防止突發流量。
- 解耦:當發生異常的時候不會影響上游工作。
前提條件
需已購買Kafka實例、創建Topic,并且已成功消費消息。
資源規劃
本實踐方案內容僅涉及Kafka專享版實例和Logstash。
分布式消息服務
Figure 分布式消息服務
| 資源類型 | 配置項 | 配置明細 | 說明 |
|---|---|---|---|
| 企業中間件 | DMS | Kafka專享實例 | 需已購買kafka專享實例,創建好Topic,并成功消費消息。 |
Logstash下載與安裝
下載并安裝Logstash,驗證運行成功。
方案正文
配置Kafka
1、登錄分布式消息服務Kafka版控制臺,按需要單擊“實例名稱”,進入實例基本信息頁面。
圖 Kafka控制臺實例列表

2、在“連接地址”模塊,獲取Kafka連接IP地址。
圖 連接IP地址與端口

3、創建Logstash-test的Topic。
圖 創建Topic

配置Logstash服務
下載Logstash,解壓安裝,驗證啟動是否成功。
下載logstash-6.8.10.tar.gz,直接解壓安裝即可。
執行命令./logstash -e 'input{ stdin{} } output{ stdout{} }',可檢測logstash運行是否成功。

Kafka與Logstash互聯
1、將Kafka作為消息輸出目的地
使用logstash將命令行輸入的信息,傳輸到Kafka中名為“Logstash-test”的Topic隊列。
在/root/Desktop/logstash-6.8.10/conf下創建filetokafka.conf,輸入:

在/root/Desktop/logstash-6.8.10/bin目錄下執行命令:



從Kafka消費查看Logstash發送的數據:

2、將Kafka作為消息數據來源
在/root/Desktop/logstash-6.8.10/conf下創建input.conf,輸入:

執行命令:./logstash -e ../conf/input.conf,啟動Logstash消費Kafka中的消息。
