SpringCloud+skywalking链路跟踪
一、 环境准备
1. 基础环境
CentOS 6.9
Eclpse Oxygen.2 Release (4.7.2)
2. SkyWalking版本(3.2.6)和相关要求信息:
被监控程序要求jdk6+
SkyWalking collector和WebUI要求JDK8+
Elasticsearch 5.x (版本必须是5.X)
Zookeeper 3.4.10
资料参考地址:
https://github.com/apache/incubator-skywalking/blob/master/docs/cn/Deploy-backend-in-cluster-mode-CN.md
发布版本下载地址:
https://github.com/apache/incubator-skywalking/releases
3. Springcloud 版本:
二、 Skywalking安装
1. 基础包准备:
skywalking-agent.zip(Windows使用)
skywalking-collector.tar.gz
skywalking-web.tar.gz
Elasticsearch 5.6.8
下载:
url:https://www.elastic.co/downloads/past-releases
Zookeeper:
下载地址:
http://zookeeper.apache.org/releases.html#download
2. Zookeeper安装
2.1 安装:
tar -zxvf zookeeper-3.4.11.tar.gz
cd zookeeper-3.4.11/
mkdir data
cd data/
pwd
Tips:记住这个路径
2.2 修改配置
cd ${zookeeper path}/conf/
Tips:zookeeper /conf 目录下
cp zoo_sample.cfg zoo.cfg
vi zoo.cfg
修改内容信息如下:
Tips: dataDir 的值与之前创建的data目录保持一致
2.3 启动
cd ${zookeeper path}/bin/
./zkServer.sh start
ps -ef|grep zookeeper
3. ElasticSearch安装(仅安装单集群)
3.1 解压安装
tar -zxvf elasticsearch-5.6.8.tar.gz
cd elasticsearch-5.6.8
3.2 配置修改
cd ${elasticsearch-path}/config/
vi elasticsearch.yml
修改内容:
分别去掉一下注释,并将对应的值修改为如下:
cluster.name: CollectorDBCluster
node.name: skywalking
network.host: 0.0.0.0
http.port: 9200
添加如下内容:
thread_pool.bulk.queue_size: 1000
bootstrap.memory_lock: false
bootstrap.system_call_filter: false
#elasticsearch-head跨域访问
http.cors.enabled: true
http.cors.allow-origin: '*'
3.3 切换root用户修改相关限制
3.3.1 修改用户创建文件最大数以及内存锁定配置
vi /etc/security/limits.conf
如下图所示:
保存、退出重新登录ssh、查看配置是否生效
ulimit –a
Tips:
1.生产环境,请将最前面的*替换成指定的用户,如果使用*标识所有用户
2.如果修改了soft 未生效,请查看/etc/profile是否有ulimit的限制配置
3.3.2 需改用户最大可创建进程数
vi/etc/security/limits.d/{number}-nproc.conf
添加修改如下内容:
* soft nproc 4096
修改内容如下:
保存退出
3.3.3 设置最大虚拟内存大小
vi /etc/sysctl.conf
文件尾部添加如下内容:
vm.max_map_count=655360
执行命令生效文件
sysctl -p
退出root用户
3.4 启动elasticsearch
初次启动确定启动OK
./elasticsearch
Tips:如出现启动异常自行百度解决
切换后台启动:
./elasticsearch–d
4. Skywalking-collector安装
4.1 安装
tar -zxvf skywalking-collector.tar.gz
cd skywalking-collector
4.2 修改配置
cd skywalking-collector/config
vi application.yml
Tisp:
1.zookeeper地址配置
2.storage elasticsearch配置
3.localhost更换本机真实ip,确认所有默认端口都未占用
4.3 启动
cd skywalking-collector/bin
./startup.sh
查看
skywalking-collector/log/skywalking-collector-server.log文件中无启动错误信息,确认启动成功
ps -ef|grep skywalking-collector
5. 安装Skywalking-web
5.1 解压安装
tar -zxvf skywalking-web.tar.gz
5.2 修改配置文件
cd skywalking-web/config/
application.properties为web监听端口,默认18080
修改连接skywalking-colletor信息
vi collector_config.properties
5.3 启动web
cd skywalking-web/bin/
./web-service.sh;
tailf ../logs/skywalking-web-server.log
确认启动无错误日志
5.4 访问web页面
http://ip:18080/
出现如下画面已启动成功
三、 Springcloud 微服务工程准备
1. 工程自行资料搭建,demo源码如下:
工程目录结构:
demo源码:
2. 启动演示
2.1 解压skywalking-agent
Skywalking探针配置参考:
https://github.com/apache/incubator-skywalking/blob/master/docs/cn/Deploy-skywalking-agent-CN.md
2.2 启动注册中心
2.3 启动服务提供者和消费者:
Skywalking-agent配置 eclipse
启动时能看到如下信息:
表示agent以加载成功
2.4 访问注册中心
2.5 消费服务接口访问:
http://localhost:1113/feign?hello=hahah
四、 Skywalking-web查看调用
4.1访问skywalking-web服务:
服务调用情况
4.2Trance stack信息查看
4.3Instance Overview信息查看
点击其中一个可以查看堆栈信息:
4.4Service Tree 信息查看
springcloud 基础微服务 demo工程下载地址:
https://download.csdn.net/download/xiaoll880214/10318847
tips:图片出不来,可跳往有道云分享地址:
http://note.youdao.com/noteshare?id=44153d72a72999c4d4aba15b9cfbca39
github地址:
https://github.com/Xlinlin/spring-cloud-demo