阿里云Prometheus监控提供一键安装配置Nginx类型的组件,并提供开箱即用的专属监控大盘。本文介绍旧版Nginx类型组件的安装配置详情。

背景信息

  • 旧版Nginx类型组件安装的是nginx-module-vts模块。
  • 旧版Nginx类型组件采集的Nginx指标如下表所示。
    指标 类型 描述
    nginx_server_requests Server Server请求数
    nginx_server_bytes Server Server字节数
    nginx_server_cache Server Server缓存
    nginx_filter_requests Filter Filter请求数
    nginx_filter_bytes Filter Filter字节数
    nginx__filter_responseMsec Filter Filter响应时间
    nginx_upstream_requests Upstreams 上行请求数
    nginx_upstream_bytes Upstreams 上行字节数
    nginx_upstream_responseMsec Upstreams 上行响应时间

前提条件

您已成功安装并运行Nginx服务,之后需要安装nginx-module-vts模块。安装nginx-module-vts模块的具体操作如下。

  1. 下载nginx-module-vts模块。
    shell> git clone git://github.com/vozlt/nginx-module-vts.git
  2. 编译配置。
    1. 在nginx编译时添加nginx-module-vts模块。
      --add-module=/path/to/nginx-module-vts
    2. 下载官方软件包并编译进nginx-module-vts模块。
      ./configure --user=www --group=www --prefix=/usr/local/nginx --with-http_sysguard_module  --add-module=nginx-module-vts
  3. 安装nginx-module-vts模块。
    make && make install
  4. Nginx Conf配置。更改Nginx Conf的配置,并添加监控接口。
    http {
        vhost_traffic_status_zone;
    		vhost_traffic_status_filter_by_host on;
    
        ...
    
        server {
    
            ...
    
            location /status {
                vhost_traffic_status_display;
                vhost_traffic_status_display_format html;
            }
        }
    }
    这里建议您同时执行如下命令打开vhost过滤。
    vhost_traffic_status_filter_by_host on
    说明 开启此功能,当Nginx配置有多个server_name的情况下,系统会根据不同的server_name进行流量的统计,否则默认会把流量全部计算到第一个server_name上。
    若您不需要统计流量的server区域,可以执行如下命令禁用vhost_traffic_status。
    server {
    ...
    vhost_traffic_status off;
    ...
    }
  5. 验证nginx-module-vts模版是否安装成功。
    curl http://127.0.0.1/status

功能入口

  1. 登录Prometheus控制台
  2. 在页面左上角选择目标地域,然后根据需要单击容器服务、Kubernetes或者ECS类型的Prometheus实例名称。
  3. 在左侧导航栏单击组件监控

添加Nginx类型的组件

  1. 组件监控页面,单击右上角的添加组件监控
  2. 接入中心面板中单击Nginx组件图标。
  3. 接入Nginx面板STEP2区域的配置页签输入各项参数,并单击确定
    ng
    参数 描述
    组件名称 组件的名称命名规范要求如下:
    • 仅可包含小写字母、数字和短划线(-),且短划线不可出现在开头或结尾。
    • 名称具有唯一性。
    说明 默认名称由组件类型及数字后缀组成。
    Nginx地址 Nginx的连接地址。
    Nginx端口 Nginx的端口号,例如:80。
    注意
    • 您需要先安装Nginx的监控模块nginx-module-vts:Nginx virtual host traffic status module,此模块可以提供JSON格式的数据产出。
    • 接入Nginx面板STEP2区域的指标页签可查看监控指标。
  4. 组件监控页面,会显示已接入的组件实例。
    wety
  5. 单击该组件实例大盘列的大盘,查看该组件的监控指标数据。
    pg_prom_dashboard_Nginx
    说明 单击该组件实例名称,也可查看该组件的监控指标数据。

相关操作

组件监控页面,可对已添加的组件执行以下操作:

  • 单击操作列的删除,可删除已添加的组件。
  • 单击操作列的日志,可查看组件的运行日志。
  • 单击操作列的详情,可查看组件的详情,包括组件的环境变量和描述信息。