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’s 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.

Metrics

OpsRamp MetricMetric Display NameUnitDescription
riak_memory_atomMemory AtombytesTotal amount of memory currently allocated for atom storage
riak_memory_atom_usedMemory Atom UsedbytesTotal amount of memory currently used for atom storage
riak_memory_binaryMemory BinarybytesTotal amount of memory used for binaries
riak_memory_codeMemory CodebytesTotal amount of memory allocated for Erlang code
riak_memory_etsMemory EtsbytesTotal memory allocated for Erlang Term Storage
riak_memory_processesMemory ProcessesbytesTotal amount of memory allocated for Erlang processes
riak_memory_processes_usedMemory Processes UsedbytesTotal amount of memory used by Erlang processes
riak_memory_totalMemory TotalbytesTotal allocated memory (sum of processes and system)
riak_node_get_fsm_active_60sNode Get Fsm Active 60SNumber of active GET FSMs
riak_node_get_fsm_in_rateNode Get Fsm In RateAverage number of GET FSMs enqueued by Sidejob
riak_node_get_fsm_out_rateNode Get Fsm Out RateAverage number of GET FSMs dequeued by Sidejob
riak_node_get_fsm_rejected_60sNode Get Fsm Rejected 60SNumber of GET FSMs actively being rejected by Sidejob's overload protection
riak_node_getsNode GetsOperationsNumber of GETs coordinated by this node
riak_node_put_fsm_active_60sNode Put Fsm Active 60SNumber of active PUT FSMs
riak_node_put_fsm_in_rateNode Put Fsm In RateAverage number of PUT FSMs enqueued by Sidejob
riak_node_put_fsm_out_rateNode Put Fsm Out RateAverage number of PUT FSMs dequeued by Sidejob
riak_node_put_fsm_rejected_60sNode Put Fsm Rejected 60SNumber of PUT FSMs actively being rejected by Sidejob's overload protection
riak_node_putsNode PutsOperationsNumber of PUTs coordinated by this node
riak_pbc_activePbc ActiveConnectionsNumber of active protocol buffers connections
riak_pbc_connectsPbc ConnectsConnectionsNumber of protocol buffers connections
riak_read_repairsRead RepairsOperationsNumber of read repair operations this this node has coordinated in the last minute
riak_vnode_getsVnode GetsOperationsNumber of GET operations coordinated by vnodes on this node
riak_vnode_index_deletesVnode Index DeletesOperationsNumber of vnode index delete operations
riak_vnode_index_readsVnode Index ReadsReadsNumber of vnode index read operations
riak_vnode_index_writesVnode Index WritesWritesNumber of vnode index write operations
riak_vnode_putsVnode PutsOperationsNumber of PUT operations coordinated by vnodes on this node
riak_node_get_fsm_objsize_meanNode Get Fsm Objsize MeanbytesObject size encountered by this node
riak_node_get_fsm_siblings_meanNode Get Fsm Siblings MeanNodesNumber of siblings encountered during all GET operations by this node
riak_node_get_fsm_time_meanNode Get Fsm Time MeanmicrosecondsTime between reception of client GET request and subsequent response to client
riak_node_put_fsm_time_meanNode Put Fsm Time MeanmicrosecondsTime between reception of client PUT request and subsequent response to client
riak_node_get_fsm_objsize_medianNode Get Fsm Objsize MedianbytesObject size encountered by this node
riak_node_get_fsm_siblings_medianNode Get Fsm Siblings MedianNodesNumber of siblings encountered during all GET operations by this node
riak_node_get_fsm_time_medianNode Get Fsm Time MedianmicrosecondsTime between reception of client GET request and subsequent response to client
riak_node_put_fsm_time_medianNode Put Fsm Time MedianmicrosecondsTime between reception of client PUT request and subsequent response to client
riak_node_get_fsm_objsize_95Node Get Fsm Objsize 95bytesObject size encountered by this node
riak_node_get_fsm_siblings_95Node Get Fsm Siblings 95NodesNumber of siblings encountered during all GET operations by this node
riak_node_get_fsm_time_95Node Get Fsm Time 95microsecondsTime between reception of client GET request and subsequent response to client
riak_node_put_fsm_time_95Node Put Fsm Time 95microsecondsTime between reception of client PUT request and subsequent response to client
riak_node_get_fsm_objsize_99Node Get Fsm Objsize 99bytesObject size encountered by this node
riak_node_get_fsm_siblings_99Node Get Fsm Siblings 99NodesNumber of siblings encountered during all GET operations by this node
riak_node_get_fsm_time_99Node Get Fsm Time 99microsecondsTime between reception of client GET request and subsequent response to client
riak_node_put_fsm_time_99Node Put Fsm Time 99microsecondsTime between reception of client PUT request and subsequent response to client
riak_node_get_fsm_objsize_100Node Get Fsm Objsize 100bytesObject size encountered by this node
riak_node_get_fsm_siblings_100Node Get Fsm Siblings 100NodesNumber of siblings encountered during all GET operations by this node
riak_node_get_fsm_time_100Node Get Fsm Time 100microsecondsTime between reception of client GET request and subsequent response to client
riak_node_put_fsm_time_100Node Put Fsm Time 100microsecondsTime between reception of client PUT request and subsequent response to client
riak_search_index_fail_countSearch Index Fail CountObjectsTotal number of documents that have failed to index
riak_search_index_fail_oneSearch Index Fail OneObjectsNumber of documents that have failed to index in the past one minute
riak_search_query_fail_countSearch Query Fail CountEventsTotal number of queries that have failed
riak_search_query_fail_oneSearch Query Fail OneEventsNumber of queries that have failed in the last one minute
riak_search_index_throughput_countSearch Index Throughput CountOperationsTotal number of documents that have been indexed
riak_search_index_throughput_oneSearch Index Throughput OneOperationsNumber of documents that have been indexed in the last one minute
riak_search_query_throughput_countSearch Query Throughput CountOperationsTotal number of queries that have been performed
riak_search_query_throughput_oneSearch Query Throughput OneOperationsNumber of searches that have been performed in the last one minute
riak_search_query_latency_95Search Query Latency 95microsecondsTime between reception of query and response: 95th percentile
riak_search_query_latency_99Search Query Latency 99microsecondsTime between reception of query and response: 99th percentile
riak_search_query_latency_999Search Query Latency 999microsecondsTime between reception of query and response: 99.9th percentile
riak_search_query_latency_maxSearch Query Latency MaxmicrosecondsTime between reception of query and response: max
riak_search_query_latency_minSearch Query Latency MinmicrosecondsTime between reception of query and response: min
riak_search_query_latency_meanSearch Query Latency MeanmicrosecondsTime between reception of query and response: mean
riak_search_query_latency_medianSearch Query Latency MedianmicrosecondsTime between reception of query and response: median
riak_search_index_latency_95Search Index Latency 95microsecondsTime between insertion of document and it being indexed: 95th percentile
riak_search_index_latency_99Search Index Latency 99microsecondsTime between insertion of document and it being indexed: 99th percentile
riak_search_index_latency_999Search Index Latency 999microsecondsTime between insertion of document and it being indexed: 99.9th percentile
riak_search_index_latency_maxSearch Index Latency MaxmicrosecondsTime between insertion of document and it being indexed: max
riak_search_index_latency_minSearch Index Latency MinmicrosecondsTime between insertion of document and it being indexed: min
riak_search_index_latency_meanSearch Index Latency MeanmicrosecondsTime between insertion of document and it being indexed: mean
riak_search_index_latency_medianSearch Index Latency MedianmicrosecondsTime between insertion of document and it being indexed: median
riak_vnode_gets_totalVnode Gets Totalper secondTotal number of GETs coordinated by local vnodes
riak_node_gets_totalNode Gets Totalper secondTotal number of GETs coordinated by this node, including GETs to non-local vnodes
riak_node_puts_totalNode Puts Totalper secondTotal number of PUTs coordinated by this node, including PUTs to non-local vnodes
riak_riak_kv_vnodes_runningRiak Kv Vnodes Running
riak_ring_num_partitionsRing Num PartitionsThe number of partitions in the ring
riak_precommit_failPrecommit Failper secondTotal number of pre-commit hook failures
riak_vnode_index_deletes_totalVnode Index Deletes Totalper secondTotal number of local replicas participating in secondary index deletes
riak_riak_pipe_vnodes_runningRiak Pipe Vnodes Running
riak_pipeline_create_countPipeline Create Countper secondThe total number of pipelines created since the node was started
riak_vnode_puts_totalVnode Puts Totalper secondTotal number of PUTS coordinated by local vnodes
riak_read_repairs_totalRead Repairs Totalper secondTotal number of Read Repairs this node has coordinated
riak_postcommit_failPostcommit Failper secondTotal number of post-commit hook failures
riak_pipeline_create_error_countPipeline Create Error Countper secondThe total number of pipeline creation errors since the node was started
riak_coord_redirs_totalCoord Redirs Totalper secondTotal number of requests this node has redirected to other nodes for coordination
riak_sys_process_countSys Process CountNumber of processes currently running in the Erlang VM
riak_pipeline_activePipeline ActiveNumber of pipelines active in the last 60 seconds
riak_vnode_index_reads_totalVnode Index Reads Totalper secondTotal number of local replicas participating in secondary index reads
riak_vnode_index_writes_totalVnode Index Writes Totalper secondTotal number of local replicas participating in secondary index writes