前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >一起体验 skywalking+es8.5.x 实时监控应用运行信息

一起体验 skywalking+es8.5.x 实时监控应用运行信息

作者头像
铭毅天下
发布2022-12-22 20:19:01
1.8K0
发布2022-12-22 20:19:01
举报
文章被收录于专栏:铭毅天下铭毅天下

序言

企业应用系统发展越来越庞大,依赖越来越多的产品组件,集成越来越多系统, 整体应用系统的性能取决于”木桶短板“,为了捕捉系统的短板问题,更好的持续优化,需要一套完备的”可观测性“系统,为系统架构师们或者决策者们提供数据库支持。

可观测性

什么是可观测性呢?简单来说,就是日志、指标、链路追踪的整套监控体系。

图示:可观测性示意图

应用系统运行会产生很多运行日志,包括中间件日志、框架日志、业务日志等,日志需要集中化的平台,便于回溯系统的问题,如java领域log4j2日志框架。

应用系统运行也需要实时记录指标,包括内存、cpu、网络io、磁盘io、线程io等多种实时指标,便于观察业务需求与应用系统的性能问题,如java领域micrometer框架。

微服务时代,纯粹的单体程序已经很少,服务之间依赖众多,链路调用复杂,无论是企业内部系统集成还是外部三方服务依赖,都越来越多,也很复杂,需要功能强大且性能消耗低的链路追踪框架产品,如spring cloud体系zipkin框架。

可观测性产品简单比对

可观测性领域,功能特性完备的产品有很多,萝卜白菜,各有所长。

有来自韩国开源产品 pinpoint,可视化图非常漂亮,但其基于hbase的存储设计,部署运维复杂度较高,对于小规模企业并没有那么容易上手。

有经典开源的Elastic Stack产品体系 ,功能完备,日志、指标、链路追踪全部都有,可模块化集成,但其面向全球性的界面设计,对于中文开发者,体验有点别扭。

有来自国内著名的开源产品skywalking,以APM为核心,专注于应用程序链路追踪,扩展了周边很多特性、产品可视化对中文开发者友好,但其后端数据存储依赖三方数据库,如Elasticsearch;目前市面上很多收费的企业级可观测产品多数都是围绕elasticsearch展开。

skywalking 与elasticsearch 融合

skywalking支持多种数据库存储,基于个人经验评估,最佳的依然是Elasticsearch,目前支持es6/es7/es8等多种版本。

图示:来自skywalking官方

skywalking在融合elasticsearch方面,做了很多优化性的配置,但在笔者看来,这些都是一些一般性的设计,并没有很好的融合elasticsearch最新的特性与特点。

图示:来自dbaplus社区分享

大家都知道 elasticsearch版本发布非常快,功能特性迭代也非常快,如最新es8.5推出了时序索引,官方性能压测同比过去存储节约近50%,结合官方的datastream特性,可以让skywalking在很多方面设计配置可以更加简化。

skywalking 案例实践

skywalking与elasticsearch融合,快速实践非常简单,分为以下三个步骤:

1. elasticsearch 启动

选择 elasticsearch 8.5.x 版本,默认启动会自动配置安全策略,支持ssl+https

图示:es首次启动会自动生成安全配置信息

图示:es首次启动会生成超级用户与密码

2. skywaling 启动

选择skywalking 9.2.x版本,数据存储配置指向 elasticserch,配置基本的用户名与密码

图示:skywalking 数据存储配置

3. java 应用集成

选择skywalking-java 8.13.x版本,采用javaageng方式集成,数据采集配置指向skywalking后端

代码语言:javascript
复制
java -javaagent:/path/to/skywalking-agent/skywalking-agent.jar -jar yourApp.jar

图示:agent.config配置skywalking采集地址

4. 案例示意图

图示:skywalking在elasticsearch创建的索引

图示:skywalking展示的服务调用链路

参考文献

skywalking 官方参考

  • skywalking 部署配置官方参考

https://skywalking.apache.org/docs/main/v9.2.0/readme/

skywalking-java-agent

  • skywalking-java agent 应用集成官方参考

https://skywalking.apache.org/docs/skywalking-java/v8.13.0/en/setup/service-agent/java-agent/readme/

elasticsearch 8.5.x 最新特性

  • elasticsearch 8.5.x 最新特性之时序数据

https://www.elastic.co/guide/en/elasticsearch/reference/8.5/release-highlights.html

关于我们

讲师:李猛 (Elastic King 数据领域专家)

  • Elastic Stack 国内顶尖实战专家
  • ELastic Stack 技术社区分享嘉宾
  • 国内首批Elastic 官方认证工程师21人之一
  • 阿里云MVP(大数据领域)
  • DBAPlus MVP(原创内容贡献者)
  • GitHub:https://github.com/ynuosoft
  • 咕泡科技 《Elastic (ELK) Stack 架构师成长路径》主讲老师。
  • 2012年接触Elasticsearch,对Elastic Stack 技术栈开发、架构、运维、源码、算法等方面都有深入实战。
  • 负责过多种 Elastic Stack 实战应用项目,大数据分析领域、机器学习预测领域、业务查询加速领域、日志平台分析领域、基础指标监控领域、全文分词检索领域等。
  • 服务过多家企业、提供Elastic Stack 咨询培训以及调优实施。
  • 多次在 Elastic Stack 技术社区分享,发表过多篇实战干货案例文章。
  • 十五年IT技术实战从业经验,涉猎行业众多、电商、物流、传统企业等,擅长大数据、系统架构等领域。
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2022-11-28,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 铭毅天下Elasticsearch 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 序言
  • 可观测性
  • 可观测性产品简单比对
  • skywalking 与elasticsearch 融合
  • skywalking 案例实践
    • 1. elasticsearch 启动
      • 2. skywaling 启动
        • 3. java 应用集成
          • 4. 案例示意图
            • skywalking 官方参考
              • skywalking-java-agent
                • elasticsearch 8.5.x 最新特性
                • 关于我们
                相关产品与服务
                Elasticsearch Service
                腾讯云 Elasticsearch Service(ES)是云端全托管海量数据检索分析服务,拥有高性能自研内核,集成X-Pack。ES 支持通过自治索引、存算分离、集群巡检等特性轻松管理集群,也支持免运维、自动弹性、按需使用的 Serverless 模式。使用 ES 您可以高效构建信息检索、日志分析、运维监控等服务,它独特的向量检索还可助您构建基于语义、图像的AI深度应用。
                领券
                问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档