Nginx指标接入AOM
您可以在主机上安装AOM提供的Nginx Exporter插件,然后通过配置指标接入规则来创建采集任务,就可以监控主机中的Nginx相关指标。
前提条件
- 已启用NGINX stub_status模块。
- 如需使用新版Nginx Exporter接入功能,需要在接入中心切换为新版页面。
启用Nginx stub_status模块
Nginx Prometheus Exporter是通过Nginx的stub_status模块对其进行监控,需要确保Nginx服务启用了stub_status模块。
- 登录到业务Nginx服务所在节点,以root权限用户执行以下命令检查Nginx是否已经启用stub_status模块(一般在/usr/local/nginx/sbin/nginx目录下执行):
nginx -V 2>&1 | grep -o with-http_stub_status_module
- 如果输出with-http_stub_status_module,则说明Nginx 已启用 stub_status模块。
- 如果未输出任何结果,则可以使用--with-http_stub_status_module参数重新配置configure文件,来编译一个Nginx。示例如下:
./configure \ ##在原基础上添加--with-http_stub_status_module参数进行编译。 --with-http_stub_status_module make sudo make install
- 确认stub_status模块启用之后,在nginx.conf配置文件中添加如下配置(nginx.conf配置文件一般在/usr/local/nginx/conf目录下)。示例如下:
- 执行如下命令在vi编辑器中打开nginx.conf配置文件:
vi /usr/local/nginx/conf/nginx.conf
- 输入“i”进入编辑模式,添加如下配置信息:
server { listen 8080; # 根据业务情况进行调整。侦听端口 listen [::]:8080; # 根据业务情况进行调整,ipv6侦听端口 server_name localhost; # 根据业务情况进行调整 location = /stub_status { # 具体路径可根据业务情况进行调整 stub_status on; access_log off; allow 127.0.0.1; } }
- 按“Esc”,输入:wq保存并退出。
- 执行如下命令在vi编辑器中打开nginx.conf配置文件:
- 配置修改完成后,重新启动Nginx服务。
配置Nginx Exporter接入AOM
- 登录AOM 2.0控制台。
- 在左侧导航栏选择“接入中心 > 接入中心”,筛选出“自建中间件”类型下的“NGINX”卡片,并单击卡片上的“接入指标(AOM)”,进入配置页面。
- 在接入Nginx指标配置页面中,配置相关参数信息。
- Prometheus实例配置。
- Prometheus 实例类型:选择Prometheus实例类型,支持选择“Prometheus for ECS”和“Prometheus 通用实例”。
- 选择 Prometheus 实例:在下拉列表中选择Prometheus实例,并单击“下一步”。
单击“查看实例”可跳转至所选实例的详情页面。如果当前没有可选的Prometheus实例,可以单击“新建 Prometheus 实例”去创建“Prometheus for ECS”或“Prometheus 通用实例”类型Prometheus实例。
- 安装插件并测试连通性。
- 参考下表配置安装插件相关参数信息。
表1 参数配置表 操作
参数
说明
基础配置
接入规则名称
自定义指标接入规则名称。长度范围为1到50个字符,支持大小写字母,数字,特殊字符(_-),以字母开头。
配置指标采集插件
操作系统
主机的操作系统,当前只支持选择Linux。
采集插件
采集插件默认Nginx Exporter,并选择插件的版本。
选择安装指标采集插件的服务器
选择服务器
单击“选择服务器”,选择运行中的服务器,用于配置采集任务和安装Exporter。
- 在选择服务器页面,可通过服务器ID、服务器名称、运行状态、IP地址搜索选择服务器。
- 选择的服务器必须是UniAgent状态为运行中的服务器,否则创建的采集任务无法采集数据。
- 如果没有您需要的服务器,可能是因为您的服务器上没有安装UniAgent,需要先安装UniAgent,同时UniAgent版本需在 1.1.3 及以上,如果低于此版本,请升级UniAgent到最新版本。
连接Nginx 实例
nginx地址
Nginx地址。格式:Nginx服务的连接地址+Nginx服务的服务状态路径。- Nginx服务的连接地址:Nginx服务的IP地址和侦听端口号。其中nginx.conf配置文件中指定了侦听端口。例如:10.0.0.1:8080。
- Nginx服务的服务状态路径:由nginx.conf配置文件中的location参数指定,例如:/stub_status
填写示例:https://10.0.0.1:8080/stub_status。
- 单击“安装插件并测试连通性”,即可下发Exporter安装任务。
- 当安装成功后,单击“下一步”。
- 当安装失败时,单击“查看日志”,可以查看当前Exporter安装任务的执行日志。
- 参考下表配置安装插件相关参数信息。
- 接入规则配置。
参考下表配置指标接入规则相关参数信息。
表2 参数配置表 操作
参数
说明
指标采集规则
指标采集间隔(秒)
指标采集的周期,单位为秒(s),默认为60s,可选择10、30和60。
指标采集超时时间(秒)
执行指标采集任务的超时时间,单位为秒(s),默认为60s,可选择10、30和60。
超时时间必须小于或等于采集周期。
执行用户
执行指标接入规则的用户,即所选服务器的用户,默认为root。
其他配置
自定义键值对维度
以键值对形式添加静态维度,用于标识指标的附加属性。单击“添加维度”可配置多个自定义键值对维度。- labelKey为指标附加属性的key。可以包含大小写字母、数字、下划线,且必须以字母或下划线开头。自定义键值对维度的key不允许重复。
- labelValue为指标附加属性的key对应的值。参数值不能包含:“&”,“|”“>”,“<”,“$”,“;”,“'”,“!”“-”,“(”,“)”。
最多可添加10个指标维度。例如:配置label_key为app,配置label_value为abc。
指标采集规则参数配置完成后,可单击“YAML格式”,查看yaml格式化的配置数据。
- Prometheus实例配置。
- 配置完成后,单击“下一步”,即可完成Nginx Exporter接入。