国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁技術(shù)文章
文章詳情頁

Apache Pulsar集群搭建部署詳細(xì)過程

瀏覽:159日期:2023-03-07 14:40:03
目錄
  • 一、集群組成說明
  • 二、安裝前置條件
  • 三、ZooKeeper集群搭建
  • 四、BookKeeper集群搭建
  • 五、Broker集群搭建
  • 六、docker安裝pulsar-dashboard

一、集群組成說明

1、搭建Pulsar集群至少需要3個組件:ZooKeeper集群、BookKeeper集群和Broker集群(Broker是Pulsar的自身實例)。這三個集群組件如下:
ZooKeeper集群(3個ZooKeeper節(jié)點組成)
Bookie集群(也稱為BookKeeper集群,3個BookKeeper節(jié)點組成)
Broker集群(3個Pulsar節(jié)點組成)

2、Pulsar的安裝包已經(jīng)包含了搭建集群所需的各個組件庫,無需單獨下載ZooKeeper安裝包和BookKeeper安裝包。

二、安裝前置條件

1、準(zhǔn)備3臺測試Linux服務(wù)器(Centos 7)。
2、在3臺Linux裸機(jī)服務(wù)器上安裝JDK(要求版本不低于JDK8)。
3、下載Pulsar安裝包,https://pulsar.apache.org/download/,上傳至3臺服務(wù)器。

三、ZooKeeper集群搭建

Pulsar安裝包內(nèi)包含了ZooKeeper,也可以自建ZooKeeper,自建ZooKeeper的方式略。安裝Pulsar安裝包內(nèi)的ZooKeeper方法如下:

1、解壓Pulsar安裝包

切換到根目錄:$ cd /?創(chuàng)建data目錄:$ mkdir data解壓:$ tar -zxvf apache-pulsar-2.9.1-bin.tar.gz

2、修改zookeeper.conf配置文件(三個節(jié)點上都需執(zhí)行此操作),新增或修改如下關(guān)鍵配置項:

# dataDir是修改,其他都是新增dataDir=/data/zookeeper/datadataLogDir=/data/zookeeper/logserver.1=IP1:2888:3888server.2=IP2:2888:3888server.3=IP3:2888:3888

參數(shù)說明:
dataDir:當(dāng)前zookeeper節(jié)點的數(shù)據(jù)存放目錄
dataLogDir:當(dāng)前zookeeper節(jié)點的日志存放目錄
server.1~3:為zookeeper集群的各個節(jié)點指定編號

3、在每個zookeeper節(jié)點的機(jī)器上,新建如下文件目錄:

data:ZooKeeper使用的數(shù)據(jù)存儲目錄mkdir -pv /data/zookeeper/datalog:ZooKeeper使用的日志存儲目錄mkdir -pv /data/zookeeper/log

4、為每個zookeeper節(jié)點新建myid,分別在指定的sever上寫入配置文件中指定的編號:

在server.1服務(wù)器上執(zhí)行bash命令:echo 1 > /data/zookeeper/data/myid在server.2服務(wù)器上執(zhí)行bash命令:echo 2 > /data/zookeeper/data/myid在server.3服務(wù)器上執(zhí)行bash命令:echo 3 > /data/zookeeper/data/myid

5、執(zhí)行后臺運行命令,這個命令是啟動zookeeper:

bin/pulsar-daemon start zookeeper

6、執(zhí)行zookeeper客戶端連接命令:

bin/pulsar zookeeper-shell客戶端正常連接,就算zookeeper啟動好了

7、在另外兩臺服務(wù)器上也執(zhí)行bin/pulsar-daemon start zookeeper之后,在其中一個zookeeper節(jié)點的機(jī)器上,初始化集群元數(shù)據(jù)(總共只需執(zhí)行一次):

