The connection between GroundWork servers and monitoring data sources such as Nagios is facilitated by a new component called TCG, or the Transit Connection Generator. Based on the NATS project, TCG allows the creation of resilient connections that automatically re-establish when broken, and buffers data to ensure a lossless stream of metrics. TCG is easy to configure, and flexible.
TCG is open source and available on GitHub.
TCG does not support looped connections (sending data to itself), in case you were wondering.
Standalone GroundWork servers and TCG
The typical default standalone GroundWork server uses TCG to forward data from Nagios to GroundWork Foundation, our normalization and aggregation layer. You will see a connection called “Local Nagios” under the Connectors menu, which is the local internal connection that does this.
Parent-child servers and TCG
Child servers use TCG to forward Nagios state data and metrics to parent servers.
Types of TCG connections
Four connection types are supported in TCG as of GroundWork Monitor 8.1.0:
This is a connector to a local Nagios with the Data Geyser enhancement running.
You can also connect this to a parent server to create an independently managed GroundWork child.
This is a special connection type for sending data from a child to a parent. It is special because it is provisioned and managed on the parent, not the child.
This is similar to a Cloud Hub connector, in that it connects to a source of monitoring data, Elastic Stack in this case. It uses TCG to send its state and metric data to GroundWork.
This connector allows a TCG instance running on a Linux server to forward basic resource monitoring metrics to GroundWork. Since TCG is a go program, it runs as a single executable, and is easily daemonized, configured with a single config file, and connected to.