kafka 3.9.1版本: kraft + sasl+ standlone 模式完整可行安裝步驟

Kafka 3.9.1 Kraft 單機模式安裝

安裝 OpenJDK 11

  • CentOS/RHEL
yum install -y java-11-openjdk-devel
  • Ubuntu/Debian
apt install -y openjdk-11-jdk

下載安裝包

wget https://mirrors.aliyun.com/apache/kafka/3.9.1/kafka_2.12-3.9.1.tgz
tar -zxvf kafka_2.12-3.9.1.tgz -C /usr/local

創建認證文件

vim /usr/local/kafka_2.12-3.9.1/config/kraft/kafka_server_jaas.conf

寫入內容如下:

KafkaServer {org.apache.kafka.common.security.plain.PlainLoginModule requiredusername="admin"password="admin-secret"user_admin="admin-secret"user_alice="alice-secret";
};

ps: username 和 password 表示節點建立集群時,需要驗證的身份信息,只有驗證通過的節點,方能成功建立集群; user_admin="admin-secret"表示用戶名 admin,對應的密碼為 admin-secret。user_alice 同理。

修改啟動文件

vim /usr/local/kafka_2.12-3.9.1/bin/kafka-server-start.sh

寫入內容如下:

if [ "x$KAFKA_OPTS" ]; thenexport KAFKA_OPTS="-Djava.security.auth.login.config=/usr/local/kafka_2.12-3.9.1/config/kraft/kafka_server_jaas.conf"
fi

修改配置

vim /usr/local/kafka_2.12-3.9.1/config/kraft/server.properties

添加或修改內容如下:

# 表示開啟PLAIN認證機制
sasl.enabled.mechanisms=PLAIN
# 表示Broker間通信也啟用PLAIN機制
sasl.mechanism.inter.broker.protocol=PLAIN
# 禁止對所有用戶topic可見
allow.everyone.if.no.acl.found=false
# 允許自動創建topic
auto.create.topics.enable=true
# 允許刪除topic
delete.topic.enable=truelisteners=SASL_PLAINTEXT://:9092,CONTROLLER://:9093
# 表示Broker間通信使用SASL
inter.broker.listener.name=SASL_PLAINTEXT
### x.x.x.x 改成公網ip
advertised.listeners=SASL_PLAINTEXT://x.x.x.x:9092,CONTROLLER://localhost:9093

生成集群唯一 ID

/usr/local/kafka_2.12-3.9.1/bin/kafka-storage.sh random-uuid

格式化存儲目錄(ps:集群模式下,每個集群都要執行,ID 需要保一致)

/usr/local/kafka_2.12-3.9.1/bin/kafka-storage.sh format -t IAtPev4fQu6b_OkrXGpciw -c /usr/local/kafka_2.12-3.9.1/config/kraft/server.properties

啟動 kafka 集群

/usr/local/kafka_2.12-3.9.1/bin/kafka-server-start.sh -daemon /usr/local/kafka_2.12-3.9.1/config/kraft/server.properties

查看 kafka 服務日志

cat /usr/local/kafka_2.12-3.9.1/logs/server.log

停止 kafka 集群

/usr/local/kafka_2.12-3.9.1/bin/kafka-server-stop.sh

創建客戶端認證文件

vim /usr/local/kafka_2.12-3.9.1/config/kraft/kafka_client_jaas.conf

寫入內容如下:

KafkaClient {org.apache.kafka.common.security.plain.PlainLoginModule requiredusername="alice"password="alice-secret";
};

修改客戶端生產者配置 producer.properties,添加認證機制

vim /usr/local/kafka_2.12-3.9.1/config/producer.properties

寫入內容如下:

security.protocol: SASL_PLAINTEXT
sasl.mechanism: PLAIN

修改客戶端消費者配置 consumer.properties,添加認證機制

vim /usr/local/kafka_2.12-3.9.1/config/consumer.properties

寫入內容如下:

security.protocol: SASL_PLAINTEXT
sasl.mechanism: PLAIN

修改客戶端生產者啟動腳本 kafka-console-producer.sh,配置認證文件 kafka_client_jaas.conf

vim /usr/local/kafka_2.12-3.9.1/bin/kafka-console-producer.sh

修改內容如下:

if [ "x$KAFKA_OPTS" ]; thenexport KAFKA_OPTS="-Xmx512M -Djava.security.auth.login.config=/usr/local/kafka_2.12-3.9.1/config/kraft/kafka_client_jaas.conf"
fi

修改客戶端消費者啟動腳本 kafka-console-consumer.sh,配置認證文件 kafka_client_jaas.conf

vim /usr/local/kafka_2.12-3.9.1/bin/kafka-console-consumer.sh

修改內容如下:

