更新时间:2024-11-19 GMT+08:00
分享

为Docker应用安装Agent

前提条件

部署APM Agent时,必须确保接入APM的机器与APM服务网络连通,Agent才能正常工作。

可使用Telnet命令测试目标机器与APM服务器网络是否连通。例如,以检查华北-北京四区域,且接入方式选择“增强型探针”的连通性为例,请登录应用所部署的机器,并输入命令telnet 100.125.12.108:41333,其他区域地址请参考探针接入地址

Java语言支持增强型探针、OpenTelemetry和Skywalking。

操作步骤

  1. 登录管理控制台。
  2. 单击左侧,选择“管理与监管 > 应用性能管理 APM”,进入APM服务页面。
  3. 在左侧导航栏中选择“应用监控 > 应用列表”。
  4. 单击“接入应用”,进入接入应用页面。

    图1 接入应用

  5. 选择“区域”和“应用”。单击“创建应用”,弹出“创建应用”弹窗,可以具体操作参见创建应用

    图2 基础信息

  6. “接入方式”选择增强型探针、OpenTelemetry或者Skywalking。
  7. “服务端语言”选择Java。

    图3 接入方式

  8. 使用PuTTY等远程登录工具,登录待安装Agent的Linux操作系统主机,并以root权限执行相关命令。
  9. 根据应用类型选择接入对应的接入方式,按照步骤接入。

    图4 数据接入
    表1 参数说明

    参数

    说明

    是否必填

    APM_AK

    APM_SK

    安装JavaAgent的AK和SK。获取APM_AK和APM_SK方法参见访问密钥

    注意:

    如果直接复制命安装JavaAgent的命令,请注意填写“APM_AK”和“APM_SK”时,删除“{}”。

    例如:

    curl -k https://javaagent.***/apm_agent_install2.sh -o apm_agent_install.sh && bash apm_agent_install.sh -ak * -sk * -masteraddress https://**** -obsaddress https://javaagent.***.com -version latest; history -cw; history -r 

    必填

    探针安装路径

    Agen探针安装的路径。

    必填

    appName

    组件名称,代表一个组件,需要使用英文字符开头。同一个应用下,组件名称不能重复。一个组件可以包含多个环境。不能重复,如果要重复,使用instanceName区分。

    必填

    env

    环境名称,代表一个应用在一个地方的部署。一个应用程序根据配置不同可以部署多个环境,比如测试环境,现网环境。每个环境都在一个region部署,具有唯一的region属性。该参数可以为空,代表默认环境。

    选填

    envTag

    环境标签,主要用于环境过滤,多个环境打上相同的环境标签,在web页面上可以通过标签将这些环境过滤出来。该参数可以为空。

    选填

    business

    应用英文名称,为全局概念。如果填写,则必须提前创建该应用。如果为空,则代表默认应用(开通APM时系统会自动创建一个默认应用)。

    选填

    subBusiness

    子应用,为全局概念,在应用下面子文件夹。该参数可以为空,为空代表资源挂载在根应用下面,子应用最多支持三层。比如 a/b/c,a、b、c各代表一层。

    选填

    用户应用

    用户所属的应用名称。

    必填

  10. 将复制的命令放入Dockerfile文件中,并增加JAVA_TOOL_OPTIONS环境变量。

    RUN curl -k https://javaagent.obs.xx-xxx-x.xxxx.huawei.com/apm_agent_install2.sh -o apm_agent_install.sh && bash apm_agent_install.sh -ak {AK}-sk {SK} -masteraddress https://xxx.xx.xx.xx:xxx -obsaddress https://javaagent.obs.xx-xxx-x.xxxx.huawei.com -version latest
    
    ENV JAVA_TOOL_OPTIONS=-javaagent:${PROJECT_DIR}/apm-javaagent/apm-javaagent.jar=appName=${APP_NAME}

  11. 重新构建镜像,Dockerfile文件示例。

    FROM openjdk
    RUN mkdir /opt/cloud 
    ENV PROJECT_DIR=/opt/cloud
    ENV APP_NAME=hello
    WORKDIR $PROJECT_DIR
    ADD ${APP_NAME}.jar ${APP_NAME}.jar
    RUN curl -k https://javaagent.obs.xx-xxx-x.xxxx.huawei.com/apm_agent_install2.sh -o apm_agent_install.sh && bash apm_agent_install.sh -ak {AK}-sk {SK} -masteraddress https://xxx.xx.xx.xx:xxx -obsaddress https://javaagent.obs.xx-xxx-x.xxxx.huawei.com -version latest
    ENV JAVA_TOOL_OPTIONS=-javaagent:${PROJECT_DIR}/apm-javaagent/apm-javaagent.jar=appName=${APP_NAME}
    CMD ["bash","-c","java -jar ${APP_NAME}.jar" ]

  12. 重新部署应用。

相关文档