Skywalking链路追踪

15 篇文章 0 订阅
7 篇文章 0 订阅

一.Skywalking介绍

1.简介

        <1> 发展历程:2015年由个人吴晟(华为开发者)主导开源,作者是华为开发云监控产品 经理,主导监控产品的规划、技术路线及相关研发工作,也是OpenTracing分 布式追踪标准组织成员 ,该项目 2017年加入Apache孵化器,是一个分布式系 统的应用程序性能监控工具(APM),专为微服务、云原生架构和基于容器 (Docker、K8s、Mesos)架构而设计。

        <2>介绍: Skywalking是一个可观测性分析平台和应用性能管理系统,它也是基于 OpenTracing规范、开源的AMP系统。Skywalking提供分布式跟踪、服务网格遥测分析、度量聚合和可视化一体化解决方案。支持Java, .Net Core, PHP, NodeJS, Golang, LUA, c++代理。支持Istio +特使服务网格

2.官网

官方站点:http://skywalking.apache.org/

GitHub项目地址:https://github.com/apache/skywalking

演示地址:http://demo.skywalking.apache.org/  账号:skywalking 密码:skywalking 

3.skywalking核心功能

指标分析:服务(应用),实例(物理机),端点(接口)指标分析
问题分析:在运行时分析代码,找到问题的根本原因
服务拓扑:提供服务的拓扑图分析
依赖分析:服务实例和端点依赖性分析
服务检测:检测慢速的服务和端点
性能优化:根据服务监控的结果提供性能优化的思路
链路追踪:分布式跟踪和上下文传播
数据库监控:数据库访问指标监控统计,检测慢速数据库访问语句(包括SQL语句)
服务告警:服务告警功能

4.skywalking特点

(1)多语言自动探针,支持 Java、.NET Code 等多种语言。
(2)为多种开源项目提供了插件,为 Tomcat、 HttpClient、Spring、RabbitMQ、MySQL 等常见(3)基础设施和组件提供了自动探针。
(4)微内核 + 插件的架构,存储、集群管理、使用插件集合都可以进行自由选择。
支持告警。
(5)优秀的可视化效果。

5.skywalking架构

skyWalking整体可分为:客户端,服务端

(1)客户端

        基于探针技术采集服务相关信息(包括跟踪数据和统计数据),然后将采集到的数据上报给skywalking的数据收集器

(2)服务端(分为OAP,Storage,WebUI)

        <1> OAP:observability analysis platform可观测性分析平台,其实就是链路追踪系统的Collector收集器。负责接收客户端上报的数据,对数据进行分析,聚合,计算后将数据进行存储。

        <2> Storage:skyWalking的存储介质,默认是采用H2,同时支持许多其他的存储介质,比如:ElastaticSearch,mysql等。

        <3> WebUI:提供一些图形化界面展示对应的跟踪数据,指标数据等等。

二.Skywalking安装

1.安装前准备

        Skywalking数据存储方式有2种,分别为H2(内存)和elasticsearch,如果数据量比较大,建议使用后者,工作中也建议使用后者。

需要准备如下组件:

1:elasticsearch,建议使用elasticsearch7.x
2:elasticsearch-hq,elasticsearch的管理工具,更方便管理elasticsearch
3:Skywalking
4:Skywalking-UI

2.docker-compose部署

(1)elasticsearch安装环境配置

<1>系统资源配置修改:

elasticsearch占用系统资源比较大,我们需要修改下系统资源配置,这样才能很好的运行elasticsearch,修改虚拟机配置, vi /etc/security/limits.conf ,追加内容。

* soft nofile 65536
* hard nofile 65536

<2>修改 vi /etc/sysctl.conf ,追加内容 :

vm.max_map_count=655360

<3>让配置立即生效

/sbin/sysctl -p

(2)使用docker-compose安装以上应用

<1>创建 docker-compose.yml 并配置如下

version: '3.3'
services:
elasticsearch:
image: elasticsearch:7.6.2
container_name: elasticsearch
restart: always
privileged: true
hostname: elasticsearch
ports:
- 9200:9200
- 9300:9300
environment:
- discovery.type=single-node
- bootstrap.memory_lock=true
- "ES_JAVA_OPTS=-Xms512m -Xmx512m"
- TZ=Asia/Shanghai
networks:
- skywalking
ulimits:
memlock:
soft: -1
hard: -1
elasticsearch-hq:
image: elastichq/elasticsearch-hq
container_name: elasticsearch-hq
restart: always
privileged: true
hostname: elasticsearch-hq
ports:
- 5000:5000
environment:
- TZ=Asia/Shanghai
networks:
- skywalking
oap:
image: apache/skywalking-oap-server:8.3.0-es7
container_name: oap
hostname: oap
privileged: true
depends_on:
- elasticsearch
links:
- elasticsearch
restart: always
ports:
- 11800:11800
- 12800:12800
environment:
SW_STORAGE: elasticsearch7
SW_STORAGE_ES_CLUSTER_NODES: elasticsearch:9200
TZ: Asia/Shanghai
volumes:
- ./config/alarm-settings.yml:/skywalking/config/alarm-settings.yml
networks:
- skywalking
ui:
image: apache/skywalking-ui:8.3.0
container_name: ui
privileged: true
depends_on:
- oap
links:
- oap
restart: always
ports:
- 8080:8080
environment:
SW_OAP_ADDRESS: oap:12800
TZ: Asia/Shanghai
networks:
- skywalking
networks:
skywalking:
driver: bridge

<2>一键启动

docker-compose up -d

<3>访问测试

启动成功后访问skywalking的webui页面:http://192.168.200.129:8080/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Mr Tang

你的鼓励是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值