mdt-dialout-collector & gRPC dial-out libraries are leveraging the gRPC Framework to implement a multi-vendor gRPC Dial-out collector. The doc/Changelog file is including additional details about the supported network devices.
The collector functionalities can be logically grouped into three categories:
- Data Collection - they are steering the daemon(s) behavior.
- Data Manipulation - they are conveniently transforming the in-transit data-stream.
- Data Delivery - they are inter-connecting the collector with the next stage in the pipeline.
The doc/CONFIG-KEYS file is including the description for each one of the available options.
The gRPC dial-out data-collection functionality can be deployed in two ways:
+------------------------------------------------------+
+---------+ | +------------+ +--------------+ +--------------+ | +---------+
| network |-->| | collection |-->| manipulation |-->| kafka client | |-->| kafka |
+---------+ | +------------+ +--------------+ +--------------+ | | cluster |
| [mdt-dialout-collector] | +---------+
+------------------------------------------------------+
the building process is generating a single binary:
/opt/mdt-dialout-collector/bin/mdt_dialout_collector
which, by default, is reading the running options from:
/etc/opt/mdt-dialout-collector/mdt_dialout_collector.conf
Additionally, the default configuration file can be further specified via the following command line:
/opt/mdt-dialout-collector/bin/mdt_dialout_collector -f <file.conf>
+---------------------------------------------------------+
+---------+ | +------------+ +--------------+ +-----------------+ | +------------+
| network |-->| | collection |-->| manipulation |-->| ZMQ (PUSH/PULL) | |-->| pipeline |
+---------+ | +------------+ +--------------+ +-----------------+ | | next stage |
| [pmtelemetryd] | +------------+
+---------------------------------------------------------+
the building process is generating both the library and the header file required to build pmtelemetryd with gRPC dial-out support:
/usr/local/lib/libgrpc_collector.la
/usr/local/include/grpc_collector_bridge/grpc_collector_bridge.h
there is one main pmtelemetryd CONFIG-KEYS which is mandatory in order to enable the embedded gRPC dial-out collector:
KEY: telemetry_daemon_grpc_collector_conf
DESC: Points to a file containing the configuration of the gRPC collector thread. An
example of the configuration plus all available config keys is available here:
https://github.com/network-analytics/mdt-dialout-collector
DEFAULT: none
install.sh is automating the build/install process, taking care of all dependencies.
- The Standalone binary can be deployed using:
sudo /bin/sh -c "$(curl -fsSL https://github.com/network-analytics/mdt-dialout-collector/raw/main/install.sh)" -- -b -v current
- The Library/Header can be deployed using:
sudo /bin/sh -c "$(curl -fsSL https://github.com/network-analytics/mdt-dialout-collector/raw/main/install.sh)" -- -l -v current