下面是基于 Docker 部署 Skywalking 实现全链路监控功能的完整攻略,包含了两个示例说明。
一、前置条件
- 已经安装好 Docker 环境,具备基本的使用能力。
- 已经下载好了 Skywalking 的镜像文件。
二、步骤
1. 下载 Skywalking 镜像
可以从 Docker Hub 上下载 Skywalking 的镜像,命令如下:
docker pull apache/skywalking-oap-server:8.6.0-es6
2. 启动 Skywalking
启动 Skywalking 的命令如下:
docker run -d \
-e SW_ELASTICSEARCH_HOSTS=127.0.0.1:9200 \
--name skywalking \
-p 12800:12800 \
apache/skywalking-oap-server:8.6.0-es6
其中 -e
参数指定了 Elasticsearch 的地址,--name
参数指定了容器的名称,-p
参数指定了端口映射。执行完这条命令之后,Skywalking 就会以守护进程的形式运行起来。
3. 配置 Skywalking
在 Skywalking 的 Web 界面上配置相关参数,在浏览器中输入 http://localhost:12800
,即可进入 Skywalking 的 Web 界面。在左侧菜单栏中选择 "application",然后点击右上角的 "+ 新增" 按钮,输入名称及 ID 信息。
4. 示例说明一:使用 Spring Boot 应用
以一个使用 Spring Boot 的 Web 应用为例,修改应用的 pom.xml 配置文件,增加 Skywalking 相关依赖:
<dependency>
<groupId>org.apache.skywalking</groupId>
<artifactId>apm-toolkit-trace</artifactId>
<version>8.6.0</version>
</dependency>
<dependency>
<groupId>org.apache.skywalking</groupId>
<artifactId>apm-toolkit-logging-logback</artifactId>
<version>8.6.0</version>
</dependency>
然后在应用的主程序上增加 Skywalking 的配置:
@SpringBootApplication
public class Application {
public static void main(String[] args) {
new SpringApplicationBuilder(Application.class)
.properties("skywalking.agent.application_code=my-application")
.run(args);
}
}
最后,运行应用即可在 Skywalking 的 Web 界面上看到相应的监控数据。
5. 示例说明二:使用 Node.js 应用
以一个使用 Node.js 的 Web 应用为例,使用 Skywalking 的 Node.js 客户端,在应用的主程序上增加相应的配置:
const tracer = require('skywalking-nodejs');
tracer.start({
serviceName: 'my-application',
directServers: '127.0.0.1:11800'
});
最后,运行应用即可在 Skywalking 的 Web 界面上看到相应的监控数据。
三、总结
以上就是使用 Docker 部署 Skywalking 实现全链路监控功能的完整攻略,包含了两个示例说明。通过上述步骤,我们可以实现对应用进行全链路监控,并且可以方便地在 Skywalking 的 Web 界面上查看应用的各种指标信息。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:基于docker部署skywalking实现全链路监控功能 - Python技术站