Linux / Centos Stream 9安装 Skywalking 9.4.0 记录

链路追踪框架
官网:http://skywalking.apache.org/
下载:http://skywalking.apache.org/downloads/
Github:https://github.com/apache/skywalking
文档:https://skywalking.apache.org/docs/main/v9.4.0/readme/
中文文档: https://skyapm.github.io/document-cn-translation-of-skywalking/
在这里插入图片描述


1. 下载

SkyWalking OAP 服务、SkyWalking UI 服务
官网下载:
https://skywalking.apache.org/downloads/
在线下载:

wget https://dlcdn.apache.org/skywalking/9.4.0/apache-skywalking-apm-9.4.0.tar.gz

官方下载
下载 Agents
在线下载:

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

8.15


2. 解压

习惯放到local路径下

cd /usr/local/
tar -zxvf apache-skywalking-apm-9.4.0.tar.gz -C /usr/local
tar -zxvf apache-skywalking-java-agent-8.15.0.tgz -C /usr/local

3. 配置SkyWalking OAP

避免端口冲突,更换 SkyWalking UI界面默认8080端口:

cd apache-skywalking-apm-bin

查看目录

ll

目录

编辑yml文件,以8100端口为例:

vi webapp/application.yml 

8100
默认内存模式,更改为MySQL连接

vi config/application.yml

:set number 可查看行号

大概133 行 修改h2为mysql

storage:
      selector: ${
    
    SW_STORAGE:mysql}

mysql
大概183-194行,确认MySQL连接信息(地址、账号、密码),记得新建数据库。

    mysql:
         properties:
           jdbcUrl: ${
    
    SW_JDBC_URL:"jdbc:mysql://localhost:3306/swtest?rewriteBatchedStatements=true"}
           dataSource.user: ${
    
    SW_DATA_SOURCE_USER:root}
           dataSource.password: ${
    
    SW_DATA_SOURCE_PASSWORD:123456}

数据库

ESC :wq 保存并退出

下载MySQL驱动jar包到 /oap-libs 目录下
wget -P /usr/local/apache-skywalking-apm-bin/oap-libs https://repo1.maven.org/maven2/com/mysql/mysql-connector-j/8.0.32/mysql-connector-j-8.0.32.jar


然后新建数据库 swtest
新建


4. 启动 SkyWalking OAP 服务

sh bin/oapService.sh

成功
查看启动日志:tail -f logs/skywalking-oap-server.log
最后一句为
50 [main] INFO [] - Version of OAP: 9.4.0-520d531
skywalking-oap-server服务启动后会暴露11800 和 12800 两个端口,记得放开端口。
在这里插入图片描述

端口开放:
开放指定端口

firewall-cmd --zone=public --add-port=11800/tcp --permanent
firewall-cmd --zone=public --add-port=12800/tcp --permanent

--zone #作用域
--add-port=11800/tcp #添加端口,格式为:端口/通讯协议
--permanent #永久生效,没有此参数重启后失效

5. 启动 SkyWalking UI 服务

sh bin/webappService.sh

默认是8080端口,上面更换了
访问:
http://192.168.20.128:8100/
首页图片

官方提供了两个脚本一起启动的脚本,这次启动无误后,下次可直接

sh bin/startup.sh

服务开机自启配置,参考8


6. Java 程序接入SkyWalking

6.1在linux中 通过jar包方式接入

写一个shell脚本,通过 -javaagent 参数进行 配置SkyWalking Agent来跟踪微服务

vi SkyWalking-Test-startup.sh

添加内容:

#!/bin/sh
# SkyWalking Agent 配置
# 配置Agent名字为项目的 `spring.application.name`
export SW_AGENT_NAME=SkyWalking-Test
# 配置 Collector 地址
export SW_AGENT_COLLECTOR_BACKEND_SERVICES=127.0.0.1:11800
#配置链路的最大Span数量,默认为 300
export SW_AGENT_SPAN_LIMIT=2000
# SkyWalking Agent jar 地址
export JAVA_AGENT=-javaagent:/usr/local/skywalking-agent/skywalking-agent.jar
# jar 启动
java -jar $JAVA_AGENT -jar SkyWalking-Test-0.01-SNAPSHOT.jar

赋权:

chmod u+x SkyWalking-Test-startup.sh

等同于:

java ‐javaagent:usr/local/skywalking-agent/skywalking-agent.jar ‐DSW_AGENT_COLLECTOR_BACKEND_SERVICES=127.0.0.1:11800 ‐DSW_AGENT_NAME=SkyWalking-Test ‐jar SkyWalking-Test-0.01-SNAPSHOT.jar
脚本


6.2 在Windows中

IDEA中配置JVM参数,编辑VM Options,如果应用程序和SkyWalking部署在同一机器,backend_service可以不写

# skywalking‐agent.jar的本地磁盘的路径
-javaagent:F:\Apache\skywalking-agent\skywalking-agent.jar
# 在skywalking上显示的服务名
-Dskywalking.agent.service_name=SkyWalking-Test
# skywalking的collector服务的IP及端口
-Dskywalking.collector.backend_service=192.168.20.128:11800

-DSW_AGENT_COLLECTOR_BACKEND_SERVICES
可以指定远程地址,但-javaagent必须绑定本地路径的 skywalking- agent.jar

IDEA新版添加JVM参数:
modi
vm
添加vm


7.SkyWalking 自定义链路追踪

<!-- Skywalking 工具类-->
<dependency>
   <groupId>org.apache.skywalking</groupId>
  <artifactId>apm-toolkit-trace</artifactId>
  <version>8.15.0</version>
</dependency>

只需要在业务方法上加上@Trace注解

在方法上增加@Tag或者@Tags。
@Tag 注解中 key = 方法名 ; value = returnedObj 返回值 arg[0] 参数
trace
然后启动项目,再去刷新下项目,就有记录了
记录
记录


8.设置SkyWalking OAP 服务、SkyWalking UI 服务开机自启

准备设置一个.service,开机执行这个脚本文件,以此实现自启效果
系统启动脚本目录 /etc/systemd/system/

新建服务文件

vi /etc/systemd/system/skyWalking.service

添加:

[Unit]
Description=skyWalking
After=network.target remote-fs.target nss-lookup.target mysql8.service zookeeper.service kafka.service nacos-cluster.service

[Service]
Type=forking
ExecStart=sh /usr/local/apache-skywalking-apm-bin/bin/startup.sh start
PrivateTmp=true

[Install]
WantedBy=multi-user.target

按ESC :wq保存并退出

赋权:

chmod 754 /etc/systemd/system/skyWalking.service

设置开机自启:

systemctl enable skyWalking.service

重载配置

systemctl daemon-reload

可重启尝试脚本可行性(reboot)

查看状态

 systemctl status skyWalking.service

暂时到这,感谢阅览~
END


猜你喜欢

转载自blog.csdn.net/qq_44870331/article/details/130154644
今日推荐