To use AWS Kinesis for metric collecting and processing, you should first
install AWS SDK for C++.
libcrypto
, libssl
, and libcurl
are also required to compile Netdata with Kinesis support enabled. Next, Netdata
should be re-installed from the source. The installer will detect that the required libraries are now available.
If the AWS SDK for C++ is being installed from source, it is useful to set -DBUILD_ONLY=kinesis
. Otherwise, the
build process could take a very long time. Note, that the default installation path for the libraries is
/usr/local/lib64
. Many Linux distributions don't include this path as the default one for a library search, so it is
advisable to use the following options to cmake
while building the AWS SDK:
sudo cmake -DCMAKE_INSTALL_PREFIX=/usr -DBUILD_ONLY=kinesis <aws-sdk-cpp sources>
The -DCMAKE_INSTALL_PREFIX=/usr
option also ensures that
third party dependencies are installed in your system
during the SDK build process.
To enable data sending to the Kinesis service, run ./edit-config exporting.conf
in the Netdata configuration directory
and set the following options:
[kinesis:my_instance]
enabled = yes
destination = us-east-1
Set the destination
option to an AWS region.
Set AWS credentials and stream name:
# AWS credentials
aws_access_key_id = your_access_key_id
aws_secret_access_key = your_secret_access_key
# destination stream
stream name = your_stream_name
Alternatively, you can set AWS credentials for the netdata
user using AWS SDK for C++ standard methods.
Netdata automatically computes a partition key for every record with the purpose to distribute records across available shards evenly.