RuoyiCloudPlus结合SkyWalking-9.4.0 docker部署流程

一、SkyWalking-9.4.0 docker部署流程

  • docker-compse.yml
  sky-oap:image: apache/skywalking-oap-server:9.3.0container_name: ruoyi-sky-oapports:- "11800:11800"- "12800:12800"environment:JAVA_OPTS: -Xms1G -Xmx2G#记录数据的有效期,单位天SW_CORE_RECORD_DATA_TTL: 7#分析指标数据的有效期,单位天SW_CORE_METRICS_DATA_TTL: 7SW_STORAGE: elasticsearchSW_STORAGE_ES_CLUSTER_NODES: 192.168.1.8:9200TZ: Asia/Shanghai#network_mode: "host"sky-ui:image: apache/skywalking-ui:9.3.0container_name: ruoyi-sky-uiports:- "18080:18080"environment:SW_SERVER_PORT: 18080SW_OAP_ADDRESS: http://192.168.1.8:12800#SW_ZIPKIN_ADDRESS: http://oap:9412TZ: Asia/Shanghaidepends_on:- sky-oaplinks:- sky-oap#network_mode: "host"
  • 因为要将数据存储在es,以下给出es docker-compose文件
version: '3.8'
services:elasticsearch:image: docker.elastic.co/elasticsearch/elasticsearch:7.17.6container_name: elasticsearchrestart: alwaysports:- 9200:9200- 9300:9300environment:- discovery.type=single-node- TZ=Asia/Shanghai- bootstrap.memory_lock=true- "ES_JAVA_OPTS=-Xms1024m -Xmx1024m"volumes:- /home/elasticsearch/data:/usr/share/elasticsearch/dataulimits:memlock:soft: -1hard: -1
  • 如果OAP报如下错
oap  | 2023-06-14 01:18:55,913 org.apache.skywalking.oap.server.core.storage.model.ModelInstaller 54 [main] INFO  [] - table: ui_template does not exist
oap  | 2023-06-14 01:18:55,960 org.apache.skywalking.oap.server.core.storage.model.ModelInstaller 54 [main] INFO  [] - table: zipkin_span does not exist
oap  | 2023-06-14 01:18:56,017 org.apache.skywalking.library.elasticsearch.client.TemplateClient 139 [armeria-eventloop-epoll-6-3] ERROR [] - [9.4.0-520d531] Failed to create / update index template sw_zipkin_span
oap  | java.util.concurrent.CompletionException: java.lang.RuntimeException: {"error":{"root_cause":[{"type":"illegal_argument_exception","reason":"composable template [sw_zipkin_span] template after composition is invalid"}],"type":"illegal_argument_exception","reason":"composable template [sw_zipkin_span] template after composition is invalid","caused_by":{"type":"illegal_argument_exception","reason":"invalid composite mappings for [sw_zipkin_span]","caused_by":{"type":"mapper_parsing_exception","reason":"Failed to parse mapping [_doc]: analyzer [oap_analyzer] has not been configured in mappings","caused_by":{"type":"illegal_argument_exception","reason":"analyzer [oap_analyzer] has not been configured in mappings"}}}},"status":400}

在官方issue中找到解答,由于挂载的es目录为原来8.7.0版本生成及采集的数据,导致es初始化数据失败,需要删除原目录数据/home/elasticsearch/data或者重新指定文件目录即可。

二、集成RuoyiCloudPlus

  1. 下载java探针

这里使用最新8.16.0版本的java-gent客户端,配置文件在config/agent.config,参考配置文档https://skywalking.apache.org/docs/skywalking-java/v8.16.0/en/setup/service-agent/java-agent/configurations/

  1. 普通的java文件,启动jar包配置命令如下
-javaagent:/home/skywalking/skywalking-agent/skywalking-agent.jar -Dskywalking.agent.service_name=test::服务名 -Dskywalking.collector.backend_service=192.168.24.22:11800
  1. 结合Dockerfile及容器docker-compose,制作微服务镜像
  • Dockerfile
