1. 程式人生 > 其它 >Linux下搭建kafka

Linux下搭建kafka

Linux下搭建kafka

Linux下搭建kafka


一、kafka是什麼?

Kafka是最初由Linkedin公司開發,是一個分散式、分割槽的、多副本的、多訂閱者,基於zookeeper協調的分散式日誌系統(也可以當做MQ系統),常見可以用於web/nginx日誌、訪問日誌,訊息服務等等,Linkedin於2010年貢獻給了Apache基金會併成為頂級開源專案。

主要應用場景是:日誌收集系統和訊息系統。

二、使用步驟

1.安裝相關包

安裝jdk、zookeeper、kafka包,想要的話訪問以下連結:

連結: https://pan.baidu.com/s/1F5Z08R4Xcgw01iHBYjhkPg
提取碼: mpjc

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
import warnings
warnings.filterwarnings('ignore')
import  ssl
ssl._create_default_https_context = ssl._create_unverified_context

2.依次啟動服務

啟動zookeeper:

sh zookeeper-server-start.sh ../config/zookeeper.properties

啟動kafka:

sh kafka-server-start.sh ../config/server.properties

啟動完畢後使用命令:jps檢視是否啟動成功
啟動kafka:

jps

啟動成功如下圖:
在這裡插入圖片描述

3.安裝過程中遇到了問題

提示:這裡對文章進行總結:
1、配置靜態ip
放假前在虛擬機器中已經配置好ip了,將虛擬機器掛起了,今天開啟之後,使用ip addr命令後發現ip沒有了,只有一個本地ip:127.0.0.1,通過查閱資料後,使用命令:
啟動kafka:

systemctl stop NetworkManager
systemctl disable NetworkManager
service network restart

成功!
在這裡插入圖片描述
2、使用jps檢視當前執行的程序
報:許可權不夠 解決方法
解決方法:在jdk目錄下新增一個許可權就可以了:

chmod +x /usr/local/java/jdk1.8/bin/jps

3、
在這裡插入圖片描述
解決方法:修改kafka下的config/server.properties為:

advertised.listeners=PLAINTEXT://10.1.192.196:9092
advertised.listeners=PLAINTEXT://10.1.192.196:9092

4、配置java_home、zookeeper、kafka

vi /etc/profile

在這裡插入圖片描述

三、執行

.進入kafka安裝目錄,建立一個名為helloWorld的topic。

bin/kafka-topics.sh --create --bootstrap-server localhost:9092 --replication-factor 1 --partitions 1 --topic helloWorld
./kafka-console-producer.sh --broker-list localhost:9092 --topic helloWorld

輸入要傳遞的訊息:向名為helloWorld的topic傳送訊息,例如 hello kafka
消費者已經輸出了剛才傳送的訊息,hello world例項搭建完成。

./kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic helloWorld --from-beginning

結果如下圖:
生產者:./kafka-console-producer.sh --broker-list localhost:9092 --topic helloWorld
在這裡插入圖片描述
消費者:./kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic helloWorld --from-beginning
在這裡插入圖片描述