Aerospike

Plugin with which to monitor aerospike

introduction

Ver. 28-12-2022

Plug-in with which you can monitor Aerospike

Type: Server plug-in

Compatibility matrix

Systems where tested

CentOS 7, Fedora, rocky linux

Systems where it should work

Any linux system

Pre requisites

Parameters

Parámetros 

--host Ip or host 
--namespace Name of the namespace to monitor
--agent_alias Agent's alias
--use_alias_as_name Use agent alias as name
--module_prefix To prefix the modules
--port Default 3000
--database Database name
--protocol Default : TCPIP

Parámetros configuración pandora

--tentacle_port Tentacle port (default 41121) (optional)
--tentacle_address Ip of the tentacle server to send the data to (optional)
-g,--group Pandora FMS target group (optional)
--data_dir Pandora FMS data directory. By default it is /var/spool/pandora/data_in/ (optional)
--as_agent_plugin It is optional, if you want the plugin to be an agent plugin and put the modules in the pandora agent, execute this with a 1 (optional)

Manual execution

./pandora_aerospike --host<ip> --namespace <namespace>  [ --port <port> ] [ --agent_alias <agent_alias> ] [ --use_alias_as_name <use_alias_as_name> ] [ --as_agent_plugin <as_agent_plugin> ] [ --module_prefix <module_prefix> ] [ --tentacle_port <tentacle_port> ] [ --tentacle_address <tentacle_address> ] [ -g <group> ] [ --data_dir <data dir> ] 

 

image-1672745519344.png

Configuration in PandoraFMS

As server plugin

Manual installation

Go to servers > plugins:

image-1629974405286.png

Click on add:

image-1629974430627.png

We put in name and the description that is preferred.

We put as command the execution with the path of the plugin:

Remember that the recommended path for the use of the server plugins is: /usr/share/pandora_server/util/plugin/

And in plugin parameters we will introduce these followed by the macro "_field<N>_", the connection parameters --host and --namespace, are mandatory. The port can be changed if the default port is not used.

Remember that you can give a custom name to the agents with the --agent_name parameter

 

Once this is done, we will click on "create".

Once this is done, the only thing left to do is to call it, so we will go to some agent's view and create an add-in module:

 

image-1646741530197.png

We will give it a name and in the section "plugin" we will put the one we have just configured.

Once this is done, click on create.

If the module is shown with 1, it means that it is running correctly.

 

Módules generated by the plugin

The plugin will create an agent with the following modules:

current_time
The current time represented as Aerospike epoch time.
memory_used_bytes
The total bytes of memory used by this namespace on this node.",
memory_used_data_bytes
The amount of memory occupied by data.
memory_used_index_bytes
The amount of memory occupied by the index for this namespace.
memory_used_sindex_bytes
The amount of memory occupied by secondary indexes for this namespace on this node.
memory_free_pct
The percentage of memory capacity free for this namespace.
xmem_id
The extended memory id of the namespace
available_bin_names
The remaining number of unique bins that the user can create for this namespace.
device_total_bytes
The total bytes of disk space allocated to this namespace on this node.
device_used_bytes
The total bytes of disk space used by this namespace on this node.
device_free_pct
The percentage of disk capacity free for this namespace. This is the amount of free storage across all devices in the namespace.
device_available_pct
The minimum contiguous disk space for all disks in a namespace.
cache_read_pct
The percentage of read transactions that are hitting the post write queue and will save an io to the underlying storage device.
record_proto_uncompressed_pct
The percentage of single-record transaction client responses with uncompressed protocol message data.
record_proto_compression_ratio
The average compressed size to uncompressed size ratio for protocol message data in single-record transaction client responses.
migrate_tx_instances
The number of instance objects managing emigrations.
migrate_rx_instances
The number of instance objects managing immigrations.
migrate_tx_partitions_active
The number of partitions currently emigrating from this node.
migrate_rx_partitions_active
The number of partitions currently immigrating to this node.
migrate_tx_partitions_remaining
The number of migrations this node not yet sent during the current migration cycle for this namespace.
migrate_rx_partitions_remaining
The number of migrations this node has not yet received during the current migration cycle for this namespace.
migrate_signals_active
For finished partition migrations on this node, the number of outstanding clean-up signals, sent to participating member nodes, waiting for clean-up acknowledgment.
migrate_signals_remaining
For unfinished partition migrations on this node, the number of clean-up signals to send to participating member nodes, as migration completes
appeals_tx_active
The number of partition appeals not yet sent. Partition appeals will happen for namespaces operating under the strong-consistency mode when a node needs to validate the records it has when joining the cluster.
appeals_rx_active
The number of partition appeals currently being received. Partition appeals will happen for namespaces operating under the strong-consistency mode when a node needs to validate the records it has when joining the cluster.
appeals_tx_remaining
The number of partition appeals currently being sent.
client_tsvc_error
The number of client transactions that failed in the transaction service before attempting to handle the transaction.
client_tsvc_timeout
The number of client transactions that timed out while in the transaction service before attempting to handle the transaction.
client_proxy_complete
The number of completed proxy transactions initiated by a client request.
client_proxy_error
The number of proxy transactions initiated by a client request that failed with an error.
client_proxy_timeout
The number of proxy transactions initiated by a client request that timed out.
client_read_success
The number of successful client read transactions.
client_read_error
The number of client read transaction errors.
client_read_timeout
The number of client read transaction that timed out.
client_read_not_found
The number of client read transaction that resulted in not found.
client_read_filtered_out
The number of client read transactions that did not happen because the record was filtered out via a predicate expression.
client_write_success
The number of write requests initiated by XDR that succeeded on the namespace on this node.
client_write_error
The number of write requests initiated by XDR that failed on the namespace on this node.
client_write_timeout
The number of write requests initiated by XDR that failed on the namespace on this nod
client_write_filtered_out
The number of client write transactions that did not happen because the record was filtered out via a predicate expression.
xdr_client_write_success
The number of write requests initiated by XDR that succeeded on the namespace on this node.
xdr_client_write_error
The number of write requests initiated by XDR that failed on the namespace on this node.
xdr_client_write_timeout
The number of write requests initiated by XDR that timed out on the namespace on this node.
client_delete_success
The number of delete requests initiated by XDR that succeeded on the namespace on this node.
client_delete_error
The number of client delete transactions that failed with an error.
client_delete_timeout
The number of client delete transactions that timed out.
client_delete_not_found
The number of delete requests initiated by XDR that failed on the namespace on this node due to the record not being found.
client_delete_filtered_out
The number of client delete transactions that did not happen because the record was filtered out via a predicate expression.
xdr_client_delete_success
The number of delete requests initiated by XDR that succeeded on the namespace on this node.
xdr_client_delete_error
The number of delete requests initiated by XDR that failed on the namespace on this node.
xdr_client_delete_timeout
The number of delete requests initiated by XDR that timed out on the namespace on this node.
xdr_client_delete_not_found
The number of delete requests initiated by XDR that failed on the namespace on this node due to the record not being found.
client_udf_complete
The number of completed udf transactions initiated by the client.
client_udf_error
The number of failed udf transactions initiated by the client.
client_udf_timeout
The number of udf transactions initiated by the client that timed out.
client_udf_filtered_out
The number of client udf transactions that did not happen because the record was filtered out via a predicate expression.
client_lang_read_success
The number of successful client initiated udf read transactions.
client_lang_write_success
The number of successful client initiated udf write transactions.
client_lang_delete_success
The number of client initiated udf transactions that successfully deleted a record.
client_lang_error
The number of client initiated udf transactions that failed with an error.