FROM anapsix/alpine-java:8_server-jre_unlimitedRUN mkdir -p /ruoyi/system/logs \/ruoyi/system/temp \/ruoyi/skywalking/agentWORKDIR /ruoyi/systemENV SERVER_PORT=9201EXPOSE ${SERVER_PORT}# 拷贝打包后的jar到容器内
ADD ./target/ruoyi-system.jar ./app.jarENTRYPOINT ["java", \"-Djava.security.egd=file:/dev/./urandom", \"-Dserver.port=${SERVER_PORT}", \"-Dskywalking.agent.service_name=ruoyi-system", \
#指定探针数据上报的网络地址"-Dskywalking.collector.backend_service=192.168.1.8:11800", \
#该句只是指定配置,真正的探针文件在部署服务时,在docker-compose中指定"-javaagent:/ruoyi/skywalking/agent/skywalking-agent.jar", \"-jar", "app.jar"]
  • docker-compose
  ruoyi-gateway:image: ruoyi/ruoyi-gateway:1.6.0container_name: ruoyi-gatewayenvironment:# 时区上海TZ: Asia/Shanghaiports:- "8080:8080"volumes:# 配置文件- /docker/ruoyi-gateway/logs/:/ruoyi/gateway/logs# 指定skywalking 探针位置- /docker/skywalking/agent/:/ruoyi/skywalking/agentprivileged: true#network_mode: "host"
  • 启动gateway微服务模块后,发起请求,便可以在sky-ui中看到数据

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/16022.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Devops系列四(使用argocd部署java应用到k8s容器)

一、说在前面的话 上文已为我们准备好了以下内容: 制作java应用的docker镜像,并推送至镜像仓库上传helm yaml代码至gitlab仓库(此gitlab和java应用所在的gitlab可以独立,也可以在一起,但是不宜在同一个工程&#xff…

Vscosde中写html的速写规则和快捷键

目录 vsCode速写规则! enter 生成html框架ctrl / 注释生成html元素:直接写html,enter直接生成 并且添加内容批量生成> 元素嵌套 同级生成每个元素都有的属性. class # id样式放入css中 link 连接快速使用样式优先级 vsCode速写规则 ! enter 生成h…

PS188——谱瑞(Parade)推动的 Type-C扩展坞红海战略

2020年7月份谱瑞(Parade)以3750万美元的价格收购了睿思科技(Fresco Logic),对于芯片设计公司来说,并购往往是资本因素考量 >技术因素考量 >市场战略考量。 芯片设计公司的并购,往往更看重的是客户的…

mysql离线安装

MySQL离线安装 进行MySQL离线安装包,当前安装版本为MySQL8.0.32 下载页面:https://downloads.mysql.com/archives/community/ 下载地址:https://downloads.mysql.com/archives/get/p/23/file/mysql-5.7.36-1.el7.x86_64.rpm-bundle.tar 将下载完成的安…

梅雨季“霉”烦恼,防潮自救指南请收好

魔都的雨下个不停,天气也异常闷热,原来是上海已经入梅了。“雨连连、湿哒哒、闷兮兮”的梅雨季,湿漉漉的空气,感觉身体也跟着“发霉”。不想做梅雨季最“潮”人,赶紧码住这份抗“霉”攻略。 梅雨季最大的特点是空气湿度…

第2章 SSD主控和全闪存阵列

通过第一章可知,SSD主要由两大模块组成:主控和闪存介质。其中,主控的作用包括: (1)实现标准主机接口与主机通信; (2)实现与闪存的通信; (1&#x…

vue2 element-ui 2.9.1版不支持抽屉el-drawer

一个老项目中想使用抽屉 el-drawer,死活没有反应。 查了下element-ui的版本是2.9.1 再看其他一个正常使用抽屉的项目的element-ui版本。 但是 2.14.1 的element-ui版本又存在菜单管理无法折叠菜单项的问题。 看来还是得抽空解决在2.14.1菜单无法折叠的问题了。

C++ 实现生产者消费者模型 (线程同步、互斥锁、条件变量锁)详细注释

代码结构 任务:这里用一个int类型的taskNumber代替任务任务队列类:封装了任务队列,存,取等操作。生产者工作函数:生产者执行的函数,向任务队列中添加任务,每个生产者生产3个任务消费者工作函数…

投票评选活动小程序v2-用户报名图片上传

投票评选活动小程序v2-用户自行报名收集材料页面 主要收集项目或者作品图片及其描述,可以在后台进行统一录入,也可以是在用户界面,让用户自行报名上传。 这里开发了一个“我要报名”页面,在首页点击“我要报名”按钮跳转过来。 …

小程序代码提审用户隐私保护协议修改指引

为规范开发者的用户个人信息处理行为,保障用户合法权益,小程序涉及处理用户个人信息的开发者,均需补充相应用户隐私保护指引;微信会根据小程序版本隐私接口调用情况展示必填项,开发者可自主勾选其他项目。 一、代码提…

SpringBoot 实现 elasticsearch 查询操作(RestHighLevelClient 的案例实战)

文章目录 1. 环境准备1. 查询全部2. 根据 name 查询 match 分词查询3. 根据 name 和 品牌查询 multiMatch 分词查询4. 根据 brand 查询 match 分词查询5. 按照价格 范围查询6. 精确查询7. boolQuery8. 分页9. 高亮查询9. 公共解析 上一节讲述了 SpringBoot 实现 elasticsearch …

小程序蓝牙通信

蓝牙通信能力封装 一开始是根据uniapp提供的蓝牙api写的蓝牙方法,之后发现复用性,以及一些状态的监听存在缺陷,之后整理成了类。这样复用性以及状态监听的问题就解决了。 蓝牙组件 创建蓝牙组件的类 单例模式是为了保证蓝牙长连接&#xff0…