Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  1. Nginx stub status module

    Make sure that the server process is configured with the stub status module. Use the command:

    Code Block
    languagebash
    themeRDark
    root@linux:~# nginx -V 2>&1 | grep -o with-http_stub_status_module   
    with-http_stub_status_module

    If the stub status module is not installed, you can follow this guide for the installation: https://www.tecmint.com/enable-nginx-status-page/

  2. Add a new server block configuration inside /etc/nginx/sites-enabled/default

    Code Block
    languagebash
    themeRDark
    title/etc/nginx/sites-enabled/default
    server {
            listen 8081;
            listen [::]:8081;
    
            server_name _;
    
            root /var/www/html;
            index index.html;
    
            location /nginx_status
    {
                    stub_status on;
                    access_log off;
                    allow 127.0.0.1;
                    deny all;
    
            }
    }

    .

  3. Restart nginx service

    Code Block
    languagebash
    themeRDark
    root@linux:~# systemctl restart nginx

    .

  4. Now the Url 127.0.0.1:8081/nginx_status should be available

    Code Block
    languagebash
    themeRDark
    root@linux:~# wget -qO - http://127.0.0.1:8081/nginx_status
    Active connections: 1 
    server accepts handled requests
     1 1 1 
    Reading: 0 Writing: 1 Waiting: 0 

    .

  5. Configure nginx_status

    • Manually
      You must install the agent plugin nginx_status into your agent's plugins directory (usually /usr/lib/check_mk_agent/plugins). The plugin tries to autodetect all running NGINX servers. If that fails, you must create the configuration file /etc/check_mk/nginx_status.cfg. Here is one example:

      Code Block
      languagebash
      themeRDark
      servers = [{'address': '127.0.0.1',
        'page': 'nginx_status',
        'port': 8081,
        'protocol': 'http'}]


    • via Bakery
      Setup → Agents → Windows, Linux, Solaris... → Agent rules →NGINX webservers (Linux)

      • Autodetect instances expect HTTPS on the following ports: nginx_status will try to autodetect all running NGINX servers.
        Image Modified

      • Specific list of instances: You can specify NGINX instances
        Image Modified


  6. Test the plugin

...

Check_MK will create one service for each web server.
Image Modified

Debugging

Port Checking

...