跳到主要内容

部署

UniAgent安装包

当服务器上存在多种语言的应用时,推荐使用UniAgent安装。UniAgent安装包内集成了Java、PHP、.NET Core 等多个语言的探针,安装后不需要手工修改应用的配置文件,所有嵌入探针的动作均由UniAgent自动完成,并且可以自动监控Docker容器内的应用。

安装路径固定为/opt/tingyun-oneagent,UniAgent安装步骤如下:

  1. 下载UniAgent包,并执行安装脚本。

    sudo ./tingyun-agent-oneagent-版本.sh
  2. 重启PHP宿主服务(apache或php-fpm)。

    sudo service httpd start

    sudo service php-fpm start

BIN安装包

要将探针安装到指定目录下时,必须使用bin包进行安装。

参数:

--license 指定license, 必须填写

--collectors 指定collector地址, 必须填写

--prefix 指定安装路径, 默认为/opt

--appname 指定应用名称,默认为PHP Application, 支持从环境变量获取, 例如 \${CUSTOM_ENV_NAME}

--skipcheck 跳过检查collector连通性, 当构建docker镜像时请设置为true

例如:

sudo ./tingyun-agent-php-版本.x86_64.bin --license=您的license --collectors=地址:端口 \
--appname=应用名称 --skipcheck=true

安装步骤

  1. 运行bin包进行安装,默认安装到 /opt/ 下。

    sudo ./tingyun-agent-php-版本.x86_64.bin --license=您的license --collectors=地址:端口

    安装脚本会尝试自动查找php路径并修改php.ini,将探针tingyun.so加到php.ini内。

    如果您需要将bin包安装到指定位置,请使用 --prefix 参数。

    sudo ./tingyun-agent-php-版本.x86_64.bin --prefix=/path/to
  2. 重启php宿主服务(apache或php-fpm)。

    sudo service httpd start

    sudo service php-fpm start

docker镜像构建

  1. 将安装包拷贝到Dockerfile所在目录。

  2. 修改Dockerfile,以下为举例,请酌情修改。

    FROM php:7.1-fpm

    # web application

    RUN cp /usr/local/etc/php/php.ini-production /usr/local/etc/php/php.ini

    RUN echo "<?php phpinfo(); ?>" > /var/www/html/info.php

    # install tingyun agent

    COPY tingyun-agent-php-3.2.0.0.x86_64.bin .
    RUN sh ./tingyun-agent-php-3.2.0.0.x86_64.bin \
    --license="B9wJmHhxdcGRIZNR" --collectors="192.168.5.50:7665" --appname="\${CUSTOM_ENV_NAME}" --skipcheck=true
    RUN rm -rf ./tingyun-agent-php-3.2.0.0.x86_64.bin

    # run web application

    ENTRYPOINT ["php-fpm"]

手动安装PHP扩展

当无法在标准位置查找到PHP或缺少PHP某些信息时,自动安装PHP扩展失败,此时需要我们手动安装。

  1. 创建 phpinfo() 脚本。

    echo "<?php phpinfo(); ?>" > /path/to/info.php
  2. 使用浏览器访问info.php。

  3. 运行安装脚本。

    sudo /opt/tingyun-php/scripts/install-by-web.sh

    Looking for phpinfo() in web ...

    Please input phpinfo url:

    录入info.php对应的URL。

    安装脚本会尝试利用phpinfo信息查找PHP路径并修改php.ini,将探针tingyun.so加到php.ini内。

  4. 重启Web容器。