Introduction
Istio is an open-source service mesh that provides traffic management, security, and observability for microservices. It manages service-to-service communication and provides deep insights into service behavior.
Prometheus metrics are exposed via: http://<istiod-host>:15014/metrics (Istiod)
Kubernetes 2.0 ConfigMap
Users should update or append the existing ConfigMap named opsramp-workload-metric-user-config
by adding application-specific fields. These fields may include authentication credentials, collection frequency, and other relevant configurations.
apiVersion: v1
kind: ConfigMap
metadata:
name: opsramp-workload-metric-user-config
namespace: opsramp-agent
data:
workloads: |
istio:
- name: istio
collectionFrequency: 60s
port: 15014
filters:
- regex: 'istio_requests_total'
action: include
- regex: 'pilot_xds'
action: include
targetPodSelector:
matchLabels:
- key: app.kubernetes.io/name
operator: ==
value:
- istiod
Supported Metrics
Supported metrics for this workload as provided by the Kubernetes 2.0 Agent.
Metric | Description |
---|---|
citadel_server_csr_count | Total number of Certificate Signing Requests (CSRs) received by the Citadel server. |
citadel_server_root_cert_expiry_seconds | Time in seconds until the root certificate expires. |
citadel_server_root_cert_expiry_timestamp | Timestamp of the root certificate's expiration. |
citadel_server_success_cert_issuance_count | Number of certificates successfully issued by the Citadel server. |
controller_sync_errors_total | Total number of errors encountered during controller synchronization. |
endpoint_no_pod | Number of endpoints without an associated pod. |
go_gc_duration_seconds | Duration of garbage collection cycles in seconds. |
go_gc_duration_seconds_sum | Total duration of all garbage collection cycles. |
go_gc_duration_seconds_count | Number of garbage collection cycles executed. |
go_gc_gogc_percent | Current garbage collection target percentage for Go runtime. |
go_gc_gomemlimit_bytes | Memory limit for Go's garbage collector. |
go_goroutines | Number of currently running goroutines. |
go_info | Go runtime information including version. |
go_memstats_alloc_bytes | Current bytes allocated in the heap. |
go_memstats_alloc_bytes_total | Total bytes allocated over the application's lifetime. |
go_memstats_buck_hash_sys_bytes | Bytes used for Go's internal bucket hash structures. |
go_memstats_frees_total | Total number of freed heap objects. |
go_memstats_gc_sys_bytes | Bytes used for garbage collection metadata. |
go_memstats_heap_alloc_bytes | Current bytes allocated in the heap. |
go_memstats_heap_idle_bytes | Bytes in idle heap spans (not actively used). |
go_memstats_heap_inuse_bytes | Bytes in active heap spans (currently allocated memory). |
go_memstats_heap_objects | Number of allocated heap objects. |
go_memstats_heap_released_bytes | Bytes released to the OS by the Go runtime. |
go_memstats_heap_sys_bytes | Bytes requested from the OS for heap memory. |
go_memstats_last_gc_time_seconds | Time of the last garbage collection cycle in seconds. |
go_memstats_mallocs_total | Total number of heap allocations. |
go_memstats_mcache_inuse_bytes | Bytes in-use by memory cache structures. |
go_memstats_mcache_sys_bytes | Bytes allocated by the OS for memory cache structures. |
go_memstats_mspan_inuse_bytes | Bytes in-use by memory span structures. |
go_memstats_mspan_sys_bytes | Bytes allocated by the OS for memory span structures. |
go_memstats_next_gc_bytes | Memory threshold at which the next garbage collection will trigger. |
go_memstats_other_sys_bytes | Bytes used for miscellaneous Go runtime structures. |
go_memstats_stack_inuse_bytes | Bytes currently used by Go stack memory. |
go_memstats_stack_sys_bytes | Bytes allocated by the OS for Go stack memory. |
go_memstats_sys_bytes | Total bytes requested from the OS by the Go runtime. |
go_sched_gomaxprocs_threads | Number of CPU threads available to the Go scheduler. |
go_threads | Number of system threads created by the Go runtime. |
grpc_server_handled_total | Total number of gRPC requests handled by the server. |
grpc_server_handling_seconds_bucket | Histogram buckets for gRPC request handling time. |
grpc_server_handling_seconds_sum | Total time spent handling gRPC requests. |
grpc_server_handling_seconds_count | Total count of handled gRPC requests. |
grpc_server_msg_received_total | Total number of gRPC messages received. |
grpc_server_msg_sent_total | Total number of gRPC messages sent. |
grpc_server_started_total | Total number of gRPC requests started. |
istio_build | Istio build version information. |
istiod_managed_clusters | Number of clusters managed by Istiod. |
istiod_uptime_seconds | Total uptime of Istiod in seconds. |
process_cpu_seconds_total | Total CPU time consumed by the process. |
process_max_fds | Maximum number of open file descriptors allowed for the process. |
process_network_receive_bytes_total | Total number of bytes received over the network. |
process_network_transmit_bytes_total | Total number of bytes transmitted over the network. |
process_open_fds | Number of currently open file descriptors. |
process_resident_memory_bytes | Amount of physical memory used by the process. |
process_start_time_seconds | Process start time since epoch in seconds. |
process_virtual_memory_bytes | Total virtual memory allocated to the process. |
process_virtual_memory_max_bytes | Maximum virtual memory allocated to the process. |
sidecar_injection_requests_total | Total number of sidecar injection requests received. |
sidecar_injection_success_total | Total number of successful sidecar injections. |