Schedule demo

Istio Monitoring


Overview

Istio is an open source independent service mesh that provides the fundamentals you need to successfully run a distributed microservice architecture. As organizations increasingly adopt cloud platforms, developers have to architect for portability using microservices, while operators have to manage large distributed deployments that span hybrid and multi-cloud deployments. Istio reduces complexity of managing microservice deployments by providing a uniform way to secure, connect, and monitor microservices.

Creating a new Istio monitor

Prerequisites for monitoring Istio metrics:Click here

Using the REST API to add a new Istio monitor:Click here

Follow the steps given below to create a new Istio monitor:

  1. Click on New Monitor link.
  2. Select Istio under Services category.
  3. Specify the Display Name of the Istio server.
  4. Enter the Cluster Host Name/IP address of the server where Istio is running.
  5. Enter the credential details like user name and password for authentication, or select the required credentials from the Credential Manager list after enabling the Select from Credential list option.
  6. Check the box to enable Public Key Authentication (Supported for SSH2 only), the SSH Key for SSH authentication.
  7. Specify the command prompt value, which is the last character in your command prompt. Default value is $ and possible values are >, #, etc.
  8. Enter the SSH port. Default SSH port used is 22.
  9. Specify the Timeout in seconds. Default value is 40 seconds.
  10. Specify the Polling Interval in minutes.
  11. Choose the Monitor Group with which you want to associate the Istio to, from the combo box (optional). You can choose multiple groups to associate your monitor.
  12. Click Add Monitor(s). This discovers Istio from the network and starts monitoring it.

Monitored Parameters

Go to the Monitors Category View by clicking the Monitors tab. Click on Istio under the Services table. Displayed is the Istio bulk configuration view distributed into three tabs:

  • Availability tab gives the Availability history for the past 24 hours or 30 days.
  • Performance tab gives the Health Status and events for the past 24 hours or 30 days.
  • List view enables you to perform bulk admin configurations.

On clicking a monitor from the list, you'll be taken to the Istio monitor dashboard. It has 8 tabs -

Note: Tabs/Metrics marked with an * will be shown only for Istio versions below 1.5.0.

Overview

ParameterDescription
ISTIO DETAILS
NamespaceNamespace of the Istio server.
StatusStatus of the Istio namespace. (Active or Inactive)
No. of Istio PodsNumber of pods running under Istio namespace.
VersionVersion of the Istio namespace.
ISTIO COMPONENT DETAILS *
Citadel CountNumber of Citadel instances running per component.
Galley CountNumber of Galley instances running per component.
Mixer CountNumber of Mixer instances running per component.
Pilot CountNumber of Pilot instances running per component.
ISTIOD COMPONENT DETAILS
Istiod countNumber of instances (replicas) running per component.
Istio Pod Details
Pod NameName of Istio pod.
Pod TypeType of the Istio pod.
Pod statusStatus of the Istio pod.
Deployed NodeNode (host) of the deployed Istio pod.
ISTIO MCP RECONNECTIONS
Avg. sink reconnectionsNumber of times the sink has reconnected.
ISTIO MCP RECEIVE FAILURES
Receive Failures in SourceNumber of mesh connection receive failures in the source.
ISTIO MCP RECEIVED ACKS
Request acks. received by sourceNo. of request acknowledgments received by the source.

Citadel

ParameterDescription
Citadel Certificate Details
Pod NameName of Istio pod.
Certificates created for service account creationNumber of certificates created for service account creation.
Root Cert. ExpiryDate and time at which the root certificate will expire.
Days to expireNumber of days remaining for the certificate to expire.
CSR CountNumber of Certificate Signing Requests (CSR) made by the certificate.
gRPC Response Handled
gRPC CodeError status codes raised by the gRPC.
Response HandledNumber of response types handled by the gRPC.

Galley

ParameterDescription
Galley Instances*
Instance URLThe URL of the instance.
Instances per URLNumber of instances running per URL.
Webhook Configuration and Validation Details
Pod NameName of Istio pod.
Webhook Cert. UpdatesNumber of Webhook certificate updates received.
Config. loadsNumber of Webhook configuration loads tried.
Config. updatesNumber of Webhook configuration updates applied.
Config. errorsNumber of Webhook configuration errors obtained while applying.
Passed ValidationNumber of user configuration validation that has been passed.
Failed ValidationNumber of user configuration validation that has been failed.
Galley Runtime Details
Pod NameName of Istio pod.
Events processedNumber of events that have been processed.
Timer ResetsNumber of times the timer has been reset.
Successful Event HandlesNumber of times a Kubernetes source has successfully handled an event.
OnChange calledNumber of configuration changes called by a Galley strategy.
Snapshots publishedNumber of snapshots published by a Galley strategy.

Mixer *

