Takin
为什么打算使用Takin
具备从客户端到服务端一站式流量发起与诊断功能,目前还没看到其他开源产品。
1.探针方式接入,不需要修改业务代码;
2.链路治理:能够帮助业务和微服务架构分析业务链路,以技术方式获得功能视角的链路信息;
3.性能瓶颈定位:性能测试结果可以直接展现整个链路中存在性能瓶颈的微服务架构节点;
4.数据隔离:可以在不污染生产环境数据和日志的情况下实施性能测试
Takin核心原理图
(takin社区文档提供)
使用效果图
文章结构分为三大部分
- takin平台部署
- 探针介入
- demo演示
本文结合takin官方说明文档整理,部署过程相对较长,过程需要认真仔细,由于不允许使用外部链接,部分用的图片说明,更详细资料文末加群二维码。
一.Takin平台部署
docker环境准备
准备好一个装有docker的服务器,个人建议最好用一台空的linux服务器搭建,平台会涉及到多个端口,部分是公共服务端口,也不建议自行修改端口,在不了解内部配置的情况下,很容易出现问题,我这边是基于centos7安装,首先自行安装好docker。
[root@cctester ~]# docker -vDocker version 17.12.0-ce, build c97c6d6
docker环境配置
修改 Docker 镜像地址为阿里云:
vim /etc/docker/daemon.json
更新为:
配置生效:
systemctl daemon-reload
下载docker镜像
docker pull下载
下载完成之后可查看镜像。
启动docker镜像
-d是后台启动,-p是需要开放的端口,容器运行初始化的时候需要安装一些必要的组件需要十分钟的样子,-d可以忽略后台组件的安装信息,如果想要查看安装信息可以去除-d参数。
最好在启动之前查看下端口号是否被占用(netstat -ano|grep 端口号)
启动成功后:
更改配置
进入容器,可以通过docker ps查看容器id,然后进入容器,其中CONTAINER ID 为容器id号
docker exec -it 6bc8daa10063 bash
[root@cctester ~]# docker exec -it 6bc8daa10063 bash[root@6bc8daa10063 data]# lltotal 1339344-rw-r--r-- 1 root root 6285 5月 14 15:09 admin.conf-rw-r--r-- 1 root root 1458 5月 14 15:41 alone_init.sql-rw-r--r-- 1 root root 59841460 5月 14 12:32 amdb-app-1.0-SNAPSHOT.jar-rw-r--r-- 1 root root 451 5月 14 16:07 amdb.env.conf-rw-r--r-- 1 root root 646 5月 14 15:39 amdb_install.sh-rw-r--r-- 1 root root 28971 5月 14 15:10 amdb.sql-rw-r--r-- 1 root root 54292848 6月 4 14:30 amdb.zipdrwxr-xr-x 7 root root 4096 7月 18 20:23 apache-zookeeper-3.5.9-bin-rw-r--r-- 1 root root 9623007 5月 14 16:21 apache-zookeeper-3.5.9-bin.tar.gzdrwxr-xr-x 5 root root 4096 7月 18 20:24 apps-rw-r--r-- 1 root root 1882 5月 14 21:18 apps_install.sh
配置serverUrl
修改serverUrl
vi /data/apps/dist/tro/index.html
将serverUrl配置成服务器本机IP地址,一般是宿主机外网ip;
重启Nginx服务
nginx -s reload
配置sugre-deploy启动命令
tip: sugre-deploy为大数据平台模块,我们先把原来的进程删了,修改配置后重启
kill sugre-deploy
进入容器后
[root@30e961d36c91 data]# ps -ef | grep surgeroot 4336 1 66 17:48 ? 00:03:20 java -jar surge-deploy-1.0-jar-with-dependencies.jar {"172.17.0.2":"192.168.1.138"} root 4574 18 0 17:53 ? 00:00:00 grep --color=auto surge
[root@30e961d36c91 data]# kill -9 4336
[root@30e961d36c91 data]# ps -ef | grep surge root 4582
18 0 17:54 ? 00:00:00 grep --color=auto surge
更改sugre-deploy的启动命令
vi /data/install.sh
将sugre-deploy的启动命令参数“172.17.0.2”对应的value更改为宿主机的IP,并保存,
宿主机内网ip