How to Monitor Aerospike with OpenTelemetry
With observIQ’s latest contributions to OpenTelemetry, you can now easily use free, open-source tools to monitor Aerospike. The easiest way to use the latest OpenTelemetry tools is with observIQ’s distribution of the OpenTelemetry collector. You can find it here.
In this blog, the Aerospike receiver is configured to monitor metrics locally with OTLP–you can use the Aerospike receiver to ship metrics to many popular analysis tools, including Google Cloud, New Relic, and more. For Google Cloud users, the Aerospike receiver is also available through the Google Ops Agent.
What signals matter?
Aerospike is a distributed, fast, noSQL database technology. It uses flash storage for predictable performance and is helpful for its ability to add new nodes without downtime. Aerospike operates in memory, so it is essential to monitor memory-related metrics.
- Aerospike.node.memory.free
- This metric monitors the percentage of memory accessible to the Aerospike node. If the value gets too low, the server reaches its memory limit. If nodes frequently use high amounts of memory, operations should consider adding new nodes or increasing memory allocation per node.
- Aerospike.namespace.memory.free
- This metric monitors the percentage of memory allocated to the specific namespace that is still available. If a namespace runs out of memory or reaches its high watermark, writing to the namespace will fail.
- Aerospike.node.connection.count
- This metric indicates the number of connections opened and closed to the Aerospike node. Anomalous values could indicate client applications being unable to connect or peer nodes being unreachable or frequently crashing.
All metrics above and more are shipped when you install the Aerospike receiver.
Installing the Receiver
Suppose you don’t already have an OpenTelemetry collector built with the latest Aerospike receiver installed. In that case, we suggest using the observIQ OpenTelemetry Collector distro, which includes the aerospike receiver (and many others). Installation is simple with our one-line installer. Come back to this blog after running the install command on your source.
Configuring the Receiver
Navigate to your OpenTelemetry configuration file. The Aerospike receiver is Linux-only. If you’re using the observIQ Collector, you’ll find it in one of the following locations:
- /opt/observiq-otel-collector/config.yaml (Linux)
Edit the configuration file to include the Aerospike receiver as shown below:
1receivers:
2 aerospike:
3 endpoint: localhost:9000
4 collect_cluster_metrics: false
5 collection_interval: 30s
Add Aerospike into your Service pipeline so it looks similar to the following. Note that your processors and exporters may be different.
1exporters:
2 otlp:
3 endpoint: 0.0.0.0:9124
4service:
5 pipelines:
6 metrics:
7 receivers: [aerospike]
8 exporters: [otlp]
Below are a few editable fields you can add or adjust in the config file.
Viewing the metrics collected
If you follow the steps detailed above, the following Aerospike metrics will now be delivered to your OTel destination.
observIQ’s monitoring technology is a game changer for organizations that care about performance and efficiency. If you’re using Vault, our solutions can significantly impact your infrastructure monitoring. Follow this space to keep up with all our future posts and simplified configurations for various sources. For questions, requests, and suggestions, contact our support team at support@observIQ.com.