- advertisedAddress 修改为服务器对应的ip,在另外两台服务器也做对应的修改
advertisedAddress=10.10.195.57 - http://pulsar.cluster.com:8080 pulsar-cluster
# 创建租户(租户名:my-tenant)
/home/pulsar/bin/pulsar-admin tenants create my-tenant
# 创建命名空间(命名空间名:my-tenant/my-namespace,它指定了租户my-tenant)
/home/pulsar/bin/pulsar-admin namespaces create my-tenant/my-namespace
# 创建持久性分区topic(topic全名:persistent://my-tenant/my-namespace/my-topic;分区数为 3)
/home/pulsar/bin/pulsar-admin topics create-partitioned-topic persistent://my-tenant/my-namespace/my-topic -p 3
# 更新命名空间为其指定集群名
/home/pulsar/bin/pulsar-admin namespaces set-clusters my-tenant/my-namespace —clusters pulsar-cluster">创建集群(集群名:pulsar-cluster)
/home/pulsar/bin/pulsar-admin clusters create —url http://pulsar.cluster.com:8080 pulsar-cluster
# 创建租户(租户名:my-tenant)
/home/pulsar/bin/pulsar-admin tenants create my-tenant
# 创建命名空间(命名空间名:my-tenant/my-namespace,它指定了租户my-tenant)
/home/pulsar/bin/pulsar-admin namespaces create my-tenant/my-namespace
# 创建持久性分区topic(topic全名:persistent://my-tenant/my-namespace/my-topic;分区数为 3)
/home/pulsar/bin/pulsar-admin topics create-partitioned-topic persistent://my-tenant/my-namespace/my-topic -p 3
# 更新命名空间为其指定集群名
/home/pulsar/bin/pulsar-admin namespaces set-clusters my-tenant/my-namespace —clusters pulsar-cluster
1、解压缩:
tar -xvf apache-pulsar-2.4.1-bin.tar -C /home
2、配置zookeeper:
创建数据目录:
mkdir -p /home/pulsar/data/zookeeper
创建ID文件:
echo 1 > /home/pulsar/data/zookeeper/myid
配置zookeeper:
vim /home/pulsar/conf/zookeeper.conf
dataDir=/home/pulsar/data/zookeeper
server.1=10.10.195.57:2888:3888
server.2=10.10.195.58:2888:3888
server.3=10.10.195.59:2888:3888
3、配置bookkeeper:
mkdir -p /home/pulsar/data/bookkeeper/journal
mkdir -p /home/pulsar/data/bookkeeper/ledgers
vim /home/pulsar/conf/bookkeeper.conf
advertisedAddress 修改为服务器对应的ip,在另外两台服务器也做对应的修改
advertisedAddress=10.10.195.57
journalDirectories=/home/pulsar/data/bookkeeper/journal
ledgerDirectories=/home/pulsar/data/bookkeeper/ledgerss
zkServers=10.10.195.57:2181,10.10.195.58:2181,10.10.195.59:2181
4、配置pulsar:
vim /home/pulsar/conf/broker.conf
clusterName=pulsar-cluster
zookeeperServers=10.10.195.57:2181,10.10.195.58:2181,10.10.195.59:2181
configurationStoreServers=10.10.195.57:2181,10.10.195.58:2181,10.10.195.59:2181
# 修改如下参数为本服务器ip地址,另外两个 broker 节点配置文件也做对应修改
advertisedAddress=10.10.195.57
5、数据分发并修改配置:
scp -r /home/pulsar 10.10.195.58:/home
scp -r /home/pulsar 10.10.195.59:/home
scp -r /home/pulsar 10.10.195.60:/home
10.10.195.58:
echo 2 > /home/pulsar/data/zookeeper/myid
vim /home/pulsar/conf/bookkeeper.conf
advertisedAddress=10.10.195.58
vim /home/pulsar/conf/broker.conf
advertisedAddress=10.10.195.58
10.10.195.59:
echo 3 > /home/pulsar/data/zookeeper/myid
vim /home/pulsar/conf/bookkeeper.conf
advertisedAddress=10.10.195.59
vim /home/pulsar/conf/broker.conf
advertisedAddress=10.10.195.59
10.10.195.60:
vim /home/pulsar/conf/bookkeeper.conf
advertisedAddress=10.10.195.60
vim /home/pulsar/conf/broker.conf
advertisedAddress=10.10.195.60
6、启动与初始化:
启动zookeeper:
在57、58、59上执行
/home/pulsar/bin/pulsar-daemon start zookeeper
验证zookeeper:
/home/pulsar/bin/pulsar zookeeper-shell
初始化集群元数据:
在一个节点上执行:
/home/pulsar/bin/pulsar initialize-cluster-metadata \
—cluster pulsar-cluster \
—zookeeper 10.10.195.57:2181 \
—configuration-store 10.10.195.57:2181 \
—web-service-url http://pulsar.cluster.com:8080 \
—web-service-url-tls https://pulsar.cluster.com:8443 \
—broker-service-url pulsar://pulsar.cluster.com:6650 \
—broker-service-url-tls pulsar+ssl://pulsar.cluster.com:6651
验证:
/home/pulsar/bin/pulsar zookeeper-shell
ls /
初始化bookkeeper:
在一个节点上执行:
/home/pulsar/bin/bookkeeper shell metaformat
提示:Are you sure to format bookkeeper metadata? This may cause data loss. (Y or N)
输入Y
启动bookkeeper:
在所有节点上执行:
/home/pulsar/bin/pulsar-daemon start bookie
/home/pulsar/bin/pulsar-daemon stop bookie
验证:
/home/pulsar/bin/bookkeeper shell bookiesanity
或者:
jps检查进程:BookieServer
启动broker:
/home/pulsar/bin/pulsar-daemon start broker
验证:
/home/pulsar/bin/pulsar-admin brokers list pulsar-cluster
创建集群(集群名:pulsar-cluster)
/home/pulsar/bin/pulsar-admin clusters create —url http://pulsar.cluster.com:8080 pulsar-cluster
# 创建租户(租户名:my-tenant)
/home/pulsar/bin/pulsar-admin tenants create my-tenant
# 创建命名空间(命名空间名:my-tenant/my-namespace,它指定了租户my-tenant)
/home/pulsar/bin/pulsar-admin namespaces create my-tenant/my-namespace
# 创建持久性分区topic(topic全名:persistent://my-tenant/my-namespace/my-topic;分区数为 3)
/home/pulsar/bin/pulsar-admin topics create-partitioned-topic persistent://my-tenant/my-namespace/my-topic -p 3
# 更新命名空间为其指定集群名
/home/pulsar/bin/pulsar-admin namespaces set-clusters my-tenant/my-namespace —clusters pulsar-cluster
常见问题:
ERROR org.apache.bookkeeper.client.LedgerHandle - Closing ledger 7 due to NotEnoughBookiesException: Not enough non-faulty bookies available
解决方法:bookkeeper.conf,修改如下内容:
prometheusStatsHttpPort=8050
