Consul is a service mesh solution providing a full featured control plane with service discovery, configuration, and segmentation functionality. Each of these features can be used individually as needed, or they can be used together to build a full service mesh. Consul requires a data plane and supports both a proxy and native integration model.
Prerequisite
Enable promethus metrics in Consul. To enable prometheus, add prometheus_retention_time
in telemetry in the config.json
file.
Configuring the credentials
Configure the credentials in the directory /opt/opsramp/agent/conf/app.d/creds.yaml
consul:
- name: consul
user: <username>
pwd: <Password>
encoding-type: plain
labels:
key1: val1
key2: val2
Configuring the application
Docker environment
Configure the application in the directory /opt/opsramp/agent/conf/app/discovery/auto-container-detection.yaml
- name: consul
container-checks:
image-check:
- consul
port-check:
- 8500
- 8301
Kubernetes environment
Configure the application in config.yaml
- name: consul
container-checks:
image-check:
- consul
port-check:
- 8500
- 8301
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 |
---|---|---|
consul_kvs_apply This measures the time it takes to complete an update to the KV store | Kvs Apply | |
consul_kvs_apply_sum Measures the time it takes to complete an update to the KV store | Kvs Apply Sum | |
consul_kvs_apply_count Measures the time it takes to complete an update to the KV store | Kvs Apply Count | |
consul_txn_apply Measures the time spent applying a transaction operation | Txn Apply | |
consul_txn_apply_sum Sum of the time spent applying a transaction operation | Txn Apply Sum | |
consul_txn_apply_count Time spent applying a transaction operation | Txn Apply Count | |
consul_raft_apply Number of Raft transactions occurring over the interval | Raft Apply | |
consul_raft_commitTime Time it takes to commit a new entry to the Raft log on the leader | Raft Commit Time | seconds |
consul_raft_commitTime_sum Raft commitTime sum | Raft Commit Time Sum | seconds |
consul_raft_commitTime_count Raft commitTime count | Raft Commit Time Count | seconds |
consul_raft_leader_lastContact Time since the leader was last able to contact the follower nodes | Raft Leader Lastcontact | |
consul_raft_leader_lastContact_sum Measure of raft leader last contact sum | Raft Leader Lastcontact Sum | |
consul_raft_leader_lastContact_count Raft leader last contact count | Raft Leader Lastcontact Count | |
consul_autopilot_healthy Tracks the overall health of the local server cluster. 1 if all servers are healthy, 0 if one or more are unhealthy | Autopilot Healthy | |
consul_runtime_alloc_bytes Measures the number of bytes allocated by the Consul process | Runtime Alloc Bytes | bytes |
consul_runtime_sys_bytes Measures the number of bytes allocated by the os | Runtime Sys Bytes | bytes |
consul_runtime_total_gc_pause_ns Number of nanoseconds consumed by stop-the-world garbage collection (GC) pauses since Consul started | Runtime Total Gc Pause Ns | nanoseconds |
consul_client_rpc Increments when a Consul agent in client mode makes an RPC request to a Consul server | Client Rpc | |
consul_client_rpc_exceeded Increments when a Consul agent in client mode makes an RPC request to a Consul server gets rate limited by that agent limits configuration | Client Rpc Exceeded | |
consul_client_rpc_failed Increments when a Consul agent in client mode makes an RPC request to a Consul server and fails | Client Rpc Failed | |
consul_memberlist_gossip Number of memberlist gossip | Memberlist Gossip | |
consul_memberlist_gossip_sum Measure of memberlist gossip sum | Memberlist Gossip Sum | |
consul_memberlist_gossip_count Memberlist gossip count | Memberlist Gossip Count | |
consul_memberlist_probeNode Total number of memberlist probe node | Memberlist Probenode | |
consul_memberlist_probeNode_sum Memberlist probeNode sum | Memberlist Probenode Sum | |
consul_memberlist_probeNode_count Number of memberlist probe node count | Memberlist Probenode Count | |
consul_memberlist_pushPullNode Memberlist push pull node | Memberlist Pushpullnode | |
consul_memberlist_pushPullNode_sum Memberlist push pull node | Memberlist Pushpullnode Sum | |
consul_memberlist_pushPullNode_count Memberlist push pull node | Memberlist Pushpullnode Count | |
consul_memberlist_tcp_accept Memberlist tcp accept | Memberlist Tcp Accept | |
consul_memberlist_tcp_connect Memberlist tcp connect | Memberlist Tcp Connect | |
consul_memberlist_tcp_sent Memberlist tcp sent | Memberlist Tcp Sent | |
consul_memberlist_udp_received Memberlist udp received | Memberlist Udp Received | |
consul_memberlist_udp_sent Memberlist udp sent | Memberlist Udp Sent | |
consul_runtime_num_goroutines Number of runtime goroutines | Runtime Num Goroutines | |
consul_runtime_heap_objects Number of runtime heap objects | Runtime Heap Objects | |
consul_runtime_malloc_count Number of runtime malloc count | Runtime Malloc Count | |
consul_runtime_free_count Number of runtime free count | Runtime Free Count | |
consul_runtime_total_gc_runs Number of runtime total gc runs | Runtime Total Gc Runs | |
consul_raft_state_leader Raft state leader | Raft State Leader | |
consul_raft_state_candidate Raft state candidate | Raft State Candidate | |
consul_raft_leader_dispatchLog Raft leader dispatchLog | Raft Leader Dispatchlog | |
consul_raft_leader_dispatchLog_sum Raft leader dispatchLog sum | Raft Leader Dispatchlog Sum | |
consul_raft_leader_dispatchLog_count Number of raft leader dispatchLog count | Raft Leader Dispatchlog Count | |
consul_serf_queue_Intent Serf queue Intent | Serf Queue Intent | |
consul_serf_queue_Intent_sum Measure of serf queue Intent sum | Serf Queue Intent Sum | |
consul_serf_queue_Intent_count Number of serf queue Intent count | Serf Queue Intent Count | |
consul_serf_queue_Event Serf queue Event | Serf Queue Event | |
consul_serf_queue_Event_sum Serf queue Event sum | Serf Queue Event Sum | |
consul_serf_queue_Event_count Number of serf queue Event count | Serf Queue Event Count | |
consul_serf_queue_Query Number of serf queue Query | Serf Queue Query | |
consul_serf_queue_Query_sum Serf queue Query sum | Serf Queue Query Sum | |
consul_serf_queue_Query_count Number of serf queue Query count | Serf Queue Query Count |