Apache Pulsar 安装使用
1、安装包下载地址:https://pulsar.apache.org/download/
2、准备三台服务器,解压安装包:tar zxvf apache-pulsar-3.0.0-bin.tar.gz,到目录 /opt/pulsar/apache-pulsar/,,另外准备稳定的zookeeper集群,在此不赘述,自行准备。
3、修改bookkeeper配置文件,/opt/pulsar/apache-pulsar/conf/bookkeeper.conf
所有节点修改 其中advertisedAddress的值每个节点不一致,其他都一样
# 更改为本地ip地址 每个节点不一样 节点2为 192.168.10.182 节点3为192.168.10.183 advertisedAddress=192.168.10.181 # 修改日志目录 journalDirectory=/data/pulsar/data/bookkeeper/journal # 修改ledger目录 ledgerDirectories=/data/pulsar/data/pulsar/tmp/ledger # 修改zk配置 zkServers=192.168.10.140:2181,192.168.10.141:2181,192.168.10.142:2181
4、修改broker配置文件 /opt/pulsar/apache-pulsar/conf/broker.conf
所有节点修改 其中advertisedAddress的值每个节点不一致,值为当前服务器ip
# 修改集群的名称 clusterName=pulsar-cluster # 配置zookeeper地址 zookeeperServers=192.168.10.140:2181,192.168.10.141:2181,192.168.10.142:2181 # 配置存储的地址 还是zookeeper地址 globalZookeeperServers=192.168.10.140:2181,192.168.10.141:2181,192.168.10.142:21 81 configurationStoreServers=192.168.10.140:2181,192.168.10.141:2181,192.168.10.142:2181 # 更改为本地ip地址 每个节点不一样 节点2为 192.168.10.182 节点3为192.168.10.183 advertisedAddress=192.168.10.181
5、初始化集群信息,5、6两步仅在一个节点执行即可
# cd /opt/pulsar/puslar/bin # ./pulsar initialize-cluster-metadata \ --cluster pulsar-cluster \ --zookeeper 192.168.10.140:2181,192.168.10.141:2181,192.168.10.142:2181 \ --configuration-store 192.168.10.140:2181,192.168.10.141:2181,192.168.10.142:2181 \ --web-service-url http://192.168.10.181:8080,192.168.10.182:8080,192.168.10.183:8080 \ --web-service-url-tls https://192.168.10.181:8443,192.168.10.182:8443,192.168.10.183:8443 \ --broker-service-url pulsar://192.168.10.181:6650,192.168.10.182:6650,192.168.10.183:6650 \ --broker-service-url-tls pulsar+ssl://192.168.10.181:6651,192.168.10.182:6651,192.168.10.183:6651
说明 啊
zookeeper 、configuration-store,这两个的值是zk的ip及端口号啊,,后面几个ip都是pulsar集群本身的ip,端口号默认,保持不变。
- cluster: 集群名称
- zookeeper:zookeeper地址
- configuration:配置文件存储地址
- web-service-url:web服务地址 建议写ip地址 不然其他应用没有hosts链接不成功
- web-service-url-tls: web服务tls地址 建议写ip地址 不然其他应用没有hosts链接不成功
- broker-service-url:broker地址 建议写ip地址 不然其他应用没有hosts链接不成功
- broker-service-url-tls :broker的tls地址 建议写ip地址 不然其他应用没有hosts链接不成功
初始化失败了,报错
以为是内存不够,清理内存
首先写缓存到文件系统,命令:
sync
然后执行下面命令释放内存(页缓存buff/cache):
echo 1 > /proc/sys/vm/drop_caches
如果现在想让操作系统重新分配内存,那么设置drop_caches的值为0即可:
echo 0 > /proc/sys/vm/drop_caches
内存足够了,由200M,变成3G了,执行集群初始化命令依然报错,
原因是:服务器上jdk是1.8的,apache-pulsar-3.0.0要求jdk17,所以再安装个jkd17,
因为之前服务器上已经安装了jdk1.8了,且正在使用中,如何使jdk1.8与jdk17 在同一台服务器共存,参考:https://www.cnblogs.com/feiye512/p/17404477.html
同时把集群初始化用的的 ./bin/pulsar 里的关于JAVA_HOME的都改成JAVA_HOME17,,然后依然报错,,估计改的地方停多,那就不用apache-pulsar-3.0.0了,pulsar与jdk版本关系参考:
https://github.com/apache/pulsar#pulsar-runtime-java-version-recommendation
弄个2.7吧,一样修改配置文件,然后初始化集群,
6、初始化bookeeper信息,5、6两步仅在一个节点执行即可
接着初始化bookkeeper集群: 若出现提示输入Y/N: 请输入Y
# cd /opt/pulsar/puslar/bin
# ./bookkeeper shell metaformat
7、启动bookkeeper
注意: 三个节点都需要依次启动
# cd /opt/pulsar/puslar/bin && ./pulsar-daemon start bookie # 验证是否启动: 可三台都检测 有Bookie sanity test succeeded即城关 # ./bookkeeper shell bookiesanity
如果需要关闭bookkeeper,可使用命令
bin/pulsar-daemon stop bookie
目前仅有一个节点181有 Bookie sanity test succeeded,在最后一行.
参考:https://www.cnblogs.com/makj/p/16352312.html