
目录
1. 准备环境
2. 部署JDK环境(要求版本不低于JDK8)
3. 下载Pulsar最新安装包
4. Zookeeper集群部署
4.1 搭建pulsar集群至少需要三个组件
4.2 创建文件夹
4.3 pulsar安装包
4.4 部署zookeeper集群
4.4.1 三台服务器创建目录
4.4.2 修改zookeeper配置文件
4.4.3 启动zookeeper
4.4.4 初始化zookeeper
4.4.5 执行zookeeper客户端连接命令
4.4.6 重新初始化或者删除数据时
5. 部署配置bookkeeper集群
5.1 分别在各节点执行
5.2 修改配置文件
5.3 先初始化,再启动
6. 部署配置Broker集群
6.1 修改配置文件
6.2 启动各个节点
7. 测试
8. docker部署pulsar-manager搭建
1. 准备环境
3台Linux裸机服务器(CentOS7为例)
ip分别为:
安装JDK参考:
Linux部署jdk1.8_率小气的博客-CSDN博客
3. 下载Pulsar最新安装包下载地址:
Apache Pulsar
4. Zookeeper集群部署 4.1 搭建pulsar集群至少需要三个组件pulsar安装包包含以下组件,无需单独下载组件安装包
zookeeper集群bookkeeper集群broker集群 4.2 创建文件夹
在工作目录下创建三个文件夹
mkdir -p /home/pulsar/zookeeper mkdir -p /home/pulsar/bookies mkdir -p /home/pulsar/broker4.3 pulsar安装包
把下载的pulsar安装包上传至linux服务器,并解压安装,这里我下载的2.9.1版本
tar xf apache-pulsar-2.9.1-bin.tar.gz
把解压后的文件分别复制至所创建的3个文件夹
cp -ir /opt/apache-pulsar-2.9.1/* /home/pulsar/zookeeper/ cp -ir /opt/apache-pulsar-2.9.1/* /home/pulsar/broker/ cp -ir /opt/apache-pulsar-2.9.1/* /home/pulsar/bookie/4.4 部署zookeeper集群 4.4.1 三台服务器创建目录
mkdir -p /home/pulsar/data/zookeeper
执行:
echo 1 > /home/pulsar/data/zookeeper/myid echo 2 > /home/pulsar/data/zookeeper/myid echo 3 > /home/pulsar/data/zookeeper/myid4.4.2 修改zookeeper配置文件
vim /home/pulsar/zookeeper/conf/zookeeper.conf dataDir= /home/pulsar/data/zookeeper/ server.1=192.168.1.96:2888:3888 server.2=192.168.1.97:2888:3888 server.3=192.168.1.98:2888:38884.4.3 启动zookeeper
分别启动三台Linux服务器zookeeper cd /home/pulsar/zookeeper/ #执行启动命令 /bin/pulsar-daemon start zookeeper #停止命令 /bin/pulsar-daemon stop zookeeper #查看进程 ps aux|grep zookeeper #查看端口情况 ss -ntlp netstat -tpnl|grep 21814.4.4 初始化zookeeper
#初始化 pulsar initialize-cluster-metadata --cluster pulsar-cluster --zookeeper 192.168.1.96:2181 --configuration-store 192.168.1.96:2181 --web-service-url http://192.168.1.96:8080,http://192.168.1.97:8080,http://192.168.1.98:8080 --web-service-url-tls https://192.168.1.96:8443,192.168.1.97:8443,192.168.1.98:8443 --broker-service-url pulsar://192.168.1.96:6650,192.168.1.97:6650,192.168.1.98:6650 --broker-service-url-tls pulsar+ssl://192.168.1.96:6651,192.168.1.97:6651,192.168.1.98:66514.4.5 执行zookeeper客户端连接命令
#执行zookeeper客户端命令,如果是默认端口情况下,执行如下命令连接 bin/pulsar zookeeper-shell #指定ip和端口的情况下,执行如下命令连接 /bin/pulsar zookeeper-shell -server 192.168.1.96:2181 /bin/pulsar zookeeper-shell -server 192.168.1.97:2181 /bin/pulsar zookeeper-shell -server 192.168.1.98:2181 #查看所有zookeeper节点数据,命令如下 ls / #显示,表示成功 [admin, bookies, ledgers, managed-ledgers, namespace, pulsar, stream, zookeeper]4.4.6 重新初始化或者删除数据时
建议:先停掉zookeeper,然后直接删除单台zookeeper数据目录,然后再重新启动
重新初始化,删除zookeeper的数据,日志也删除
5. 部署配置bookkeeper集群 5.1 分别在各节点执行创建bookies所需目录
mkdir -p /home/pulsar/bookies/tmp/journal mkdir -p /home/pulsar/bookies/tmp/ledgers5.2 修改配置文件
vim /home/pulsar/bookies/conf/bookkeeper.conf journalDirectory=/home/admin/bookies/tmp/journal ledgerDirectories=/home/admin/bookies/tmp/ledgers #advertisedAddress修改为服务器对应的ip advertisedAddress=192.168.1.96 #修改端口号8000为8100,zookeeper占用了8000端口 prometheusStatsHttpPort=8100 #修改zookeeper地址和端口信息 zkServers=192.168.1.96:2181,192.168.1.97:2181,192.168.1.98:21815.3 先初始化,再启动
#查看8000端口是否占用, 如果占用,修改为8100 netstat -tpnl |grep 8000 #httpServerPort默认也是8000,建议修改,我这里修改为:8100 prometheusStatsHttpPort=8100 # 初始化元数据,并启动 bookie 集群 # 执行初始化元数据命令;若出现提示,输入 Y,继续(只需在任意一个bookie节点执行一次) bin/bookkeeper shell metaformat #bookie关闭命令 bin/pulsar-daemon stop bookie #启动bookie命令,以后台进程启动bookie bin/pulsar-daemon start bookie #日志查看 tail f /home/pulsar/bookies/logs/pulsar-bookie-localhost.localdomain.log #验证是否启动成功 bin/bookkeeper shell bookiesanity #出现如下显示,表示启动成功Bookie Bookie sanity test succeeded6. 部署配置Broker集群 6.1 修改配置文件
#修改配置文件 vim /home/pulsar/broker/conf/broker.conf zookeeperServers=192.168.1.96:2181,192.168.1.97:2181,192.168.1.98:2181 configurationStoreServers=192.168.1.96:2181,192.168.1.97:2181,192.168.1.98:2181 #修改服务器对应的ip advertisedAddress=192.168.1.96 #修改zookeeper集群名称,初始化时候所用的集群名称(--cluster pulsar-cluster) clusterName=pulsar-cluster #查看端口是否被占用,如果占用修改为其他端口 webServicePort=80806.2 启动各个节点
#启动命令 bin/pulsar-daemon start broker #停止命令 bin/pulsar-daemon stop broker # 查看集群 brokers 节点情况 bin/pulsar-admin brokers list pulsar-cluster bin/pulsar-admin --admin-url http://192.168.1.97:8080 brokers list pulsar-cluster #显示如下:表示集群搭建成功 192.168.1.96:8080 192.168.1.97:8080 192.168.1.98:80807. 测试
#订阅 bin/pulsar-client consume persistent://public/default/test -n 100 -s "consumer-test" -t "Exclusive" #发送 bin/pulsar-client produce persistent://public/default/test -n 1 -m "Hello Pulsar" ----- 收到消息 ----- Hello Pulsar8. docker部署pulsar-manager搭建
docker run -d -p 9527:9527 -p 7750:7750
-e SPRING_CONFIGURATION_FILE=/pulsar-manager/pulsar-manager/application.properties
--name pulsar-manager
-e pulsar.peek.message=true
apachepulsar/pulsar-manager:v0.2.0
CSRF_TOKEN=$(curl http://localhost:17750/pulsar-manager/csrf-token)
curl
-H 'X-XSRF-TOKEN: $CSRF_TOKEN'
-H 'cookie: XSRF-TOKEN=$CSRF_TOKEN;'
-H "Content-Type: application/json"
-X PUT http://localhost:7750/pulsar-manager/users/superuser
-d '{"name": "admin", "password": "apachepulsar", "description": "test", "email": "***@qq.com"}'
登录访问:
我部署在192.168.1.96服务器上面
http://192.168.1.96:9527
用户名:admin
密码:apachepulsar
以上基本部署完成!!!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)