ParameterDescription
Mixer Configurations *
Pod NameName of Istio pod.
Known Adapter Configs.Number of known adapters encountered during processing of the adapter info configuration.
Known Instance Configs.Number of known instance encountered during processing of the instance configuration.
Known Rule Configs.Number of known rules encountered during processing of the rule configuration.
Known Template Config.Number of known template encountered during processing of the template configuration.
Known Handler Configs.Number of known handler encountered during processing of the handler configuration.
Mixer Config. Errors *
Pod NameName of Istio pod.
Adapter Config. ErrorsNumber of errors encountered during processing of the adapter info configuration.
Instance Config. ErrorsNumber of errors encountered during processing of the instance configuration.
Template Config. ErrorsNumber of errors encountered during processing of the template configuration.
Reused HandlersNumber of handlers that were reused.
Handler Validation ErrorsNumber of errors encountered because handler validation returned error.
Mixer Handlers *
Pod NameName of Istio pod.
Total Mixer Handler DaemonsTotal number of Mixer handler daemons available.
Handlers failed at creationNumber of handlers that were failed at creation.
Handlers failed at closingNumber of handlers that were failed at closing.
Newly Created HandlersNumber of handlers that were newly created.
Reused HandlersNumber of handlers that were reused.

Pilot

ParameterDescription
Inbound Listener Conflict Details
Pod NameName of Istio pod.
Inbound Listener ConflictsNumber of inbound port conflicts found.
Outbound Listener Conflict Details
Pod NameName of Istio pod.
HTTP over current TCPNumber of conflicting wildcard HTTP listeners with current wildcard TCP listener.
HTTP over HTTPSNumber of conflicting HTTP listeners with well-known HTTPS ports.
TCP over current HTTPNumber of conflicting wildcard TCP listeners with current wildcard HTTP listener.
TCP over current TCPNumber of conflicting TCP listeners with current TCP listener.
Pilot Service Details
Pod NameName of Istio pod.
Pilot services knownNumber of services known to Pilot.
Virtual services knownNumber of virtual services known to Pilot.
Services with duplicated domainsNumber of virtual services with duplicated domains.
Endpoints Connected using XDSNumber of endpoints connected to Pilot using xDS protocol.
PILOT XDS PUSHES
Cluster Discovery ServiceNumber of configuration pushes for Cluster discovery services.
Endpoint Discovery ServiceNumber of configuration pushes for Endpoint discovery services.
Listener Discovery ServiceNumber of configuration pushes for Listener discovery services.
Route Discovery ServiceNumber of configuration pushes for Route discovery services.
AVG PROXY CONVERGENCE DELAY
Avg. delay between config. changeAvg. delay between a configuration change and a proxy receiving all required configuration (in milliseconds).
Clusters and Endpoint Details
Pod NameName of Istio pod.
Duplicate Envoy ClustersNumber of Duplicate envoy clusters caused by service entries with same host name.
Cluster without instancesNumber of clusters without instances.
Unready endpointsNumber of endpoints found in unready state.

Go Stats

ParameterDescription
Go Memory Details
Pod NameName of Istio pod.
Allocated MemoryAmount of memory allocated for an Istio pod (in MB).
Heap AvailableAmount of heap memory available for use (in MB).
Heap In UseAmount of heap memory currently in use (in MB).
Cache AvailableAmount of cache memory available for use (in KB).
Cache In UseAmount of cache memory currently in use (in KB).
Go RoutinesNumber of Go Routines that are running.
Go ThreadsNumber of OS Threads that are created.
Memory used for GCAmount of memory used for Garbage Collection (in MB)
Memory targeted for next GCAmount of memory targeted for next Garbage Collection (in MB)
Last Garbage CollectionDate and time at which Garbage Collection was last performed.

Processes

ParameterDescription
Process Details
Pod NameName of Istio pod.
Opened File DescriptorsNumber of open file descriptors in use.
Maximum File DescriptorsMaximum number of file descriptors available.
Free File DescriptorsNumber of file descriptors that are unused.
Virtual Memory SizeAmount of virtual memory available (in MB).
Process Start TimeDate and time at which the process was started.
Total Running daysTotal number of the days for which the process was running.

Services

ParameterDescription
Incoming Traffic Details
Workload nameName of the workload.
Request countNumber of requests received between two intervals.
Failed requestsNumber of failed requests received by the workload.
Avg. Request sizeAvg. size of request received by the workload (in KB).
Avg. Response sizeAvg. size of response sent by a workload (in KB).
Avg. Request durationAvg. duration between a request and response (in seconds).

Loved by customers all over the world

"Standout Tool With Extensive Monitoring Capabilities"

It allows us to track crucial metrics such as response times, resource utilization, error rates, and transaction performance. The real-time monitoring alerts promptly notify us of any issues or anomalies, enabling us to take immediate action.

Reviewer Role: Research and Development

carlos-rivero
"I like Applications Manager because it helps us to detect issues present in our servers and SQL databases."
Carlos Rivero

Tech Support Manager, Lexmark

Trusted by over 6000+ businesses globally