前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >k8s快速接入skywalking

k8s快速接入skywalking

作者头像
怀朔
发布2022-05-29 11:44:57
1.9K0
发布2022-05-29 11:44:57
举报
文章被收录于专栏:运维入门时间

本文主要适合新手运维在快速配置APM 全链路检测 ,并在k8s部署过程给出一定思路, 如果已经解决该问题 直接跳过该文章,本文编写的过程中 参考前同事(小黑龙)之前部署心得和体验。

本文主要为了如下几个部分

1、所需配置

2、搭建部署skywalking

3、k8s接入skywalking jar

4、访问测试

1

所需配置

软件

代码语言:javascript
复制
java   推荐使用 1.11以上
skywalking   
elasticsearch (存储skywalking数据) 推荐使用7.0以上版本。不推荐使用mysql h2等等

系统

代码语言:javascript
复制
操作系统:centos 7.8 64
CPU:2C 
内存:8G
硬盘 300G ESSD

2

部署skywalking

部署JAVA

代码语言:javascript
复制
wget https:/-init.oss-cn-hangzhou.aliyuncs.com/jdk-11.0.9_linux-x64_bin.tar.gz
tar zxvf jdk-11.0.9_linux-x64_bin.tar.gz -C /usr/local/、
cat << EOF > /etc/profile
export JAVA_HOME=/usr/local/jdk-11.0.9
export CLASS_PATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin
EOF
source /etc/profile
java -version

elasticsearch 厂商购买

skywalking

一、从官网下载

代码语言:javascript
复制
cd /usr/local/src
wget https://www.apache.org/dyn/closer.cgi/skywalking/8.6.0/apache-skywalking-apm-es7-8.6.0.tar.gz

tar zxvf apache-skywalking-apm-es7-8.6.0.tar.gz -C /usr/local
cd /usr/local/aapache-skywalking-apm-es7-8.6.0/config

二、修改配置

cd /usr/local/apache-skywalking-apm-es7-8.6.0/config

代码语言:javascript
复制
vim application.yml
####修改storage相关信息####
storage:
  selector: ${SW_STORAGE:elasticsearch7}
  elasticsearch7:
    nameSpace: ${SW_NAMESPACE:"es-cn-nif1ys33y0027zfox"}
    clusterNodes: ${SW_STORAGE_ES_CLUSTER_NODES:es-cn-nif1ys33y0027zfox.elasticsearch.aliyuncs.com:9200}
    user: ${SW_ES_USER:"elastic"}
    password: ${SW_ES_PASSWORD:"aoteman666"}

    只要修改 storage下面的配置
    selector: ${SW_STORAGE:elasticsearch7}  修改成: selector: ${SW_STORAGE:elasticsearch7}
    nameSpace: ${SW_NAMESPACE:""}           修改成: nameSpace: ${SW_NAMESPACE:"xxxxxxxx"}   
    user: ${SW_ES_USER:""}                  修改成: user: ${SW_ES_USER:"elastic"}
    password: ${SW_ES_PASSWORD:""}          修改成: password: ${SW_ES_PASSWORD:"aoteman666"}

三、启动服务

代码语言:javascript
复制
 # 启动skywalking服务端
cd /usr/local/apache-skywalking-apm-es7-8.6.0/bin
./startup.sh start

# 设置开机启动
chmod a+x /etc/rc.d/rc.local
vim /etc/rc.local
/usr/local/apache-skywalking-apm-es7-8.6.0/bin/startup.sh start

3

k8s接入skywalking jar

配置应用

代码语言:javascript
复制
1、将sw-agent 放入git项目中
参考 xxx-app这个项目,将sw-agent下载到这项目中 xxx-app/data下面
2、docker build时将 sw-agent加入到docker镜像中
修改Dockerfile,新增:COPY sw-agent/ /var/local/sw-agent
3、修改run.sh, 启动命令中新增:-javaagent:/var/local/sw-agent/skywalking-agent.jar
以 shenlu-app为例,启动命令为:sh -c  "/var/local/jdk-11.0.9/bin/java -javaagent:/var/local/sw-agent/skywalking-agent.jar -jar ${JAVA_OPTS} /var/local/shenlu-shenlu-app.jar --spring.profiles.active=${PROFILE}"
4、修改k8s deployment的yaml文件,传入sw相关的变量
在 spec.template.spec.containers.env下面新增:

            - name: SW_AGENT_NAME
              value: xxx-app(这里需要随项目名来改动)
            - name: SW_AGENT_COLLECTOR_BACKEND_SERVICES
              valueFrom:
                configMapKeyRef:
                  key: SW_AGENT_COLLECTOR_BACKEND_SERVICES
                  name: skywalking-env(已经创建好skywaling-env这个configmap)
 
5、yaml提交到git仓库后,按正常流程部署服务,就可以正常加载skywalking agent了

4

访问测试

访问skywalking服务

本教程适合新手运维 希望对大家有所帮助!!

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-07-01,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 运维入门时间 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档