if [ "x$KAFKA_OPTS" ]; thenexport KAFKA_OPTS="-Xmx512M -Djava.security.auth.login.config=/usr/local/kafka_2.12-3.9.1/config/kraft/kafka_client_jaas.conf"
fi

創建客戶端認證文件

vim /usr/local/kafka_2.12-3.9.1/config/kraft/kafka_client_jaas.properties

寫入內容如下:

sasl.jaas.config=org.apache.kafka.common.security.plain.PlainLoginModule required username="alice" password="alice-secret";
security.protocol=SASL_PLAINTEXT
sasl.mechanism=PLAIN

創建 topic

/usr/local/kafka_2.12-3.9.1/bin/kafka-topics.sh --bootstrap-server 127.0.0.1:9092 --command-config /usr/local/kafka_2.12-3.9.1/config/kraft/kafka_client_jaas.properties --create --topic test-topic

啟動客戶端生產者

/usr/local/kafka_2.12-3.9.1/bin/kafka-console-producer.sh --broker-list 127.0.0.1:9092 --producer.config /usr/local/kafka_2.12-3.9.1/config/producer.properties --topic test-topic

啟動客戶端消費者

/usr/local/kafka_2.12-3.9.1/bin/kafka-console-consumer.sh --bootstrap-server 127.0.0.1:9092 --consumer.config /usr/local/kafka_2.12-3.9.1/config/consumer.properties --topic test-topic --from-beginning

查看 topic 列表

/usr/local/kafka_2.12-3.9.1/bin/kafka-topics.sh --bootstrap-server 127.0.0.1:9092 --command-config /usr/local/kafka_2.12-3.9.1/config/kraft/kafka_client_jaas.properties --list

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/91143.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/91143.shtml
英文地址,請注明出處:http://en.pswp.cn/web/91143.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Gitee DevOps平臺深度評測:本土化優勢與功能特性全面解析

Gitee DevOps平臺深度評測:本土化優勢與功能特性全面解析 在數字化轉型浪潮下,企業軟件開發流程的自動化與協作效率成為核心競爭力。作為國內領先的代碼托管與DevOps平臺,Gitee(碼云)憑借其本土化服務與全流程支持能力…

從零開始本地化部署Dify:開源大模型應用平臺搭建全指南

在AI應用開發的浪潮中,Dify作為一款開源的大語言模型(LLM)應用開發平臺,正逐漸成為開發者和企業的首選工具。它巧妙地融合了后端即服務(BaaS)和LLMOps的理念,讓開發者能夠快速搭建生產級的生成式AI應用。無論是構建智能…

Qt 多媒體開發:音頻與視頻處理

Qt 多媒體模塊提供了一套完整的 API,用于開發音頻和視頻處理應用。從簡單的媒體播放到復雜的音視頻編輯,Qt 都提供了相應的工具和組件。本文將從基礎到高級全面解析 Qt 多媒體開發。 一、Qt 多媒體模塊概述 1. 主要組件 Qt 多媒體模塊包含以下核心組件&a…

Mac 專業圖像處理 Pixelmator Pro

原文地址:Pixelmator Pro Mac 專業圖像處理 Pixelmator Pro,是一款非常強大、美觀且易于使用的圖像編輯器,專為 Mac 設計。 采用單窗口界面、基于機器學習的智能圖像編輯、自動水平檢測,智能快速選擇及更好的修復工具等功能優點…

iptables和IPVS比較

iptables 和 IPVS (IP Virtual Server) 都是 Linux 系統上用于處理網絡流量的強大工具,但它們的設計目標、工作原理和適用場景有顯著區別: 核心區別:主要目的: iptables: 核心是一個包過濾防火墻和網絡地址轉換工具。它…

語音識別指標計算 WER

