MENU

LNMP 环境安装 Nginx Amplify

2019 年 11 月 17 日 • 阅读: 168 • 笔记•记录

本文若有失效或者错误内容请留言或者通过其他方式联系我,尽可能及时更新。

欢迎关注不怎么更新的 TG 频道


前言

前些天按照 @Newlearner365 大佬的文章Uptime Robot-定时监控VPS运行情况弄了个监控,还是挺方便的。特别是可以 RSS 订阅,然后用自己搭建的 tg RSS 机器人订阅,方便地接收提醒。

这两天又偶然看到了 Nginx Amplify,可以监控Nginx、php-fpm、mysql、系统等工作情况,并对Nginx配置文件给出建议。其实我对这些没啥需求,不过,看那监控界面挺好看的,所以我就弄了一个(颜值才是第一生产力😄️)。

服务器环境是直接使用LNMP一键脚本的,所以以下内容都是基于此。其实官方文档里面写得非常详细,有能力的建议直接看文档,文中大部分内容来自于官方文档。

准备工作

安装Amplify Agent

注册好帐号之后,就会有安装amplify的步骤,按照提示做就好,具体如下:

  1. 下载一键安装脚本:

    curl -sS -L -O https://github.com/nginxinc/nginx-amplify-agent/raw/master/packages/install.sh
    
    # 或者
    wget https://github.com/nginxinc/nginx-amplify-agent/raw/master/packages/install.sh
  2. root用户执行以下命令安装amplify:

    # 该命令在安装向导中直接复制即可
    API_KEY='your-api-key' sh ./install.sh
  3. 检查amplify是否启动:

    ps ax | grep -i 'amplify\-'

配置 Nginx

  1. 需要添加一个stub_status.conf文件,对于LNMP来说,可以直接在/usr/local/nginx/conf/vhost/下添加。

    # 1. 进入该文件夹
    cd /usr/local/nginx/conf/vhost
    # 2. 创建 stub_status.conf 文件
    cat > stub_status.conf
    # 3. 将以下内容粘贴到终端中
    server {
        listen 127.0.0.1:80;
        server_name 127.0.0.1;
        location /nginx_status {
            stub_status on;
            allow 127.0.0.1;
            deny all;
        }
    }
    # 4. 使用 `ctrl+d` 退出
    # 5. 检查配置文件
    nginx -t
    ## 返回如下
    nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
    nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful
    
  2. 配置access.logerror.log以提供更多信息:

    # 1. 进入 nginx 配置文件夹
    cd /usr/local/nginx/conf
    # 2. 编辑 nginx.conf 文件
    vim +/http nginx.conf
    # 3. 在 http 中进入 log 格式
    log_format  main_ext  '$remote_addr - $remote_user [$time_local] "$request" '
                          '$status $body_bytes_sent "$http_referer" '
                          '"$http_user_agent" "$http_x_forwarded_for" '
                          '"$host" sn="$server_name" '
                          'rt=$request_time '
                          'ua="$upstream_addr" us="$upstream_status" '
                          'ut="$upstream_response_time" ul="$upstream_response_length" '
                          'cs=$upstream_cache_status' ;
    # 4. 打开自己网站的配置文件
    vim +/access_log vhost/your-domain.conf
    # 5. 修改内容如下
    access_log  /home/wwwlogs/10101.io.log  main_ext;
    error_log  /home/wwwlogs/10101.io.error.log warn;
    # 6. 重载nginx
    service nginx reload

以上配置好之后,amplify的配置向导流程基本走完了,点击finish后稍等一会儿就可以看到统计结果了。此时,图表中只有nginx以及system的信息,如果需要php-fpm以及mysql的统计信息,那么还需要继续配置一下。

配置 php-fpm

# 1. 编辑 php-fpm 配置文件
vim /usr/local/php/etc/php-fpm.conf
# 2. 添加内容
pm.status_path = /status
# 3. 检查 agent.conf 文件中是否开启 php-fpm
cat /etc/amplify-agent/agent.conf | grep phpfpm    # phpfpm = True
# 4. 重启 php-fpm 以及 amplify agent
service php-fpm restart
service amplify-agent restart

等待一会儿刷新amplify网页,数据就会出现。

配置 MySQL

# 1. 登录数据库
mysql -u root -p    # 输入数据库root用户密码
# 2. 创建新用户
CREATE USER 'amplify-agent'@'localhost' IDENTIFIED BY 'your-passwd';
# 3. 登录 amplify-agent 用户
mysql -u amplify-agent -p    # 输入数据库 amplify-agent 用户密码
# 4. 检查用户权限
show global status;
# 5. 编辑 agent.conf 文件
vim /etc/amplify-agent/agent.conf
# 6. 修改内容如下
[extensions]
..
mysql = True

[mysql]
#host = 127.0.0.1
#port = 3306
unix_socket = /tmp/mysql.sock    # cat /etc/my.cnf | grep socket
user = amplify-agent
password = your-passwd

# 7. 重启 agent
service amplify-agent restart

稍等片刻,然后刷新网页即可看到数据。

升级 Amplify-agent

# Debain/Ubuntu
apt-get update & apt get install nginx-amplify-agent

Amplify 界面

  • Overview
    amplify-overview
  • Graphs
    amplify-graphs 如上,点击上方的 tab 栏可以查看对应nginx、php-fpm、mysql、system的信息
  • Dashboards
    可在此处自定义自己需要关注的信息图表
  • Analyzer
    amplify-analyzer 分析Nginx配置信息,并给出修改意见
  • Alerts
    定义提醒规则,当达到规则条件时会给邮箱发送邮件

> 本文链接:https://10101.io/2019/11/17/nginx-amplify-for-lnmp
> 本作品采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可,转载请注明出处。

返回文章列表 文章二维码 打赏
本页链接的二维码
打赏二维码
添加新评论

已有 1 条评论
  1. 功能什么的不错 也蛮好看的 准备也来装个