Riak is a distributed NoSQL key-value data store that offers high availability, fault tolerance, operational simplicity, and scalability. Riak implements the principles from Amazon Dynamo paper with heavy influence from the CAP Theorem. Written in Erlang, Riak has fault tolerant data replication and automatic data distribution across the cluster for performance and resilience.
Prerequisite
For Virtual machines, install the Linux agent.
Configuring the credentials
Configure the credentials in the directory /opt/opsramp/agent/conf/app.d/creds.yaml
riak:
- name: riak
user: <username>
pwd: <Password>
encoding-type: plain
labels:
key1: val1
key2: val2
Configuring the application
Virtual machine
Configure the application in the directory /opt/opsramp/agent/conf/app/discovery/auto-detection.yaml
- name: riak
instance-checks:
service-check:
- riak
process-check:
- riak
port-check:
- 8098
Docker environment
Configure the application in the directory /opt/opsramp/agent/conf/app/discovery/auto-container-detection.yaml
- name: riak
container-checks:
image-check:
- riak
port-check:
- 8098
Kubernetes environment
Configure the application in config.yaml
- name: riak
container-checks:
image-check:
- riak
port-check:
- 8098
Validate
Go to Resources under the Infrastructure tab to check if your resources are onboarded and the metrics are collected.
Supported metrics
OpsRamp Metric | Metric Display Name | Unit |
---|---|---|
riak_memory_atom Total amount of memory currently allocated for atom storage | Memory Atom | bytes |
riak_memory_atom_used Total amount of memory currently used for atom storage | Memory Atom Used | bytes |
riak_memory_binary Total amount of memory used for binaries | Memory Binary | bytes |
riak_memory_code Total amount of memory allocated for Erlang code | Memory Code | bytes |
riak_memory_ets Total memory allocated for Erlang Term Storage | Memory Ets | bytes |
riak_memory_processes Total amount of memory allocated for Erlang processes | Memory Processes | bytes |
riak_memory_processes_used Total amount of memory used by Erlang processes | Memory Processes Used | bytes |
riak_memory_total Total allocated memory (sum of processes and system) | Memory Total | bytes |
riak_node_get_fsm_active_60s Number of active GET FSMs | Node Get Fsm Active 60S | |
riak_node_get_fsm_in_rate Average number of GET FSMs enqueued by Sidejob | Node Get Fsm In Rate | |
riak_node_get_fsm_out_rate Average number of GET FSMs dequeued by Sidejob | Node Get Fsm Out Rate | |
riak_node_get_fsm_rejected_60s Number of GET FSMs actively being rejected by Sidejob overload protection | Node Get Fsm Rejected 60S | |
riak_node_gets Number of GETs coordinated by this node | Node Gets | Operations |
riak_node_put_fsm_active_60s Number of active PUT FSMs | Node Put Fsm Active 60S | |
riak_node_put_fsm_in_rate Average number of PUT FSMs enqueued by Sidejob | Node Put Fsm In Rate | |
riak_node_put_fsm_out_rate Average number of PUT FSMs dequeued by Sidejob | Node Put Fsm Out Rate | |
riak_node_put_fsm_rejected_60s Number of PUT FSMs actively being rejected by Sidejob overload protection | Node Put Fsm Rejected 60S | |
riak_node_puts Number of PUTs coordinated by this node | Node Puts | Operations |
riak_pbc_active Number of active protocol buffers connections | Pbc Active | Connections |
riak_pbc_connects Number of protocol buffers connections | Pbc Connects | Connections |
riak_read_repairs Number of read repair operations this this node has coordinated in the last minute | Read Repairs | Operations |
riak_vnode_gets Number of GET operations coordinated by vnodes on this node | Vnode Gets | Operations |
riak_vnode_index_deletes Number of vnode index delete operations | Vnode Index Deletes | Operations |
riak_vnode_index_reads Number of vnode index read operations | Vnode Index Reads | Reads |
riak_vnode_index_writes Number of vnode index write operations | Vnode Index Writes | Writes |
riak_vnode_puts Number of PUT operations coordinated by vnodes on this node | Vnode Puts | Operations |
riak_node_get_fsm_objsize_mean Object size encountered by this node | Node Get Fsm Objsize Mean | bytes |
riak_node_get_fsm_siblings_mean Number of siblings encountered during all GET operations by this node | Node Get Fsm Siblings Mean | Nodes |
riak_node_get_fsm_time_mean Time between reception of client GET request and subsequent response to client | Node Get Fsm Time Mean | microseconds |
riak_node_put_fsm_time_mean Time between reception of client PUT request and subsequent response to client | Node Put Fsm Time Mean | microseconds |
riak_node_get_fsm_objsize_median Object size encountered by this node | Node Get Fsm Objsize Median | bytes |
riak_node_get_fsm_siblings_median Number of siblings encountered during all GET operations by this node | Node Get Fsm Siblings Median | Nodes |
riak_node_get_fsm_time_median Time between reception of client GET request and subsequent response to client | Node Get Fsm Time Median | microseconds |
riak_node_put_fsm_time_median Time between reception of client PUT request and subsequent response to client | Node Put Fsm Time Median | microseconds |
riak_node_get_fsm_objsize_95 Object size encountered by this node | Node Get Fsm Objsize 95 | bytes |
riak_node_get_fsm_siblings_95 Number of siblings encountered during all GET operations by this node | Node Get Fsm Siblings 95 | Nodes |
riak_node_get_fsm_time_95 Time between reception of client GET request and subsequent response to client | Node Get Fsm Time 95 | microseconds |
riak_node_put_fsm_time_95 Time between reception of client PUT request and subsequent response to client | Node Put Fsm Time 95 | microseconds |
riak_node_get_fsm_objsize_99 Object size encountered by this node | Node Get Fsm Objsize 99 | bytes |
riak_node_get_fsm_siblings_99 Number of siblings encountered during all GET operations by this node | Node Get Fsm Siblings 99 | Nodes |
riak_node_get_fsm_time_99 Time between reception of client GET request and subsequent response to client | Node Get Fsm Time 99 | microseconds |
riak_node_put_fsm_time_99 Time between reception of client PUT request and subsequent response to client | Node Put Fsm Time 99 | microseconds |
riak_node_get_fsm_objsize_100 Object size encountered by this node | Node Get Fsm Objsize 100 | bytes |
riak_node_get_fsm_siblings_100 Number of siblings encountered during all GET operations by this node | Node Get Fsm Siblings 100 | Nodes |
riak_node_get_fsm_time_100 Time between reception of client GET request and subsequent response to client | Node Get Fsm Time 100 | microseconds |
riak_node_put_fsm_time_100 Time between reception of client PUT request and subsequent response to client | Node Put Fsm Time 100 | microseconds |
riak_search_index_fail_count Total number of documents that have failed to index | Search Index Fail Count | Objects |
riak_search_index_fail_one Number of documents that have failed to index in the past one minute | Search Index Fail One | Objects |
riak_search_query_fail_count Total number of queries that have failed | Search Query Fail Count | Events |
riak_search_query_fail_one Number of queries that have failed in the last one minute | Search Query Fail One | Events |
riak_search_index_throughput_count Total number of documents indexed | Search Index Throughput Count | Operations |
riak_search_index_throughput_one Number of documents indexed in the last one minute | Search Index Throughput One | Operations |
riak_search_query_throughput_count Total number of queries performed | Search Query Throughput Count | Operations |
riak_search_query_throughput_one Number of searches performed in the last one minute | Search Query Throughput One | Operations |
riak_search_query_latency_95 Time between reception of query and response: 95th percentile | Search Query Latency 95 | microseconds |
riak_search_query_latency_99 Time between reception of query and response: 99th percentile | Search Query Latency 99 | microseconds |
riak_search_query_latency_999 Time between reception of query and response: 99.9th percentile | Search Query Latency 999 | microseconds |
riak_search_query_latency_max Time between reception of query and response: max | Search Query Latency Max | microseconds |
riak_search_query_latency_min Time between reception of query and response: min | Search Query Latency Min | microseconds |
riak_search_query_latency_mean Time between reception of query and response: mean | Search Query Latency Mean | microseconds |
riak_search_query_latency_median Time between reception of query and response: median | Search Query Latency Median | microseconds |
riak_search_index_latency_95 Time between insertion of document and it being indexed: 95th percentile | Search Index Latency 95 | microseconds |
riak_search_index_latency_99 Time between insertion of document and it being indexed: 99th percentile | Search Index Latency 99 | microseconds |
riak_search_index_latency_999 Time between insertion of document and it being indexed: 99.9th percentile | Search Index Latency 999 | microseconds |
riak_search_index_latency_max Time between insertion of document and it being indexed: max | Search Index Latency Max | microseconds |
riak_search_index_latency_min Time between insertion of document and it being indexed: min | Search Index Latency Min | microseconds |
riak_search_index_latency_mean Time between insertion of document and it being indexed: mean | Search Index Latency Mean | microseconds |
riak_search_index_latency_median Time between insertion of document and it being indexed: median | Search Index Latency Median | microseconds |
riak_vnode_gets_total Total number of GETs coordinated by local vnodes | Vnode Gets Total | per second |
riak_node_gets_total Total number of GETs coordinated by this node, including GETs to non-local vnodes | Node Gets Total | per second |
riak_node_puts_total Total number of PUTs coordinated by this node, including PUTs to non-local vnodes | Node Puts Total | per second |
riak_riak_kv_vnodes_running | Riak Kv Vnodes Running | |
riak_ring_num_partitions The number of partitions in the ring | Ring Num Partitions | |
riak_precommit_fail Total number of pre-commit hook failures | Precommit Fail | per second |
riak_vnode_index_deletes_total Total number of local replicas participating in secondary index deletes | Vnode Index Deletes Total | per second |
riak_riak_pipe_vnodes_running | Riak Pipe Vnodes Running | |
riak_pipeline_create_count The total number of pipelines created since the node was started | Pipeline Create Count | per second |
riak_vnode_puts_total Total number of PUTS coordinated by local vnodes | Vnode Puts Total | per second |
riak_read_repairs_total Total number of Read Repairs this node has coordinated | Read Repairs Total | per second |
riak_postcommit_fail Total number of post-commit hook failures | Postcommit Fail | per second |
riak_pipeline_create_error_count The total number of pipeline creation errors since the node was started | Pipeline Create Error Count | per second |
riak_coord_redirs_total Total number of requests this node has redirected to other nodes for coordination | Coord Redirs Total | per second |
riak_sys_process_count Number of processes currently running in the Erlang VM | Sys Process Count | |
riak_pipeline_active Number of pipelines active in the last 60 seconds | Pipeline Active | |
riak_vnode_index_reads_total Total number of local replicas participating in secondary index reads | Vnode Index Reads Total | per second |
riak_vnode_index_writes_total Total number of local replicas participating in secondary index writes | Vnode Index Writes Total | per second |