Inventory Service Monitoring Project - DRAFT

Table of Contents

Project Objective: Purpose

The purpose is to replace the Inventory "Services" section, which used to be tightly coupled to Nagios, in order to authoritatively record what services are running on a given host. This will be loosely coupled to Icinga and potentially other technology stacks for service monitoring and control, such as for saltstack. This will be used by all of CSCF to update inventory and set up monitoring.

Project Scope/Deliverables

The high-level outcomes and results of this project are as follows:
  • Inventory UI to record running services
  • database additions to cache data from Icinga and potentially provide a data-store for other systems to query Inventory.
  • User and Developer Documentation of new features

Scope Includes/Excludes


  • Inventory UI updates to Services section which provides:
  • a list of services, which may be not attached to Icinga
  • data store for Icinga and potentially salt to query.
    • we can act authoritative for data that is under Inventory control; but we do not intend to reproduce all of Icinga manager within inventory.
  • icinga services with parameters will expose fields to record those parameters (* nice to have)
  • querying Icinga for active services on a host to set up additional data in inventory. When in doubt, conflicts will be warned about and inventory data takes precedence.
  • saving data from inventory can make updates to icinga without harm
    • changing a hostname from inventory will change the (primary key) hostname recorded in icinga
    • inventory Admin Contact will be recorded for icinga's monitoring alerts
    • inventory Room will be recorded in icinga
    • inventory parenting will be recorded in icinga (* nice to have)
  • saving data for salt will only "prime" salt for updates. We do not want to kick off any automated salt process that does not involve proper vetting and dry-runs.


  • controlling all details of icinga service options that are better administered within Icinga manager
  • salt "deploy" button
  • automatic conflict resolver
  • deploying any other technology stacks besides Icinga and possibly salt. We will design for the possibility of other sources, but do not commit to implementing them at this phase.


  • Time: ideally finish by the middle of April (and there are other important Inventory updates as well).
  • Cost: 1 co-op developer plus part of two FTE
  • Scope: the most flexible. We need to be able to update Icinga, and we don't critically need to be able to directly deploy to salt based on service lists.


  • Requires Devon providing Icinga API details for our deployment
  • Salt will require a2brenna and possibly nfish to supply design and details.


  • By Fri Feb 26h, answers about API
  • By Tue March 2, clarity from stakeholders/sponsors about path to proceed
  • By Mon March 22, draft UI and back-end
  • By Mon March 29, iteration of UI and back-end

Project Members

dmerner, drallen, hbjiang, (a2brenna)

Project Stakeholders

dlgawley, lfolland, omnafees

Project Sponsor

CSCF Management


Meeting notes

Inventory Service Monitoring Meeting Notes

-- Daniel Allen - 2021-02-17


Edit | Attach | Watch | Print version | History: r2 < r1 | Backlinks | Raw View | WYSIWYG | More topic actions
Topic revision: r2 - 2021-02-18 - DanielAllen
This site is powered by the TWiki collaboration platform Powered by PerlCopyright © 2008-2024 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback