部署

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容器。

results matching ""

    No results matching ""