Skip to main content

Check OpenBGPD sessions Nagios|Icinga|shinken|etc plugin

Project description

https://pypip.in/license/checkopenbgpd/badge.svg https://pypip.in/egg/checkopenbgpd/badge.svg https://pypip.in/status/checkopenbgpd/badge.svg https://pypip.in/implementation/checkopenbgpd/badge.svg https://pypip.in/py_versions/checkopenbgpd/badge.svg https://pypip.in/version/checkopenbgpd/badge.svg?text=version https://api.travis-ci.org/jpcw/checkopenbgpd.svg?branch=master https://coveralls.io/repos/jpcw/checkopenbgpd/badge.png?branch=master

usage

This check runs bgpctl show and check that all bgp sessions are up.

sample outputs :

  • Ok

    $ check_openbgpd
    CHECKBGPCTL OK - All bgp sessions in correct state | 'PEER-1'=529581;;;0

    Sometimes you have some peer sessions in idle state, and it ‘s not critical. Typically a session which depends on a slave carp interface. You have an option ‘–idle-list’, the plugin will take care if the session is in this list, and returns an ‘OK’ state for this session.

    $ check_openbgpd --idle-list PEER-2 OTHER-PEER
    CHECKBGPCTL OK - All bgp sessions in correct state | 'PEER-1'=529581;;;0 'PEER-2'=0;;;0 'OTHER-PEER'=0;;;0
  • Critical

    Critical state is reached with first idle session not escaped in the optionnal ‘–idle-list’

    $ check_openbgpd
    CHECKBGPCTL CRITICAL - OTHER-PEER is idle (outside range 0:) | 'PEER-1'=529918;;;0 'OTHER-PEER'=None;;;0
  • Unknown

    if an error occured during the check, the plugin raises a check error, which returns an UNKNOWN state.

    typically UNKNOWN causes

    • OpenBGPD is not running

    CHECKBGPCTL UNKNOWN - host.domain.tld bgpctl: connect: /var/run/bgpd.sock: No such file or directory
    • you’re not in the wheel group, and can’t read the bgpctl sosk

    CHECKBGPCTL UNKNOWN - host.domain.tld bgpctl: connect: /var/run/bgpd.sock: Permission denied

    sudo is your friend to run this plugin with an unprivileged user. A sample config here

    icinga ALL = NOPASSWD: /usr/local/bin/check_openbgpd

Install

extract the tarball and

python setup.py install

Maybe you have installed setuptools with

pkg_add py-setuptools

then just

easy_install checkopenbgpd

check_openbgpd is located at /usr/local/bin/check_openbgpd

Nagios|icinga like configuration

check_openbgpd could be called localy or remotely via check_by_ssh or NRPE.

check_by_ssh

here a sample definition to check remotely by ssh

Command definition

define command{
    command_name    check_ssh_bgpctl
    command_line    $USER1$/check_by_ssh -H $HOSTADDRESS$ -i /var/spool/icinga/.ssh/id_rsa -C "sudo /usr/local/bin/check_openbgpd --idle-list $ARG1$"
}

the service itself

define service{
    use                     my-service
    host_name               hostname
    service_description     bgpctl
    check_command           check_ssh_bgpctl!
}

NRPE

add this line to /usr/local/etc/nrpe.cfg

...
command[check_openbgpd]=/usr/local/bin/check_openbgpd
...

nagios command definition

define command{
    command_name    check_nrpe_bgpctl
    command_line    $USER1$/check_nrpe -H $HOSTADDRESS$ -c check_openbgpd -a "--crit-list $ARGS1"
}

the service itself

define service{
    use                     my-service
    host_name               hostname
    service_description     bgpctl
    check_command           check_nrpe_bgpctl!
}

testing

python bootstrap-buildout.py
bin/buildout -N
bin/test

Changelog

0.6 (2015-04-09)

  • improve summary

0.5

  • Fix Cosmetics on README

0.1 (2015-04-09)

  • Jean-Philippe Camguilhem <jp.camguilhem__at__gmail.com>

Contributors

Jean-Philippe Camguilhem, Author

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

checkopenbgpd-0.6.zip (14.6 kB view details)

Uploaded Source

File details

Details for the file checkopenbgpd-0.6.zip.

File metadata

  • Download URL: checkopenbgpd-0.6.zip
  • Upload date:
  • Size: 14.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for checkopenbgpd-0.6.zip
Algorithm Hash digest
SHA256 7bd096916b767cc69932446f494502ba8a976a65ad0df76d7af7d35d889601d9
MD5 6ce0605f57135d1e63ebdc3f59b71fde
BLAKE2b-256 7eb5b03a48bdeda3bd0478fb3469342a8a33fa2fa4c0bd6f75ebd37623cf496e

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page