一、安装SaaS版AI探针准备工作:
1.准备好可用的docker版AcmeAir应用
2.在SaaS官网tpm.oneapm.com上已注册可用的账号
3.登录tpm.oneapm.com,点击选择AI图标进入添加应用界面,点击选择java图标,按照页面提示下载OneAPM_java_Agent_3.2.0.zip文件,解压后替换License Key,将更新好License Key的OneAPM文件拷贝至待安装agent探针的AcmeAir应用所在机器
二、安装:
1. 将OneAPM文件从主机分别拷贝至webapp、auth、zull所在的docker容器内:
docker cp OneAPM webapp1:/opt/tomcat
docker cp OneAPM auth1:/opt/tomcat
docker cp OneAPM zuul:/opt/tomcat
2.进入docker容器,修改各自的app_name
查看docker容器:docker ps (Names为webapp1\auth1\zuul的容器需要安装探针)
进入容器的命令:docker exec -ti [CONTAINER ID或者NAMES ] bash
进入webapp1容器:docker exec -ti webapp1 bash
进入tomcat目录:cd /opt/tomcat/
修改文件:vi OneAPM/oneapm.properties
app_name = Acmeair_webapp1
按照以上方式分别修改auth和zuul的app_name
app_name = Acmeair_auth1
app_name = Acmeair_zuul
3.修改tomcat启动参数
vi /opt/tomcat/bin/ catalina.sh
添加JAVA_OPTS="$JAVA_OPTS -javaagent:/opt/tomcat/OneAPM/oneapm.jar"
4. 提交装好探针的镜像
(重要:如果不提交,以上装探针的操作将会在重启镜像后消失)
docker commit webapp1 acmeair/webapp-mysql
docker commit auth1 acmeair/auth-service
docker commit zuul acmeair/zuul
5.重启Acmeair应用
cd acmeair-netflixoss/weave-bin
sh stopall.sh
cd acmeair-netflixoss/bin
sh startallwithmysql.sh
或者只重启安装了探针的auth webapp zuul这三个子应用,这样会快点,因为不需要重新loder数据
docker rm -f webapp1 auth1 zuul
./startzuul.sh
./addwebapp.sh
./addauthsvc.sh
6.访问Acmeair应用, 验证应用启动正常
(返回码200表示应用正常,可以多访问几次,保证足够的trace数据达到saas服务端)
7. 验证SaaS官网上已正常接收数据
能显示出装了探针的应用:
能完整展现应用之间调用关系的拓扑图: