Linux下Kafka分布式集群安裝教程
Kafka(http://kafka.apache.org/) 是由 LinkedIn 使用 Scala 編寫的一個分布式消息系統(tǒng),用作 LinkedIn 的活動流(Activity Stream)和運營數(shù)據(jù)處理管道(Pipeline)的基礎(chǔ),具有高水平擴(kuò)展和高吞吐量。Spack、Elasticsearch 都支持與 Kafka 集成。下面看一下幾種分布式開源消息隊列系統(tǒng)的對比:
Kafka 集群架構(gòu):
一般不建議直接使用 Kafka 自帶的 Zookeeper 建立 zk 集群,這里我們使用獨立的 zk 集群,zk 集群搭建參考文章 Linux下ZooKeeper分布式集群安裝。
這里 Linux 選擇 CentOS 7.2。
# cd /usr/local # mkdir kafka # cd kafka # wget -P /usr/local/kafka http://mirror.bit.edu.cn/apache/kafka/1.0.0/kafka_2.11-1.0.0.tgz # tar -zxvf kafka_2.11-1.0.0.tgz # mkdir kafka-logs # cd kafka_2.11-1.0.0/config # vim server.properties
編輯配置文件 (配置項可以參考 http://kafka.apache.org/documentation.html#brokerconfigs) 為:
# 唯一標(biāo)識,0開始 broker.id=0 # 服務(wù)器端口和ip port=9092 host.name=192.168.2.20 # 日志數(shù)據(jù)保存的目錄 log.dirs=/usr/local/kafka/kafka-logs log.retention.hours=168 # 每條消息能夠容納的最大大小,默認(rèn)1000012 message.max.bytes=5242880 # 默認(rèn)的副本因子,即保存消息的副本數(shù),默認(rèn)1 default.replication.factor=2 # 取消息的最大直接數(shù),默認(rèn)1048576 replica.fetch.max.bytes=5242880 # 配置zk地址 zookeeper.connect=192.168.20.11:2181,192.168.20.12:2181,192.168.20.13:2181
啟動 Kafka 之前需啟動 Zookeeper,然后啟動 Kafka,各個節(jié)點需單獨啟動:
# cd /usr/local/kafka/kafka_2.11-1.0.0/bin # ./kafka-server-start.sh -daemon ../config/server.properties //后臺啟動服務(wù) # jps //查看服務(wù)是否啟動成功 # ./kafka-server-stop.sh //關(guān)閉服務(wù)
最后我們在三臺不同的服務(wù)器上各部署一個 Kafka 進(jìn)程,以構(gòu)成一個 Kafka 集群。開始使用可以參考官方文檔 http://kafka.apache.org/documentation.html#quickstart。
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Linux服務(wù)器下Nginx與Apache共存的實現(xiàn)方法分析
這篇文章主要介紹了Linux服務(wù)器下Nginx與Apache共存的實現(xiàn)方法,結(jié)合實例形式分析了Linux服務(wù)器下Nginx與Apache共存的原理、解決思路與實現(xiàn)方法,需要的朋友可以參考下2019-06-06LINUX服務(wù)器安裝SVN服務(wù)實現(xiàn)方式
本文介紹了如何使用yum安裝Subversion,創(chuàng)建版本庫,配置SVN服務(wù),并解決常見問題,詳細(xì)步驟包括安裝Subversion,查看安裝版本和位置,創(chuàng)建存放版本庫的目錄及svn版本庫,配置權(quán)限控制,啟動svn版本庫,以及處理端口訪問權(quán)限等2024-09-09Linux進(jìn)程間通信(IPC)的幾種方式總結(jié)
進(jìn)程間通信是指至少兩個進(jìn)程或線程間傳送數(shù)據(jù)或信號的一些技術(shù)或方法,每個進(jìn)程都有自己的一部分獨立的系統(tǒng)資源,彼此是隔離的,為了能使不同的進(jìn)程互相訪問資源并進(jìn)行協(xié)調(diào)工作,才有了進(jìn)程間通信,本文就給大家介紹幾種Linux進(jìn)程間通信的方式,需要的朋友可以參考下2023-09-09