例如在IP1上:bin/pulsar initialize-cluster-metadata \    --cluster pulsar-cluster-zk \    --zookeeper IP1:2181 \    --configuration-store IP1:2181 \    --web-service-url http://IP1:8080,IP2:8080,IP3:8080 \    --web-service-url-tls https://IP1:8443,IP2:8443,IP3:8443 \    --broker-service-url pulsar://IP1:6650,IP2:6650,IP3:6650 \--broker-service-url-tls pulsar+ssl://IP1:6651,IP2:6651,IP3:6651
或使用如下指令:bin/pulsar initialize-cluster-metadata \  --cluster pulsar-cluster-zk \  --zookeeper HOSTNAMEIP:2181 \  --configuration-store HOSTNAMEIP:2181 \  --web-service-url http://HOSTNAMEIP:8080 \  --web-service-url-tls https://HOSTNAMEIP:8443 \  --broker-service-url pulsar://HOSTNAMEIP:6650 \  --broker-service-url-tls pulsar+ssl://HOSTNAMEIP:6651
集群元數(shù)據(jù)說明:cluster集群名稱zookeeperZooKeeper集群連接參數(shù),僅需要包含ZooKeeper集群中的一個節(jié)點即可configuration-storePulsar實例的配置存儲集群(ZooKeeper),多集群部署時才會發(fā)揮作用,需要另外部署ZooKeeper集群,但是單集群部署時可以和–zookeeper參數(shù)設(shè)置一樣,只需要包含ZooKeeper集群中的一個節(jié)點即可web-service-url集群Web服務(wù)的URL+端口,URL是一個標(biāo)準(zhǔn)的DNS名稱,默認(rèn)端口8080,不建議修改。web-service-url-tls集群Web提供TLS服務(wù)的URL+端口,端口默認(rèn)8443,不建議修改。broker-service-url集群brokers服務(wù)URL,URL中DNS的名稱和Web服務(wù)保持一致,URL使用pulsar替代http/http,端口默認(rèn)6650,不建議修改。broker-service-url-tls集群brokers提供TLS服務(wù)的URL,默認(rèn)端口6551,不建議修改。

8、驗證zookeeper初始化集群是否初始化成功

bin/pulsar zookeeper-shell進(jìn)入zk控制臺,通過ls /查看所有zk節(jié)點。能看到bookies,ledgers等節(jié)點,則說明初始化成功了。如果需要關(guān)閉zookeeper,可使用命令bin/pulsar-daemon stop zookeeper

注意:
啟動3臺服務(wù)器的zookeeper節(jié)點之后,發(fā)現(xiàn)zookeeper節(jié)點之后無法相互注冊,需要開放特定的端口或直接關(guān)閉防火墻。下面是firewall防火墻相關(guān)操作指令:

firewall防火墻1、查看firewall服務(wù)狀態(tài)systemctl status firewalld出現(xiàn)Active: active (running)切高亮顯示則表示是啟動狀態(tài)。出現(xiàn) Active: inactive (dead)灰色表示停止,看單詞也行。2、查看firewall的狀態(tài)firewall-cmd --state3、開啟、重啟、關(guān)閉、firewalld.service服務(wù)# 開啟service firewalld start# 重啟service firewalld restart# 關(guān)閉service firewalld stop4、查看防火墻規(guī)則firewall-cmd --list-all5、查詢、開放、關(guān)閉端口# 查詢端口是否開放firewall-cmd --query-port=8080/tcp# 開放80端口firewall-cmd --permanent --add-port=80/tcp# 移除端口firewall-cmd --permanent --remove-port=8080/tcp#重啟防火墻(修改配置后要重啟防火墻)firewall-cmd --reload

四、BookKeeper集群搭建

1、修改bookkeeper.conf配置文件(三個節(jié)點上都需執(zhí)行此操作),修改如下關(guān)鍵配置項:

advertisedAddress=IP1zkServers=IP1:2181,IP2:2181,IP3:2181journalDirectory=/data/bookkeeper/journalledgerDirectories=/data/bookkeeper/ledgersprometheusStatsHttpPort=8100

注意:
1、prometheusStatsHttpPort默認(rèn)是8000,但實際上在bookkeeper.conf中,httpServerPort默認(rèn)也是8000,會導(dǎo)致端口被占用。
2、上面的advertisedAddress需要設(shè)置為對應(yīng)機(jī)器的ip,而不是全設(shè)置為同一個

參數(shù)說明:
advertisedAddress:指定當(dāng)前節(jié)點的主機(jī)名或IP地址。
zkServers:指定zookeeper集群,用來將bookkeeper節(jié)點的元數(shù)據(jù)存放在zookeeper集群。
journalDirectories:當(dāng)前bookkeeper節(jié)點的journal數(shù)據(jù)存放目錄。
如果需要提高磁盤寫入性能,可以指定多個目錄用來存放journal數(shù)據(jù),關(guān)鍵是每一個目錄必須在不同的磁盤,不然反而會影響寫入性能
ledgerDirectories:當(dāng)前bookkeeper節(jié)點的ledger存放目錄

