Monitoring Tools Overview

#Infra #IaaS #Concepts #Monitoring

1. Horizon

  • Refers to OpenStack Horizon.
  • The dashboard (Web UI) of OpenStack (open-source cloud platform).
  • Roles:
    • Create/delete VMs
    • Network management
    • Storage management
    • User & permission management
  • In short, a web console for cloud management.
  • Similar to AWS Management Console.

2. Prometheus

  • Open-source monitoring & alerting system.
  • Stores metrics in a Time-Series DB.
  • Primarily used for infrastructure/application performance monitoring.
  • Key features:
    • Pull-based (Scraping): The Prometheus server periodically scrapes metrics from targets.
    • PromQL (Prometheus Query Language): Used for querying and analyzing data.
    • Integrates with Alertmanager → sends alerts via Slack, Email, PagerDuty, etc.

3. Kibana

  • A data visualization dashboard dedicated to Elasticsearch.
  • Analyzes log and document-based data, displaying it as charts, graphs, and dashboards.
  • Typically used as part of the Elastic Stack (ELK: Elasticsearch + Logstash + Kibana).
  • Key features:
    • Log search (e.g., filtering error logs)
    • Security analysis
    • Application log visualization

4. Elasticsearch

  • Open-source search and analytics engine.
  • A NoSQL database based on JSON documents.
  • Primarily used for storing and searching log/event data.
  • Key features:
    • Distributed architecture (horizontally scalable).
    • Supports Full-text Search (natural language search).
    • Combined with Kibana, it becomes a powerful log analysis tool.

5. Loki

  • A log collection and storage system built by Grafana Labs.
  • Serves a similar role to Elasticsearch, but optimized for storing logs as simply as metrics.
  • Key features:
    • Architecture similar to Prometheus (label-based queries).
    • Does not index full text of logs; only indexes metadata (labels) → reduces storage costs.
    • Integrates seamlessly with Grafana.

6. Grafana

  • Open-source visualization platform.
  • Can connect to a variety of data sources: Prometheus, Loki, Elasticsearch, InfluxDB, and more.
  • Key features:
    • Metrics dashboards (CPU usage, network traffic, etc.).
    • Log viewer (Loki/Elasticsearch integration).
    • Alert configuration.
  • Unlike Prometheus/Kibana, Grafana can integrate multiple data sources into a single dashboard.

Comparison Summary

ToolRoleKey FeaturesSimilar To
HorizonOpenStack management UICloud resource management (VMs, network, storage)AWS Console
PrometheusMetrics collection/storageTime-series data, pull-based, Alertmanager integrationInfluxDB
KibanaElasticsearch-dedicated visualizationLog/document-based data analysis and searchGrafana (visualization)
ElasticsearchSearch/analytics engineLog storage/search, JSON document-based, distributedLoki (log storage)
LokiLog storage/queryingMetadata-based indexing, cost reduction, optimized for GrafanaElasticsearch
GrafanaUnified dashboardConnects Prometheus/Loki/ES etc., integrates metrics + logsKibana (ES-only)

Easy Summary

  • Horizon → Management UI for OpenStack (cloud resource management).
  • Prometheus → Server/app metrics monitoring.
  • Grafana → Visualization dashboard for monitoring data.
  • Elasticsearch → Log storage and search engine.
  • Kibana → Visualization tool for Elasticsearch.
  • Loki → Lightweight log storage system (optimized for Grafana integration).

Use Case Combinations

1. Cloud Resource Management (Horizon-centric)

  • Tools used: Horizon (OpenStack Dashboard)
  • Use case:
    • When building an enterprise private cloud (OpenStack),
    • Use Horizon to create VMs, configure networks, and manage storage with just a few clicks.
  • Characteristics:
    • A tool for controlling infrastructure itself → different in nature from monitoring/log analysis tools.
    • Plays the same role as the AWS Console.

2. Metrics Monitoring + Alerts (Prometheus + Grafana)

  • Tools used: Prometheus + Grafana
  • Use case:
    • When operating a Kubernetes cluster →
      • Prometheus collects CPU, memory, and network usage from each Pod/Node/container.
      • Grafana visualizes this data and shares dashboards with the ops and dev teams.
      • Integrated with Alertmanager → Slack/email alerts on incidents.
  • Characteristics:
    • Optimal for “metrics monitoring.”
    • Widely used for infrastructure health and performance monitoring.

3. Log Analysis (Elasticsearch + Kibana, i.e., ELK Stack)

  • Tools used: Elasticsearch + Logstash + Kibana (ELK)
  • Use case:
    • Collecting error logs from web servers (Nginx, Django, Spring, etc.).
    • Logstash/Beats aggregates server logs and stores them in Elasticsearch.
    • Kibana visualizes “which errors occur most frequently” → root cause analysis.
  • Characteristics:
    • Optimal for “log search/analysis.”
    • Useful for in-depth analysis of security logs (IDS/IPS), server access logs, and application logs.

4. Log Monitoring (Loki + Grafana)

  • Tools used: Loki + Grafana
  • Use case:
    • When large volumes of Pod logs pour in from a microservices environment (Kubernetes),
    • Loki collects logs simply, and Grafana displays them via dashboards and a log viewer.
    • It’s possible to “show Pod A logs and Pod B logs on the same timeline.”
  • Characteristics:
    • Much lower storage cost than Elasticsearch.
    • Log search capabilities are limited, but well-suited for real-time operational monitoring.
    • When used alongside Prometheus, metrics + logs can be viewed together in a single Grafana dashboard.

5. Integrated Operations Environment

  • Prometheus + Grafana + Loki combination:
    • Unified view of infrastructure/app metrics + logs in a single Grafana dashboard.
    • Ops engineers can quickly pinpoint issues like “CPU spike → immediately check logs at that moment.”
  • ELK (Elasticsearch + Kibana):
    • Strong for bulk log analysis, security audits (compliance), and long-term log retention.
  • Mixed usage:
    • Prometheus + Grafana (metrics)
    • Loki (recent logs, low cost)
    • Elasticsearch + Kibana (deep log analysis, long-term retention)

Summary Comparison

PurposeCommon StackCharacteristics
Cloud resource managementHorizonVM, network, storage management
Metrics monitoringPrometheus + GrafanaServer/app performance metrics, alerting
Log analysisELK (Elasticsearch + Kibana)Large-scale log search/analysis
Log monitoringLoki + GrafanaLightweight log collection, cost-efficient, real-time ops
Integrated operationsPrometheus + Grafana + Loki (+ ELK as needed)Unified metrics+logs, improved operational efficiency