搭建 Pulsar 集群需要 3 个组件: ZooKeeper 集群, BookKeeper 集群和 broker 集群
以下部署策略:
- 192.168.1.46 (部署 BookKeeper, 部署 broker)
- 192.168.1.47 (部署 BookKeeper, 部署 broker)
- 192.168.1.48 (部署单个 ZK, 部署 BookKeeper, 部署 broker)
前期准备
1)jdk1.8
2) 在各机器根下创建 data 目录, 下载 apache-pulsar-2.4.2-bin.tar.gz 拷到 data 目录下
- chmod 777 apache-pulsar-2.4.2-bin.tar.gz
- tar xvfz apache-pulsar-2.4.2-bin.tar.gz
一 ZooKeeper 集群
为了简单一台机器上部署单个 ZK 使用.
1) 在 data 目录下创建 zookeeper 和 zookeeper/logs 目录
2) 修改 zookeeper.conf 文件
- dataDir=/data/zookeeper
- dataLogDir=/data/zookeeper/logs
- server.3=192.168.1.48:2888:3888
3) 执行命令 echo 3> /data/zookeeper/zookeeper/myid
4) 启动 zk
- /data/apache-pulsar-2.4.2$ PULSAR_EXTRA_OPTS="-Dstats_server_port=8001" bin/pulsar-daemon start zookeeper
- (注意: 因为 ZK 和 broker 部署在同一机器启动时要加上 PULSAR_EXTRA_OPTS="-Dstats_server_port=8001" 改变端口, 否则到后边在冲突)
5) 初始化集群元数据
bin/pulsar initialize-cluster-metadata --cluster pulsar-cluster-zk --zookeeper 192.168.1.48:2181 --configuration-store 192.168.1.48:2181 --web-service-url http://192.168.1.48:8080 --Web-service-url-tls https://192.168.1.48:8443 --broker-service-url pulsar://192.168.1.48:6650 --broker-service-url-tls pulsar+ssl://192.168.1.48:6651
二 BookKeeper 集群
1) 创建 /data/bookkeeper / 目录
2)bookkeeper.conf 文件
- advertisedAddress=HOSTNAMEIP (根据机器 IP 填写)
- zkServers=192.168.1.48:2181
- journalDirectory=/data/bookkeeper/journal
- ledgerDirectories=/data/bookkeeper/ledgers
3 执行初始化元数据命令; 若出现提示, 输入 Y, 继续 (只需在一个 bookie 节点执行一次)
/data/apache-pulsar-2.4.2$ bin/bookkeeper shell metaformat
4) 启动 data/apache-pulsar-2.4.2$ bin/pulsar-daemon start bookie
5) 另两台机器根据以上操作分别启动
三部署 broker 集群
1 修改配置文件 broker.conf
- zookeeperServers=192.168.1.48:2181
- configurationStoreServers=192.168.1.48:2181
- advertisedAddress=HOSTNAME (根据机器 IP 填写)
- clusterName=pulsar-cluster-zk
2 启动 data/apache-pulsar-2.4.2$ bin/pulsar-daemon start broker
3 另两台机器根据以上操作分别启动
来源: http://www.bubuko.com/infodetail-3337075.html