首页 > 其他分享 >部署pinpoint3.0.0

部署pinpoint3.0.0

时间:2024-12-10 17:58:40浏览次数:3  
标签:pinpoint 部署 pinpoint3.0 kafka pinot table hbase schema

pinpoint3.0的完整部署,跟2.5版本差距较大,2.5版本直接运行collector和web的jar包即可达成最快使用,但是3.0这样启动会报错

按照pinpoint官网的文档,虽然可以成功部署,但是其中的弯路也比较多,现在整理一下免得后来人踩坑,也给自己留个小抄

  • jdk

本文档所使用的jdk版本为21.0.4,理论上17以上都可以用,8和11就不建议了

  • 部署hbase

hbase的部署比较简单,pinpoint3.0适配的hbase版本是2.x,我这里使用的是2.6.0

不用参考hbase官网的方法,直接执行

./start-hbase.sh

等待启动成功,然后执行

./hbase shell hbase-create.hbase

这个hbase-create.hbase脚本可以在这里找到

等待脚本执行结束,没报错就科技继续了

  • 部署pinot

首先是下载pinot,直接下载最高版本的即可,目前我下载的是1.1.0,下载地址直接参考官网

pinot的安装部署也很麻烦,官网的quick start也说得不是很清楚,实际上只要执行下面的命令

./pinot-admin.sh QuickStart -type batch

就可以起一个包含zookeeper,pinot controller,pinot broker,pinot server的完整服务,很神奇的是,虽然kafka是核心组件,但是这个命令不会启动kafka,kafka需要用下面的命令单独启动

./pinot-admin.sh  StartKafka -zkAddress=localhost:2123/kafka -port 19092

官网上的这条命令中,zk的端口是2191,但是实际上使用QuickStart启动的zk端口是2123,所以需要修改,后面的 -port 参数是kafka的端口,后面会频繁使用

pinot虽然可以启动kafka,但是不能创建topic,要创建topic,需要额外下载并解压一个kafka,或者用其他服务器上的kafka来操作也是可以的

如果不想用pinot启动的kafka,使用额外部署的kafka也是可以的,参考kafka官网的Kafka with ZooKeeper这一步但是需要修改config/zookeeper.properties和config/server.properties文件以使用pinot启动的zookeeper,然后挨个执行

./zookeeper-server-start.sh ../config/zookeeper.properties

./kafka-server-start.sh ../config/server.properties

即可

  • 创建topic和table

使用额外解压的kafka或者其他服务器上的kafka创建topic,

inspector-stat-agent-00

inspector-stat-app

system-metric-data-type

system-metric-tag

system-metric-double

然后是在pinot上创建schema和table,简单点的话直接从pinot的swagger rest api里创建,这个时候pinot的服务已经正常跑起来了,直接访问 {pinot所在服务器ip}:9000 可以看到是这样的

 点击左侧菜单的Swagger REST API跳转到这样的页面

 往下翻,找到Table中的post /tables接口

 和schema中的post /schemas接口

 需要注意的是,要先创建schema,然后才能创建table

首先是pinot-inspector-stat-agent-schemapinot-inspector-stat-agent-realtime-table,打开链接是两个json文件,直接把json内容分别复制到post /schemas和post /tables接口的body参数里面点击执行即可创建成功,后面的schema和table也是一样的操作

之后分别是pinot-inspector-stat-application-schemapinot-inspector-stat-application-realtime-tablepinot-dataType-schemapinot-dataType-realtime-tablepinot-double-schemapinot-double-realtime-tablepinot-tag-schemapinot-tag-realtime-tablepinot-uriStat-schemapinot-uriStat-realtime-tablepinot-exceptionTrace-schemapinot-exceptionTrace-realtime-table

创建表的时候,如果用的是其他kafka,或者通过pinot启动kafka的时候改了端口,则需要修改stream.kafka.broker.list字段为正确的kafka地址,如果用的不是pinot启动的kafka,则可能需要修改replicasPerPartition的值,如果是通过kafka的quick start启动的,这个值改成1即可

  • Redis

这个部分可以说是最离谱的,pinpoint的教程没有提到redis,但是启动的时候需要redis,目前不清楚redis有什么用,因为官网没说,也不知道哪里改端口,所以只能启动在6379端口,不需要初始化,因为官网没有

  • 手动添加配置文件

正常情况下,我们启动的pinpoint应该是pinpoint-collector-starter-3.0.0-exec.jar和pinpoint-web-starter-3.0.0-exec.jar,这个时候需要分别创建两个配置文件,分别是collector-starter-application.yml

pinpoint:
  zookeeper:
    address: localhost
  metric:
    kafka:
      bootstrap:
        servers: localhost:19092
spring:
  pinot-datasource:
    pinot:
      jdbc-url: jdbc:pinot://localhost:9000


web-starter-application.yml

pinpoint:
  zookeeper:
    address: localhost
spring:
  pinot-datasource:
    pinot:
      jdbc-url: jdbc:pinot://localhost:9000

这里的pinpoint.zookeeper.address不能有端口,zk的端口我也不知道在哪里改,所以启动pinot的时候务必确保zk运行在默认端口2123上面

