使用nginx-module-vts监控各虚拟主机的流量
###一、前言 由于所有业务只有一个公网IP入口,无法统计到每个业务的流量带宽,好在nginx上通过域名进行业务区分,可以借助nginx-module-vts模块来实现需求。 本文将主要用到以下几个模块和工具: nginx-module-vts: Nginx virtual host traffic status module,nginx的监控模块,能够提供json、html、prometheus格式的数据产出。 nginx-vts-exporter: Simple server that scrapes Nginx vts stats and exports them via HTTP for Prometheus consumption。主要用于收集nginx的监控数据,并给Prometheus提供监控接口,默认端口号9913。 Prometheus: 监控nginx-vts-exporter提供的nginx数据,并存储在时序数据库中,可以使用PromQL对时序数据进行查询和聚合。 Grafana: 可视化监控数据展示工具 ###二、安装nginx-module-vts 下载并编译ngx-module-vts模块 shell> git clone git://github.com/vozlt/nginx-module-vts.git # 编译nginx时添加监控组件nginx