skywalking学习

文章目录


前言

本文主要介绍最近时间学习skywalking的一些内容


一、skywalking单体安装部署

1. 下载skywalking

下载地址

下载对应的版本,上传到虚拟机

2. 部署oap和oap-ui服务

解压对应的下载的包

shell 复制代码
tar -zxvf apache-skywalking-apm-9.7.0.tar.gz

.sh是linux上的执行文件

.bat是windows上的脚本文件

在linux上我们可以通过 sh startup.sh来启动skywalking,但是它会存在一些问题 ,这个脚本

因此我们可以分开启动 oap服务和webui页面

最好用两个命令行窗口来启动

shell 复制代码
sh oapService.sh  # 启动oap
sh webappService.sh  # 启动 web ui

这样默认启动数据会存储在h2 内存数据库中,关闭程序后数据不保留

我们可以修改对应的配置文件,存储到其它数据库中,es,mysql等

3. 测试skywalking监控springboot应用

下载java-agent并解压

启动好skywalking服务后,就可以用应用程序进行连接,这里使用idea进行连接

添加参数

复制代码
-javaagent:探针jar所在位置
-DSWAGENTNAME=skywalking-demo
-DSWAGENTCOLLECTORBACKENDSERVICES=192.168.184.200:11800   # 部署oap服务的地址

再点击运行即可自动连接到skywalking

二、搭建swck(skywalking集群)

1.安装k8s

本文主要参考
centos7 部署k8s 1.28.2
K8s集群搭建教程

根据上面的过程部署好k8s平台

注意 k8s版本不一样 部署的要求不一样

如:k8s 1.24以后版本需要装cri-docker等工具

docker安装需要配置阿里云容器镜像加速服务

2.下载swck

swck github地址

并进行安装

参考这个文档skywalking 官网 swck教程

3.设置pod自动注入java agent

直接加一个参数即可swck-injection=enabled

三、skywalking监控python

python agent支持uWSGI 和Gunicorn

使用 SkyWalking Python 代理命令行界面 (sw-python CLI)

也可以通过之前的sdk的方式集成skywalking

  1. 使用pip 安装 skywalking的agent

    pip install "apache-skywalking"

  2. 设置环境变量
    设置oap服务的地址
    export SW_AGENT_COLLECTOR_BACKEND_SERVICES=localhost:11800

  3. 运行项目即可
    原来的运行命令
    下面运行需要去掉注释,放到同一行

shell 复制代码
uwsgi --die-on-term
    --http 0.0.0.0:5000  # 应用程序的ip地址
    --http-manage-expect 
    --master --workers 3 
    --enable-threads 
    --threads 3 
    --manage-script-name 
    --mount /=main:app  # main.py 下的 app 模块

集成skywalking的命令

shell 复制代码
sw-python run -p   # 多添加这一行即可
uwsgi --die-on-term
    --http 0.0.0.0:5000 
    --http-manage-expect 
    --master --workers 3 
    --enable-threads 
    --threads 3 
    --manage-script-name 
    --mount /=main:app

四、skywalking监控cpp

skywalking监控cpp程序,目前只有通过sdk的方式进行集成
官网集成c++的sdk

github上有详细的介绍,但是这个下载过程可能会遇到无法下载子包的问题

可以按照详细的步骤进行编译,再引入到我们的项目中

但是我编译出现了很多问题,一直没有成功,对c++这一块不熟!!!


总结

通过学习了解了skywalking的使用,如何集成java,python等应用,k8s平台的安装部署等。

参考

b站 叩丁狼--skywalking安装教程 讲的很详细,思维导图也全,监控java
skywalking官网教程
官网python agent教程
官网集成c++的sdk cpp想要集成skywalking当前没有自动的agent,需要通过sdk的内嵌代码方式进行集成
swck github地址
skywalking 官网 swck教程
centos7 部署k8s 1.28.2
K8s集群搭建教程

相关推荐
知守观3 分钟前
多模块架构演进:横向分层 vs 纵向领域,13 个真实项目的切分对照
java·后端·微服务
旖旎夜光15 分钟前
LeetCode 315: 算右侧小于当前元素的个数(归并排序) —— 题解
c++·学习·算法·leetcode·排序算法
Java成神之路-18 分钟前
Java String 为什么不可变?和 HashMap 到底有什么关系?
java
paopaokaka_luck21 分钟前
基于springboot+vue的益暖微光公益服务平台(DeepSeek公益助手、善款信息追溯、志愿服务积分闭环、ECharts运营分析、活动状态自动流转)
java·前端·javascript·spring boot·mysql·架构·echarts
像风一样自由202023 分钟前
2.如何用FastAPI把一个Python算法封装成HTTP服务
python·算法·fastapi
青少儿编程课堂30 分钟前
蓝桥杯·全国青少年信息素养大赛·电子学会Python/C++考级:字典树前缀树与单词检索统计
c++·python·算法·bfs·信息学竞赛
田里的水稻30 分钟前
FA_CNN卷积神经网络十八---感知机到多层感知机PyTorch
人工智能·pytorch·python
文丑颜不良啊32 分钟前
LeetCode1401~1420题目解析
java·leetcode
Nuanyt34 分钟前
LeetCode Hot 100 链表专题2 3 题 (Java)
java·笔记·算法·leetcode·链表
文丑颜不良啊41 分钟前
LeetCode1341~1360题目解析
java·leetcode