以及官网上的示例里面有spring.pinot-datasource.pinot.username和spring.pinot-datasource.pinot.password两个配置项,但是quick start启动的pinot是没有用户的,所以去掉他们,有再加上

  • 启动

直接启动就完事了

java -jar -Dspring.config.additional-location=collector-starter-application.yml pinpoint-collector-starter-3.0.0-exec.jar
java -jar -Dspring.config.additional-location=web-starter-application.yml pinpoint-web-starter-3.0.0-exec.jar

如果一切顺利的话,访问该主机的8080端口就能看到pinpoint的servermap页面了

标签:pinpoint,部署,pinpoint3.0,kafka,pinot,table,hbase,schema
From: https://www.cnblogs.com/whiteEyeborw/p/18597787

相关文章

  • Docker实践与应用举例:构建高效开发与部署环境
    Docker实践与应用举例:构建高效开发与部署环境在当今快速发展的软件开发领域,容器化技术以其高效、轻量、可移植的特点,迅速成为开发者和运维团队的首选工具。Docker,作为容器技术的代表,不仅简化了应用程序的打包、分发和部署流程,还极大地提升了开发和运维的协同效率。本文将深......
  • 部署达梦8读写分离集群
    一、原理读写分离集群其实是主备集群的升级版本,在双机热备的基础上把用户写和读的会话事务分别放在主库和备库上执行。写事务会被分发到主库上执行,读事务则部分分发到备库上执行,分发比例在dm_svc.conf中控制,如:RW_PERCENT=25,指的是25%的读分发到主库。由接口负责读写事务的分发......
  • Centos 7 系统 OceanBase 4.0 社区版三副本集群安装部署指南
    ========================================== 现供职于某上市互联网公司担任DBAOracle&PGACE称号,拥有OracleOCM、AWS、以及部分国产数据库等产品认证。喜欢技术分享,热爱交友,也热爱健身。墨天轮社区MVPOceanBase、PG中国分会、IvorySQL等南京地区组织者,也是TeckTa......
  • PostgreSQL 安装部署系列:采用源码方式在Centos 7.9 安装指定 PostgreSQL 数据库
    ========================================== 现供职于某上市互联网公司担任DBAOracle&PGACE称号,拥有OracleOCM、AWS、以及部分国产数据库等产品认证。喜欢技术分享,热爱交友,也热爱健身。2019年加入墨天轮,目前已发表了一百多篇原创文章,曾多次获评"月度墨力之星"。Oc......
  • kubeadm 部署k8s
    闲聊考虑了很久,打算写一篇保姆级部署从0-1构建企业级cicd流水线,把工作上面所用到的技术点分享给大家。从最k8s,harbor,jenkins,gitlab,docker的详细部署到集成。前后端流水线的构建,发布等...如果以下内容有不足的地方,请指出,我会第一时间更正。谢谢大家。先上一下手绘导图,大致的流程......
  • 基于SpringBoot+Vue的茶叶商城系统的设计与实现(源码+lw+部署+讲解)
    文章目录1.前言2.详细视频演示3.具体实现截图4.技术可行性分析5.技术简介5.1后端框架SpringBoot5.2前端框架Vue5.3系统开发平台6.系统架构设计7.程序操作流程8.业务流程设计9.为什么选择我们9.1自己的公众号9.2海量实战案例10.代码参考11.数据库参考12.源码及文档获取......
  • 基于SpringBoot+Vue的在线考试系统的设计与实现(源码+lw+部署+讲解)
    文章目录1.前言2.详细视频演示3.具体实现截图4.技术可行性分析5.技术简介5.1后端框架SpringBoot5.2前端框架Vue5.3系统开发平台6.系统架构设计7.程序操作流程8.业务流程设计9.为什么选择我们9.1自己的公众号9.2海量实战案例10.代码参考11.数据库参考12.源码及文档获取......
  • Vmware系列&虚拟机系列【仅供参考】:vCenter8.0以上无DNS环境部署
    vCenter8.0以上无DNS环境部署vCenter8.0以上无DNS环境部署无DNS解决办法1.在安装-第1阶段:部署vCenterSever的第7步配置网络设置注意FQDN和IP地址,DNS服务器地址都统一填vCenter的IP地址。2.安装部署第一阶段时,不能点继续。3.打开浏览器登入部署的ESXI主机上......
  • minio client安装部署
    环境:OS:Centos71.下载安装mkdir/opt/minio_client/cd/opt/minio_client/wgethttps://dl.min.io/client/mc/release/linux-amd64/mcchmod+xmc2.设置访问的服务器#myminio是一个配置别名,后续使用mc命令的时候,就需要使用到这个别名#root是访问minio服务器的用户名和密码......
  • 【Stable Diffusion】ComfyUI 基础教程-环境部署和插件安装
    ComfyUI为StableDiffusion提供了一个强大的节点流程操作界面,带来了更多的[自由度]和可复现性,同时降低了显存要求。对于那些希望深入了解和利用StableDiffusion技术的用户来说,是一个不可多得的选择。(但节点式的工作流也提高了一部分使用门槛。)1.下载和安装ComfyUI首先从......