1    关于生命活动监控

Nginx提供实时生命监控界面显示你的服务器设施的关键负载和性能指标。这些指标可以只在仪表盘或作为RESTful JSON界面代表和第三方监控工具连接。

指标包括来自HTTP和TCP upstream服务器的数据和其它数据,包括:

  • Nginx版本、uptime和标识符信息

  • 总连接数和请求数

  • 每个status_zone请求和响应计数

  • Upstream服务器组中的每个服务器的请求和响应计数,加健康检查和uptime统计

  • 每台服务器的统计,包括它的当前状态和总值(总失败数,等)

  • 每个命名的缓存区域仪表盘

Nginx生命活动监控

2    配置Nginx

首先,你需要在Nginx配置中启用收集统计。然后你能配置服务器区域、健康检查、缓存和其它出现在统计中的数据。

2.1    启用生命活动监控

为了启用仪表盘和JSON界面,打开Nginx配置文件并执行以下步骤:

  • 在http上下文中,指定server块负责收集统计:

http {

server {

 

    }

}

  •  指定IP地址和/或端口号,状态页将被启用,使用listen指令,例如,8080.如果Nginx监听多个IP,你能限制状态页到单个IP:

http {

    server {

        listen 192.168.1.23:8080;

        ...

    }

}

  •  指定location检查准确的URI匹配/status包含status指令:

http {

    server {

        listen 192.168.1.23:8080;

        ...

 

        location /status {

            status;

            ...

        }

    }

}

  •  指定一个location启用仪表盘:/status.html。仪表盘默认位于跟目录(例如,/usr/share/nginx/html)指定root指令:

http {

    server {

        listen 192.168.1.23:8080;

        root   /usr/share/nginx/html;

 

        location /status {

            status;

            ...

        }

 

        location = /status.html {

        }

    }

}

  •  限制访问你的统计:

http {

    server {

        listen 192.168.1.23:8080;

        root   /usr/share/nginx/html;

 

        location /status {

            status;

            allow 192.168.1.0/32;

            deny  all;

        }

 

        location = /status.html {

        }

    }

}

 2.2    添加更多统计数据

你能收集几乎所有的Nginx统计数据,包括分开虚拟主机、upstream服务器组、缓存区域。在这种情况下,你需要执行一些额外的安装步骤。例如,收集虚拟主机和upstream组的统计信息需要共享内存区域存储配置和运行时状态信息:

  • 为了使HTTP和TCP服务器显示统计,指定status_zone指令。相同的区域名可以指定在多个server块中,因此这些主机的统计聚合在仪表盘中:

server {

    ...

    status_zone status_page;

    location / {

        proxy_pass http://backend;

    }

}

  •  为了让upstream服务器组出现在统计中,在每个upstream块中指定zone指令:

upstream backend {

    zone   backend 64k;

    server backend1.example.com;

    server backend2.example.com;

}

  •  为了让健康检查出现在统计中,确保健康检查被配置。

server {

    ...

    status_zone status_page;

    location / {

        proxy_pass http://backend;

        health_check;

    }

}

  •  为了让缓存出现在统计中,确保缓存在配置中启用。

http {

    ...

    proxy_cache_path /data/nginx/cache keys_zone=one:10m;

}

  •  为了能直接从仪表盘添加新upstream服务器或修改已存在的upstream服务器,启用upstream_conf处理器在单个location中

server {

    ...

    location /upstream_conf {

        upstream_conf;

        allow 92.168.1.0/32;

        deny all;

    }

}

  • 当完成时,保存并推出配置文件
  • 测试配置并重新加载Nginx

sudo nginx -t && sudo nginx -s reload

 

转载于:https://my.oschina.net/leeck/blog/729815

相关文章:

  • 2021-10-04
  • 2021-12-28
  • 2021-07-13
  • 2022-12-23
  • 2021-11-22
  • 2021-08-15
  • 2022-12-23
  • 2021-08-12
猜你喜欢
  • 2021-10-18
  • 2022-12-23
  • 2022-02-13
  • 2022-12-23
  • 2021-06-12
  • 2021-10-05
相关资源
相似解决方案