Pulsar集群至少需要3个组件,zookeeper集群、broker集群、bookkeeper集群 zookeeper集群:由3个节点组成 broker集群:由3个节点组成,已包含在pulsar安装包中 bookeeper集群:bookie集群,由3个节点组成,已包含在pulsar安装包中
角色 | IP |
---|---|
zookeeper01 + bookie + broker | 192.168.1.160 |
zookeeper02 + bookie + broker | 192.168.1.162 |
zookeeper03 + bookie + broker | 192.168.1.166 |
在三个节点上安装JDK,安装过程略
只需要在一个pulsar节点上执行
bin/pulsar initialize-cluster-metadata \
--cluster pulsar-cluster \
--zookeeper 192.168.1.160:2181 \
--configuration-store 192.168.1.160:2181 \
--web-service-url http://192.168.1.160:8080,192.168.1.162:8080,192.168.1.166:8080 \
# --web-service-url-tls https://192.168.1.160:8443 \
--broker-service-url pulsar://192.168.1.160:6650,192.168.1.162:6650,192.168.1.166:6650 \
# --broker-service-url-tls pulsar+ssl://192.168.1.160:6651
三个节点都修改以下配置,修改成对应的IP
vim conf/bookkeeper.conf
advertisedAddress=192.168.1.160
journalDirectories=/data/bookies/journal
ledgerDirectories=/data/bookies/ledger
zkServers=192.168.1.160:2181,192.168.1.160:2181,192.168.1.160:2181
只需要在一个节点上执行下面的命令
bin/bookkeeper shell metaformat
三个节点都要启动
bin/pulsar-daemon start bookie
三台都检测下是否启动成功
bin/bookkeeper shell bookiesanity
Bookie sanity test succeeded # 最后一行输出该,表示启动成功
三个节点都要配置以下内容,修改成对应的IP
vim conf/broker.conf
zookeeperServers=192.168.1.160:2181,192.168.1.162:2181,192.168.1.166:2181
configurationStoreServers=192.168.1.160:2181,192.168.1.162:2181,192.168.1.166:2181
brokerServicePort=6650
brokerServicePortTls=6651
webServicePort=8080
webServicePortTls=8443
advertisedAddress=192.168.1.160
clusterName=pulsar-cluster
functionsWorkerEnabled=true
vim conf/functions_worker.yml
pulsarFunctionsCluster: pulsar-cluster # 修改成初始化时集群的名字
vim conf/client.conf
webServiceUrl=http://192.168.1.160:8080/ # 修改成本机的IP
# brokerServiceUrl=pulsar://192.168.1.160:6650/
brokerServiceUrl=pulsar://192.168.1.160:6650,192.168.1.162:6650,192.168.1.166:6650
所有节点都启动
bin/pulsar-daemon start broker
bin/pulsar-admin brokers list pulsar-cluster
bin/pulsar-admin clusters update pulsar-cluster --url http://192.168.1.160:8080,192.168.1.162:8080,192.168.1.166:8080 --broker-url pulsar://192.168.1.160:6650,192.168.1.162:6650,192.168.1.166:6650
bin/pulsar-admin clusters delete pulsar-cluster
bin/pulsar-admin clusters get pulsar-cluster
bin/pulsar-admin clusters list
bin/pulsar-admin tenants list
bin/pulsar-admin tenants create my-tenant
bin/pulsar-admin tenants delete my-tenant
bin/pulsar-admin namespaces list capital
bin/pulsar-admin namespaces create test-tenant/test-namespace
bin/pulsar-admin namespaces delete test-tenant/test-namespace
bin/pulsar-admin topics list capital/vota