Kubernetes中使用skywalking-java-agent

接入skywalking-java-agent时,优先参考的官方文档, 但只看这个有点云里雾里,在此分享下最终使用的接入方案。

Dockerfile

# FROM apache/skywalking-java-agent:8.9.0-jdk8
FROM nikyotensai/skywalking-java-agent:8.9.0-springboot2

直接使用skywalking-java-agent作为基础镜像,这样就不需要再配置initContainers。如果DockerFile是和项目在一起的话,还可以替换agent.config,做一些针对性的配置。nikyotensai/skywalking-java-agent:8.9.0-springboot2是我基于实际使用需求做过调整的image,主要删除了swctl及一些和springboot2不相关的plugin。如果需求一样可以直接使用,如果不一样,建议根据实际需求进行调整。

Kubernetes

apiVersion: apps/v1
kind: Deployment
metadata:
  name: { your-project-name }
spec:
  replicas: 1
  template:
    spec:
      containers:
        - name: { your-project-name }
          image: { your-image }
          env:
            - name: SW_AGENT_NAME
              value: { group-name }::{ your-project-name }
            - name: SW_AGENT_COLLECTOR_BACKEND_SERVICES
              value: { oap-server-address }
  • SW_AGENT_NAME:注册到skywalking的服务名,group-name+::是起分组的作用,如果不需要做适当调整。
  • SW_AGENT_COLLECTOR_BACKEND_SERVICES:skywalking服务器的ip+port。
    上面的两个配置如果不会变,也可以写在Dockerfile中。其它配置请参考agent.config文件。

上面就是在Kubernetes接入skywalking-java-agent的方案,欢迎留言。

posted @ 2022-07-24 21:30  Monkey_D_Dragon  阅读(256)  评论(0编辑  收藏  举报