2、在每個部署bookkeeper的機(jī)器上,創(chuàng)建bookie所需要目錄

mkdir -pv /data/bookkeeper/mkdir -pv /data/bookkeeper/journalmkdir -pv /data/bookkeeper/ledgers

3、執(zhí)行初始化元數(shù)據(jù)命令,若出現(xiàn)提示,輸入Y繼續(xù)(該步驟只需在一個bookie節(jié)點執(zhí)行一次,總共只需執(zhí)行一次)

bin/bookkeeper shell metaformat

4、在三臺機(jī)器上,分別輸入以下命令來以后臺進(jìn)程啟動bookie

bin/pulsar-daemon start bookie

5、驗證是否啟動成功

bin/bookkeeper shell bookiesanity出現(xiàn)Bookie sanity test succeeded則代表啟動成功。如果需要關(guān)閉bookkeeper,可使用命令bin/pulsar-daemon stop bookie

五、Broker集群搭建

1、在每個部署B(yǎng)roker的機(jī)器上,修改broker.conf配置文件,修改如下關(guān)鍵配置項:

zookeeperServers=IP1:2181,IP2:2181,IP3:2181configurationStoreServers=IP1:2181,IP2:2181,IP3:2181advertisedAddress=IP1# clusterName與前面zookeeper初始化的cluster一致clusterName=pulsar-cluster-zk

注意:
上面的advertisedAddress需要設(shè)置為對應(yīng)機(jī)器的ip,而不是全設(shè)置為同一個

參數(shù)說明:
zookeeperServers:指定zookeeper集群,用來將broker節(jié)點的元數(shù)據(jù)存放在zookeeper集群
configurationStoreServers:多集群部署時管理多個pulsar集群元數(shù)據(jù)的zookeeper集群地址,單集群部署時可以和zookeeperServers設(shè)置一樣
advertisedAddress:指定當(dāng)前節(jié)點的主機(jī)名或IP地址
clusterName:指定pulsar集群名稱

2、在每個部署B(yǎng)roker的機(jī)器上,以后臺進(jìn)程啟動broker

bin/pulsar-daemon start broker如果需要關(guān)閉broker,可使用命令bin/pulsar-daemon stop broker

3、查看集群 brokers 節(jié)點情況

bin/pulsar-admin brokers list pulsar-cluster

我們的示例部署正常的話,這一步會顯示如下結(jié)果:

代表此時集群內(nèi)有存活的節(jié)點: IP1、IP2、IP3,端口號都是8080。到這一步,Pulsar的部署就完成了。

六、docker安裝pulsar-dashboard

Pulsar自帶 Dashboard,可對broker、bookie、ZooKeeper 集群和topic等進(jìn)行監(jiān)控和統(tǒng)計。

1、安裝docker

yum install -y docker systemctl start dockersystemctl enable docker

2、安裝pulsar-dashboard

docker run --name pulsar-dashboard -dit -p 80:80 -e SERVICE_URL=http://PULSARSEVERIP:8080 apachepulsar/pulsar-dashboard

通過瀏覽器訪問docker宿主機(jī)IP

到此這篇關(guān)于Apache Pulsar集群搭建的文章就介紹到這了,更多相關(guān)Apache Pulsar集群內(nèi)容請搜索以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持!

標(biāo)簽: Linux Apache
主站蜘蛛池模板: 北京市| 和田市| 乌鲁木齐县| 仙游县| 济宁市| 资源县| 若羌县| 汤原县| 桂东县| 滁州市| 静海县| 香格里拉县| 牙克石市| 乌兰察布市| 缙云县| 彰化县| 保靖县| 大石桥市| 同心县| 兴山县| 元阳县| 菏泽市| 同德县| 浮梁县| 湄潭县| 玉门市| 宽甸| 同江市| 交城县| 阳城县| 疏勒县| 格尔木市| 龙山县| 昌平区| 北宁市| 合作市| 鞍山市| 清远市| 昆明市| 会昌县| 新密市|