Apache SkyWalking

Apache SkyWalking是一个强大的观察性分析平台,提供分布式追踪、服务网格遥测分析和度量可视化。它支持多种语言的Agent、Zipkin和Istio等数据源。本文比较了主流的APM,并提供了OAP服务器与UI的Dockerfile部署指南。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

更多内容访问我的个人主页 www.jevic.cn

SkyWalking是观察性分析平台和应用性能管理系统。
提供分布式追踪、服务网格遥测分析、度量聚合和可视化一体化解决方案。

Apache SkyWalking

SkyWalking 的核心是数据分析和度量结果的存储平台,通过 HTTP 或 gRPC 方式向 SkyWalking Collecter 提交分析和度量数据,SkyWalking Collecter 对数据进行分析和聚合,存储到 Elasticsearch、MySQL、TiDB 等其一即可,最后我们可以通过 SkyWalking UI 的可视化界面对最终的结果进行查看。

Skywalking 支持从多个来源和多种格式收集数据:多种语言的 Skywalking Agent 、Zipkin v1/v2 、Istio 勘测、Envoy 度量等数据格式。


在这里插入图片描述

目前最主流的两个APM对比

在这里插入图片描述

Dockerfile

OAP server & UI

OAP server

为了可以动态的修改 alarm-settings.yml;
因此需要配置一个 configmap 以便于修改并重新加载alarm配置;
但是由于官方提供的默认镜像使用了ENTRYPOINT 方式来启动;无法对命令进行修改;

因此需要做如下调整:

  • setp 1: 下载源文件
git clone https://github.com/apache/skywalking-docker.git
  • setp 2: 修改对应版本的Dockerfile
    • 例如: 7.0 版本
# vim $PATH/skywalking-docker/7/7.0/oap-es7/Dockerfile

### 删除最后一行 ENTRYPOINT 或者将 ENTRYPOINT 修改为 CMD
ENTRYPOINT ["bash", "docker-entrypoint.sh"]
  • setp 3: 重新build 镜像即可
docker build -t apache/skywalking-oap-server:7.0.0-es7 .
  • setp 4: 修改时区,并上传到私有仓库

Dockerfile

FROM apache/skywalking-oap-server:7.0.0-es7
ENV TZ=Asia/Shanghai
RUN apk add --no-cache tzdata \
    && ln -snf /usr/share/zoneinfo/$TZ /etc/localtime \
    && echo $TZ > /etc/timezone
docker build -t reg.jevic.cn/basic/skywalking-oap-server:7.0.0-es7 .
docker push reg.jevic.cn/basic/skywalking-oap-server:7.0.0-es7
skywalking-ui
FROM apache/skywalking-ui:7.0.0
ENV TZ=Asia/Shanghai
RUN apk add --no-cache tzdata \
    && ln -snf /usr/share/zoneinfo/$TZ /etc/localtime \
    && echo $TZ > /etc/timezone
docker build -t reg.jevic.cn/basic/skywalking-ui:7.0.0 .
docker push reg.jevic.cn/basic/skywalking-ui:7.0.0

skywalking-agent

FROM apache/skywalking-base:7.0.0-es7 AS build

FROM busybox

ENV AGENT_PATH=/opt/skywalking/agent

COPY --from=build /skywalking/agent $AGENT_PATH

RUN set -ex \
    ## URL跟踪过滤
    && mv $AGENT_PATH/optional-plugins/apm-trace-ignore-plugin-7.0.0.jar $AGENT_PATH/plugins/ \
    ## 网关
    && mv $AGENT_PATH/optional-plugins/apm-spring-cloud-gateway-2.x-plugin-7.0.0.jar $AGENT_PATH/plugins/
docker build -t reg.jevic.cn/basic/skywalking-agent:v7 .
docker push reg.jevic.cn/basic/skywalking-agent:v7

Deployment

git clone yaml 文件执行部署即可

SkyWalking K8s deployment scripts

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值