16min

ContainIQ Overview

ContainIQ is a Kubernetes monitoring and tracing platform. With ContainIQ, it is easy to view and correlate metrics, logs, events, latencies, and traces. We were built with only Kubernetes in my mind which allows us to solve one use case, but solve it well.

Our agent installs with one line and all of our dashboards come pre-configured without any work for the end-user. By utilizing eBPF to instrument the kernel, we are able to provide application-level insights, without users having to write a single line of code.

Engineering and DevOps teams use ContainIQ to monitor cluster health at a high level and drill down to more detailed views to identify problems and find root causes.

Features

  • Metrics: Comprehensive view of CPU and memory for both pods and nodes, view limits, capacity, and correlate spikes in performance to events over time.
  • Logs: Container-level log aggregation with advanced query builder.
  • Events: Real-time events dashboard capturing all Kubernetes events across all clusters and namespaces. ContainIQ allows users to correlate events to logs in real-time and set alerts on changes. 
  • Latency: Measure and monitor RPS (requests per second), P95, and P99 latencies across all microservices and URL paths. 
  • Request Tracing: ContainIQ gives users real-time tracing data for all URL paths, without having to instrument each microservice at the application level. Analyze trace details such as, HTTP method, HTTP status code for each request, or click on individual traces to reveal corresponding logs to help you debug issues more efficiently.

Architecture

Upon deployment, ContainIQ creates the following Kubernetes resources

  • Namespace:
    • For objects created by ContainIQ 
  • Notification Secret: 
    • A secret that is auto-generated upon account registration, that contains your ContainIQ API key
  • ConfigMap:
    • Describes the configuration settings needed to deploy the ContainIQ application in your cluster
  • Deployment:
    • A 1 replica deployment to access the Kubernetes API that collects metrics and events across your clusters. 
  • Service Account: 
    • Authenticates and allows ContainIQ access to monitor clusters.
  • ClusterRole:
    • Cluster role with get, watch, list, capabilities on all resources in the core API and metrics API groups.
  • ClusterRoleBinding: 
    • Grants permission two additional Daemonsets: 
      • Latency controller, a daemonset that utilizes eBPF to instrument our latency data. 
      • Logging, a daemonset that collects logs for all of your pods/containers.



Updated 21 Jul 2022
Did this page help you?
Yes
No