Jump to: navigation, search

Satori/SystemInfoProposal

< Satori
Revision as of 21:42, 19 February 2014 by Caleb Groom (talk | contribs) (Operating System Discovery Tools)

WORK IN PROGRESS

Specification for https://blueprints.launchpad.net/satori/+spec/poc-system-info

As Satori gathers information about a network location it accumulates a list of resources that are related. That resource list generally includes one or more Nova instances. If the user supplies the credentials to access the server, the discovery process should be extended to include fetching operating system and application-level information. Several open source applications exist today that can catalog this information. Satori should leverage one or more of these applications rather than recreating them.

Operating System Discovery Tools

Chef's Ohai

Ohai

Puppet's Facter

Devstructure's Blueprint

Ansible's Facts

System Discovery Feature Comparison

System Discovery Comparison
Ohai Facter Blueprint Facts
Plugin System Yes Yes Yes
Standalone app Yes Yes
Language Ruby Ruby Python Python
Active Community Yes Yes Yes

Command line usage

Key from local disk:

$ satori https://domain.com --system-key=/path/to/private.key

Out of Scope

Interesting ideas that could follow but won't be implemented first:

  • Automatically install the software discovery tool if its missing


Proposed Implementation Plan

  1. Alter `satori/shell.py main()` to accept a private key
  2. Extend `satori/discovery.py run()` to attempt to SSH into each server resource, execute the info gathering tool and fetch the results.
  3. Add the data to the resource record.
  4. Ensure the data is also opinionated.