Icinga Director + automatic SNMPWalk

This forum was archived to /woltlab and is now in read-only mode.
  • Hello,

    currently i am running a nagios monitoring software with "check_mk" plugin.

    In this plugin i have the option to easily add new hosts with SNMP checks.

    the following scenario

    • I create a new windows server (with snmp etc)
    • i got ot my nagios and create a new host (via check mk gui)
    • i add snmp
    • I get a list of all found SNMP services like "fan 1", "fan 2", "Disk" etc
    • In the List I can check which services i want to be monitored by the system
    • Done. The checks are now working in a few seconds

    Is this possible with icinga2 + icinga2web + icinga2 director?

    (Without manually setting up oids or sth of course)

    I appreciate every answer.


  • After some research i found out that foreman does MUCH MORE than just monitoring.

    Our enviroment should not be managed by a software like forman.

    Also i have to install a puppet client on every host (if i understood correctly).

    This seems to have nothing to do with snmpwalk / snmp monitoring :/

  • Foreman and Puppet is a good choice, or you could also go for Ansible these days. There are certainly other tools, but for those who haven't thought about such lifecycle management tools, it does not hurt to suggest.

    Although Foreman solves many things, and isn't directly related to "just" monitoring. In terms of SNMP you probably need sort of an inventory job, which stores the data in a backend (if necessary, caching things reduces the snmpwalk load on your devices). Given that data, you can import such into the Icinga Director then. It might be worthwhile to hackup an Icinga Web 2 module on your own, which does the following:

    • A generic datastore, i.e. a mysql database and tables
    • Have a CLI command which does SNMP inventory
      • Should have an option to cache/store data into the backend, or just some dryrun
      • Should be callable by a cronjob
    • Provide Director Hooks to use it as import source

    There's similar Icinga Web 2 modules out there already which might help developing this. You could of course do it in a different way, i.e. by pulling all data into a csv or json file and let the Director import that data too. The idea with the Icinga Web 2 module would be to have it cleanly integrated into the Icinga Stack and webinterface. Depends on your programming skills though ;)