Pulsar 2.5.0 之本地集群搭建
官網(wǎng)原文標(biāo)題《Set up a standalone Pulsar locally》
翻譯時(shí)間:2020-02-12
官網(wǎng)原文地址:http://pulsar.apache.org/docs/en/standalone/
譯者:本文介紹了如何在本地搭建單機(jī)集群才顿。
為了開發(fā)和測(cè)試标锄,你需要在你的本地機(jī)器上安裝本地集群模式,本地集群模式包括Pulsar broker, 以及必須ZooKeeper and BookKeeper組件,都是運(yùn)行在你的單個(gè)虛擬機(jī)實(shí)例上掺栅。
提示:如果你需要運(yùn)行所有的組件,請(qǐng)參考? Deploying a Pulsar instance 指南.
系統(tǒng)必要條件
Pulsar可以運(yùn)行在MacOS和Linux上。需要安裝Java 8來運(yùn)行pulsar。
Pulsar 啟動(dòng)默認(rèn)分配2G堆內(nèi)存,如果需要調(diào)整修改conf/pulsar_env.sh 文件中的PULSAR_MEM參數(shù)
使用二進(jìn)制包 release版本安裝 Pulsar
通過如下任何一個(gè)地址下載二進(jìn)制realease版本包
Apache 鏡像
Pulsar 下載頁
Pulsar 主頁
wget
$ wget https://archive.apache.org/dist/pulsar/pulsar-2.5.0/apache-pulsar-2.5.0-bin.tar.gz
下載完成 tarball 通過tar命令解壓潮峦,cd命令進(jìn)入目錄
$ tar xvfz apache-pulsar-2.5.0-bin.tar.gz
$ cd apache-pulsar-2.5.0
解壓目錄結(jié)構(gòu)如下
? 錄? ? 內(nèi)容?
? bin? ? Pulsar的命令行工具勇婴,例如pulsar和pulsar-admin?
? conf? ? Pulsar的配置文件,包括broker配置拘悦、zookeeper配置等等?
? example? ? Pulsar? function例子的Java jar文件?
? lib? ? Pulsar用到的Jar文件?
? licenses? ? 各種Pulsar codebase組件的License文件橱脸,.txt形式础米,?
一旦你開始運(yùn)行Pulsar添诉,下面的這些目錄將會(huì)被創(chuàng)建.
? 目錄? ? 內(nèi)容?
? data? ? ZooKeeper和BookKeeper使用的數(shù)據(jù)存儲(chǔ)目錄?
? instances? ? 為Pulsar? Function創(chuàng)建的Artifact?
? logs? ? 安裝時(shí)創(chuàng)建的log?
安裝 builtin connectors (可選)
從2.1.0-incubating發(fā)布后艾帐,Pulsar發(fā)布了一個(gè)單獨(dú)的binary分發(fā)版,含有所有內(nèi)建connector。如果你想要使用這些內(nèi)建connector条霜,你可以通過下述方式下載connector tarball催什。
Apache鏡像下載
Pulsar IO Connectors 2.5.0-incubating release
Pulsar下載頁
Pulsar發(fā)布頁
使用wget
$wget https://archive.apache.org/dist/pulsar/pulsar-2.5.0/connectors/{connector}-2.5.0.nar
下載好tarball后,在pulasr目錄下解壓io-connectors包宰睡,然后在pulsar目錄下拷貝connectors蒲凶。例如 pulsar-io-aerospike-2.5.0.nar
$ mkdirconnectors
?
$ mvpulsar-io-aerospike-2.5.0.nar connectors
?
$ lsconnectors
?
pulsar-io-aerospike-2.5.0.nar
安裝 tiered storage offloaders (可選)
如果你想要使用這些內(nèi)建tiered storage offloaders,你可以通過下述方式下載tiered storage offloaders tarball拆内。
Apache鏡像下載
Pulsar Tiered Storage Offloaders 2.5.0 release
Pulsar下載頁
Pulsar發(fā)布頁
使用wget
$wgethttps://archive.apache.org/dist/pulsar/pulsar-2.5.0/apache-pulsar-offloaders-2.5.0-bin.tar.gz
下載好tarball后旋圆,在pulsar目錄下解壓offloaders包,然后在pulsar目錄下拷貝offloaders麸恍。
$ tarxvfz apache-pulsar-offloaders-2.5.0-bin.tar.gz
?
// you willfinda directory named`apache-pulsar-offloaders-2.5.0`inthe pulsar directory
?
//thencopy the offloaders
?
$ mvapache-pulsar-offloaders-2.5.0/offloaders offloaders
?
$ lsoffloaders
?
tiered-storage-jcloud-2.5.0.nar
如果想了解tiered storage配置的信息 請(qǐng)參考 Tiered storage cookbook.
集群部署需要把offloaders tarball解壓到所有pulsar目錄下
Docker部署需要用apachepulsar/pulsar-all鏡像覆蓋原apachepulsar/pulsar鏡像
啟動(dòng)本地集群
$ bin/pulsar standalone
啟動(dòng)成功灵巧,看到如下信息:
2017-06-0114:46:29,192-INFO-[main:WebSocketService@95]-Configuration Store cache started
?
2017-06-0114:46:29,192-INFO-[main:AuthenticationService@61]-Authentication is disabled
?
2017-06-0114:46:29,192-INFO-[main:WebSocketService@108]-Pulsar WebSocket Service started
服務(wù)運(yùn)行在終端,如果需要再后臺(tái)啟動(dòng)抹沪,需要使用pulsar-daemon start standalone 命令孩等,更多詳情,請(qǐng)參考? pulsar-daemon.
默認(rèn)情況下沒有加密采够,沒有安全認(rèn)證肄方,不需要配置安全認(rèn)證參數(shù)。允許通過非安全認(rèn)證策略訪問蹬癌。安全配置請(qǐng)參考 Security Overview
啟動(dòng)本地單機(jī)集群权她,Pulsar將會(huì)自動(dòng)創(chuàng)建public/default namespace,你可以用來作開發(fā)目的逝薪。所有的Pulsar topic都將在此namespace下管理隅要,了解更多 Topics.
測(cè)試你的cluster安裝
Pulsar提供了名為pulsar-client 的CLI工具,使你可以做一些諸如發(fā)送或消費(fèi)消息到topic
測(cè)試消費(fèi)者
$ bin/pulsar-client consume my-topic-s"first-subscription"
如果消費(fèi)成功董济,你可以在pulsar-client中看到如下信息
09:56:55.566 [pulsar-client-io-1-1] INFO org.apache.pulsar.client.impl.MultiTopicsConsumerImpl-[TopicsConsumerFakeTopicNamee2df9] [first-subscription] Success subscribe new topic my-topicintopics consumer, partitions:4, allTopicPartitionsNumber:4
my-topic 不存在步清,無論是消費(fèi)者還是生產(chǎn)者都會(huì)自動(dòng)這個(gè)主題
測(cè)試生產(chǎn)者
$ bin/pulsar-client produce my-topic--messages"hello-pulsar"
如果消息發(fā)送成功,你可以在pulsar-client中看到如下信息
13:09:39.356 [main] INFO org.apache.pulsar.client.cli.PulsarClientTool-1messages successfully produced
?
?
停止集群
Ctrl+C 停止本地集群
如果是使用 pulsar-daemon start standalone 命令啟動(dòng), 需要使用pulsar-daemon stop standalone 命令停止服務(wù)虏肾,了解更多, 查閱 pulsar-daemon.