Skip to content
Jason Heiss edited this page Aug 25, 2014 · 3 revisions

Etch supports grouping nodes into a hierarchy of node groups, these node groups can be used along with characteristics of the node gathered by the Facter library to decide what action to take.

For example, you might have node groups for your master DNS servers and slave DNS servers, and then a parent group for all DNS servers. The master servers and slave servers might get different /etc/named.conf files, but all might get the same /etc/rndc.conf and the same cron job to maintain the root server hints file.

There are a couple of ways you can provide node group data to etch.

Local YAML Configuration

For basic installs and smaller sites you can specify the node groups via two YAML files: nodes.yml and nodegroups.yml. The first file assigns nodes to node groups, the second is used to establish a hierarchy of node groups. Sample nodes.yml and nodegroups.yml files are included in the configs directory in the distribution, and examples are shown in the configuration manual. The format is very simple.

External Node Grouper Script

Larger and/or more complex sites often store info about their environment in some form of an operations database. If you want etch to pull node group data from an external source you can configure the etch node grouper script. The script lives at configs/nodegrouper within the server directory. A sample script to pull node group data from nVentory is provided with the distribution.