一、SkyWalking

SkyWalking是一个开源的观测平台,用于从服务和云原生等基础设施中收集、分析、聚合以及可视化数据,SkyWalking 提供了一种简便的方式来清晰地观测分布式系统,甚至可以观测横跨不同云的系统,SkyWalking 更像是一种现代的应用程序性能监控(Application Performance Monitoring,即APM)工具,专为云原生,基于容器以及分布式系统而设计。

在这里插入图片描述
SkyWalking 是无侵入式的收集不需要引入其他依赖,只需在启动时被SkyWalkingagent 代理拦截即可。

SkyWalking 中,有三个角色:

  1. SkyWalking agent :和业务系统关联在一起,负责收集各种监控数据;
  2. oapservice:负责处理监控数据的,接收 SkyWalking agent的监控数据,并存储数据(可选 elasticsearch、mysql、tidb、postgresql、banyandb 等),接收 SkyWalking webapp的前端请求,从数据库查询数据,并返回数据给前端。,Skywalking oapservice通常以集群的形式存在;
  3. SkyWalking webapp,前端界面,用于展示数据;

SkyWalking官网:https://skywalking.apache.org/

二、SkyWalking 安装部署 oapservice、webapp

下载 SkyWalking

https://archive.apache.org/dist/skywalking/9.2.0/apache-skywalking-apm-9.2.0.tar.gz

如果需要其他版本可以在下面链接找到:

https://archive.apache.org/dist/skywalking/

将下载的安装包上传至服务器中,进行解压:

tar -zxvf apache-skywalking-apm-9.2.0.tar.gz

修改 webapp 的端口,默认是 8080 ,这里改成 8018

vi apache-skywalking-apm-bin/webapp/webapp.yml

在这里插入图片描述
oapservice 的默认端口分别是 1280011800 ,这里暂时不改,修改数据存储的模式,默认存储在内存中,这里我们选为存储在 mysql 中:

vi apache-skywalking-apm-bin/config/application.yml

注意地址换成你实际的地址和用户名密码。

  mysql:
    properties:
      jdbcUrl: ${SW_JDBC_URL:"jdbc:mysql://10.22.22.65:3306/skywalking??createDatabaseIfNotExist=true&useSSL=false&useUnicode=true&characterEncoding=UTF-8"}
      dataSource.user: ${SW_DATA_SOURCE_USER:root}
      dataSource.password: ${SW_DATA_SOURCE_PASSWORD:root@1234}
      dataSource.cachePrepStmts: ${SW_DATA_SOURCE_CACHE_PREP_STMTS:true}
      dataSource.prepStmtCacheSize: ${SW_DATA_SOURCE_PREP_STMT_CACHE_SQL_SIZE:250}
      dataSource.prepStmtCacheSqlLimit: ${SW_DATA_SOURCE_PREP_STMT_CACHE_SQL_LIMIT:2048}
      dataSource.useServerPrepStmts: ${SW_DATA_SOURCE_USE_SERVER_PREP_STMTS:true}
    metadataQueryMaxSize: ${SW_STORAGE_MYSQL_QUERY_MAX_SIZE:5000}
    maxSizeOfBatchSql: ${SW_STORAGE_MAX_SIZE_OF_BATCH_SQL:2000}
    asyncBatchPersistentPoolSize: ${SW_STORAGE_ASYNC_BATCH_PERSISTENT_POOL_SIZE:4}

还需将 mysql 的驱动上传至 apache-skywalking-apm-bin/oap-libs 目录下:

在这里插入图片描述
启动 oapservicewebapp

apache-skywalking-apm-bin/bin/startup.sh

在这里插入图片描述

浏览器查看UI页面:http://ip:8018/

二、代理监控Java服务

下载地理包:

https://dlcdn.apache.org/skywalking/java-agent/8.13.0/apache-skywalking-java-agent-8.13.0.tgz

将下载的包上传至服务器中解压:

tar -zxvf apache-skywalking-java-agent-8.13.0.tgz

修改 config/agent.config 文件,主要修改日志的大小和数量,默认是不限制数量,时间久了会非常占用磁盘:

在这里插入图片描述

启动一个 SpringBoot 服务:

nohup java -javaagent:/opt/skywalking/agent/skywalking-agent.jar -Dskywalking.agent.service_name=SERVICE1 -Dskywalking.collector.backend_service=10.33.22.66:11800 -jar -Dspring.profiles.active=dev test_server.jar > ./nohup.log &
Logo

更多推荐