目錄 CER(Character Error Rate) WER Word Error Rate(詞錯誤率) 🧮 WER 計算方式 📌 示例 ? 理解要點 CER(Character Error Rate) 語音識別中的 CER(Character …

【前端基礎篇】JavaScript之jQuery介紹

文章目錄前言JQuery基本介紹和使用方法引入依賴jQuery語法jQuery選擇器jQuery事件操作元素獲取/設置元素內容獲取/設置元素屬性獲取/返回css屬性添加元素刪除元素總結:常用的jQuery方法 - 詳細解釋與示例事件處理拓展 - 詳細解釋與示例其他拓展內容前言 在閱讀過程…

Vue入門:vue項目的創建和基本概念

一、vue的基本簡介1. 什么是vue?Vue (發音為 /vju?/,類似 view) 是一款用于構建用戶界面的 JavaScript 框架。它基于標準 HTML、CSS 和 JavaScript 構建,并提供了一套聲明式的、組件化的編程模型,幫助你高效地開發用戶界面。無論是簡單還是…

2.oracle保姆級安裝教程

一、Oracle數據庫安裝1.找到軟件的位置 D:\學習軟件\Oracle,并解壓軟件2.雙擊setup.exe3.選擇 是4.去掉勾,下一步5.創建和配置數據庫,下一步6.桌面類,下一步7.配置安裝路徑地址和密碼8.點完成9.正在安裝,稍等片刻10.有…

STM32 軟件模擬 I2C 讀寫 MPU6050--實現加速度與陀螺儀數據采集

演示視頻: https://www.bilibili.com/video/BV1iCQRYXEBb/?share_sourcecopy_web&vd_source0e4269581b0bc60d57a80c9a27c98905一、前言在嵌入式開發中,MPU6050 六軸傳感器因其集成加速度計和陀螺儀且成本低廉,廣泛應用于平衡小車、飛控、…

TFLOPs與TOPS的轉換關系詳解:如何衡量AI芯片的算力?

在評估AI芯片或計算硬件的性能時,我們經常會遇到TFLOPs和TOPS這兩個關鍵指標。很多開發者對它們的區別和轉換關系存在疑惑。本文將深入解析這兩個指標的含義、應用場景及轉換方法,并提供實際應用中的注意事項。 一、基本概念解析 1.1 TFLOPs(…

C語言:第11天筆記

C語言:第11天筆記 內容提要函數函數的概述函數的分類函數的定義形參和實參函數的返回值函數的調用函數的聲明函數 函數的概述 **函數:**實現一定功能的,獨立的代碼模塊,對于函數的使用,一定是先定義,后使 ?…

java導出pdf(使用html)

引入maven <dependencies><!-- Thymeleaf --><dependency><groupId>org.thymeleaf</groupId><artifactId>thymeleaf</artifactId><version>3.1.1.RELEASE</version> <!-- 或與 Spring Boot 匹配的版本 --></de…

Qt 遠程過程調用(RPC)實現方案

在分布式系統開發中&#xff0c;遠程過程調用&#xff08;RPC&#xff09;是實現跨進程、跨機器通信的重要技術。Qt 作為一個強大的跨平臺框架&#xff0c;提供了多種 RPC 實現方案&#xff0c;能夠滿足不同場景下的通信需求。本文將深入探討 Qt 中 RPC 的各種實現方式&#xf…

攻防世界-引導-Web_php_unserialize

題目內容&#xff1a;出現一段源代碼&#xff0c;分段分析第一部分如下<?php class Demo { private $file index.php;public function __construct($file) { $this->file $file; }function __destruct() { echo highlight_file($this->file, true); }function __w…

pytorch學習筆記-自定義卷積

未完結的草稿———&#xff01;大概是準備整合一下常見的層&#xff0c;整合完感覺就可以進行搭建了&#xff08;還沒進行到這一步所以不太確定版&#xff09; &#xff08;ps我將在完結這一篇的時候刪除上面的小字and二編一下整篇文章的結構&#xff0c;如果看到了這部分文字…

[明道云]-基礎教學2-工作表字段 vs 控件:選哪種?

本文深入解析“工作表字段”與“控件”的關系與差別,并從結構、功能、使用場景和選型建議等方面進行對比。 一、基礎概念厘清 ? 工作表字段 = 數據模型中的列 工作表字段相當于數據庫表中的列,是記錄每條業務對象(如訂單、客戶等)屬性的數據項,每個字段都有明確的名稱和…

C++-一篇文章入門coroutines協程

文章目錄前言什么是協程協程實現原理C協程的最小例子12345協程等效代碼協程傳值的例子前言 最近學習了一下C協程&#xff0c;這篇文章將介紹協程的相關概念&#xff0c;以及在C中如何使用協程。 什么是協程 C中&#xff0c;協程&#xff08;coroutines&#xff09;可以理解為…

數字經濟專業的就業全景指南

CDA數據分析師證書含金量高&#xff0c;適應了未來數字化經濟和AI發展趨勢&#xff0c;難度不高&#xff0c;行業認可度高&#xff0c;對于找工作很有幫助。一、數字經濟就業熱力圖二、核心崗位發展路徑1. 互聯網數字運營崗2. 金融科技崗崗位類型技能組合證書加持5年薪資范圍智…

PDF轉Word免費工具!批量處理PDF壓縮,合并, OCR識別, 去水印, 簽名等全功能詳解

大家好&#xff0c;歡迎來到程序視點&#xff01;我是你們的老朋友.小二&#xff01;前言PDF軟件我發的非常多&#xff0c;但今天這款工具是大家公認最值得推薦的&#xff0c;這款軟件就是PDF24PDF24幾乎包含了PDF的所有功能&#xff0c;目前是更新到了最新版本&#xff01;文末…