collectd vs Ganglia vs Prometheus

Need advice about which tool to choose?Ask the StackShare community!

collectd

96
154
+ 1
5
Ganglia

28
87
+ 1
0
Prometheus

4.5K
3.7K
+ 1
239

Ganglia vs Prometheus vs collectd: What are the differences?

Introduction

In the world of monitoring and performance management, there are various tools available for system administrators to choose from. Ganglia, Prometheus, and collectd are three popular tools that serve this purpose. Each tool has its unique features and capabilities, making them suitable for different use cases.

  1. Data Collection Method: Ganglia primarily uses a hierarchical design to collect and send metrics to a central server for analysis. On the other hand, Prometheus utilizes a pull-based model where each target exposes a metrics endpoint that Prometheus scrapes periodically. In comparison, collectd employs a plugin-based architecture to collect various types of system metrics and statistics.

  2. Data Storage and Querying: Prometheus has a built-in time-series database that stores all collected metrics locally, providing powerful querying capabilities using its PromQL language. Ganglia relies on RRDTool for storing historical data, making it less flexible for advanced querying. Collectd, on the other hand, lacks built-in data storage capabilities and typically forwards metrics to other tools like Prometheus.

  3. Alerting and Notification: Prometheus comes with built-in alerting features that allow users to set up rules for alert notifications based on specified conditions. Ganglia does not have native alerting capabilities and usually requires integration with third-party tools for this functionality. Similarly, collectd does not provide native alerting features and relies on external tools for setting up alerts.

  4. Community and Ecosystem: Prometheus has a rapidly growing community and a rich ecosystem of integrations with various third-party tools and platforms, making it a popular choice for monitoring in modern environments. Ganglia has a well-established community but may lack some of the modern features and integrations available in Prometheus. Collectd has a smaller community compared to Prometheus and Ganglia, which can affect the availability of plugins and support resources.

  5. Scalability and Performance: Ganglia is known for its scalability and efficiency in large-scale deployments, making it a preferred choice for monitoring clusters and distributed systems. Prometheus, while capable of handling large volumes of metrics, may require additional resources for optimal performance in high-traffic environments. Collectd is lightweight and designed for minimal resource consumption, making it suitable for monitoring individual systems or small-scale deployments.

  6. Architecture and Flexibility: Ganglia follows a client-server architecture where data is sent to a central collector for processing, while Prometheus and collectd can operate in standalone modes without the need for centralized servers. Prometheus offers more flexibility in terms of metric collection and monitoring configurations, with support for dynamic service discovery and auto-scaling environments. Collectd, on the other hand, is more focused on system-level metrics collection and may require additional tools for advanced monitoring use cases.

In Summary, Ganglia, Prometheus, and collectd each offer unique features and capabilities for monitoring and performance management, catering to different requirements in terms of data collection, storage, querying, alerting, community support, scalability, and flexibility.

Advice on collectd, Ganglia, and Prometheus
Susmita Meher
Senior SRE at African Bank · | 4 upvotes · 781.8K views
Needs advice
on
GrafanaGrafanaGraphiteGraphite
and
PrometheusPrometheus

Looking for a tool which can be used for mainly dashboard purposes, but here are the main requirements:

  • Must be able to get custom data from AS400,
  • Able to display automation test results,
  • System monitoring / Nginx API,
  • Able to get data from 3rd parties DB.

Grafana is almost solving all the problems, except AS400 and no database to get automation test results.

See more
Replies (1)
Sakti Behera
Technical Specialist, Software Engineering at AT&T · | 3 upvotes · 567.1K views
Recommends
on
GrafanaGrafanaPrometheusPrometheus

You can look out for Prometheus Instrumentation (https://prometheus.io/docs/practices/instrumentation/) Client Library available in various languages https://prometheus.io/docs/instrumenting/clientlibs/ to create the custom metric you need for AS4000 and then Grafana can query the newly instrumented metric to show on the dashboard.

See more
Sunil Chaudhari
Needs advice
on
MetricbeatMetricbeat
and
PrometheusPrometheus

Hi, We have a situation, where we are using Prometheus to get system metrics from PCF (Pivotal Cloud Foundry) platform. We send that as time-series data to Cortex via a Prometheus server and built a dashboard using Grafana. There is another pipeline where we need to read metrics from a Linux server using Metricbeat, CPU, memory, and Disk. That will be sent to Elasticsearch and Grafana will pull and show the data in a dashboard.

Is it OK to use Metricbeat for Linux server or can we use Prometheus?

What is the difference in system metrics sent by Metricbeat and Prometheus node exporters?

Regards, Sunil.

See more
Replies (2)
Matthew Rothstein
Recommends
on
PrometheusPrometheus

If you're already using Prometheus for your system metrics, then it seems like standing up Elasticsearch just for Linux host monitoring is excessive. The node_exporter is probably sufficient if you'e looking for standard system metrics.

Another thing to consider is that Metricbeat / ELK use a push model for metrics delivery, whereas Prometheus pulls metrics from each node it is monitoring. Depending on how you manage your network security, opting for one solution over two may make things simpler.

See more
Recommends
on
InstanaInstana

Hi Sunil! Unfortunately, I don´t have much experience with Metricbeat so I can´t advise on the diffs with Prometheus...for Linux server, I encourage you to use Prometheus node exporter and for PCF, I would recommend using the instana tile (https://www.instana.com/supported-technologies/pivotal-cloud-foundry/). Let me know if you have further questions! Regards Jose

See more
Mat Jovanovic
Head of Cloud at Mats Cloud · | 3 upvotes · 711.1K views
Needs advice
on
DatadogDatadogGrafanaGrafana
and
PrometheusPrometheus

We're looking for a Monitoring and Logging tool. It has to support AWS (mostly 100% serverless, Lambdas, SNS, SQS, API GW, CloudFront, Autora, etc.), as well as Azure and GCP (for now mostly used as pure IaaS, with a lot of cognitive services, and mostly managed DB). Hopefully, something not as expensive as Datadog or New relic, as our SRE team could support the tool inhouse. At the moment, we primarily use CloudWatch for AWS and Pandora for most on-prem.

See more
Replies (2)
Lucas Rincon
Recommends
on
InstanaInstana

this is quite affordable and provides what you seem to be looking for. you can see a whole thing about the APM space here https://www.apmexperts.com/observability/ranking-the-observability-offerings/

See more
Recommends
on
DatadogDatadog

I worked with Datadog at least one year and my position is that commercial tools like Datadog are the best option to consolidate and analyze your metrics. Obviously, if you can't pay the tool, the best free options are the mix of Prometheus with their Alert Manager and Grafana to visualize (that are complementary not substitutable). But I think that no use a good tool it's finally more expensive that use a not really good implementation of free tools and you will pay also to maintain its.

See more
Decisions about collectd, Ganglia, and Prometheus
Leonardo Henrique da Paixão
Junior QA Tester at SolarMarket · | 15 upvotes · 352.6K views

The objective of this work was to develop a system to monitor the materials of a production line using IoT technology. Currently, the process of monitoring and replacing parts depends on manual services. For this, load cells, microcontroller, Broker MQTT, Telegraf, InfluxDB, and Grafana were used. It was implemented in a workflow that had the function of collecting sensor data, storing it in a database, and visualizing it in the form of weight and quantity. With these developed solutions, he hopes to contribute to the logistics area, in the replacement and control of materials.

See more
Get Advice from developers at your company using StackShare Enterprise. Sign up for StackShare Enterprise.
Learn More
Pros of collectd
Pros of Ganglia
Pros of Prometheus
  • 2
    Open Source
  • 2
    Modular, plugins
  • 1
    KISS
    Be the first to leave a pro
    • 47
      Powerful easy to use monitoring
    • 38
      Flexible query language
    • 32
      Dimensional data model
    • 27
      Alerts
    • 23
      Active and responsive community
    • 22
      Extensive integrations
    • 19
      Easy to setup
    • 12
      Beautiful Model and Query language
    • 7
      Easy to extend
    • 6
      Nice
    • 3
      Written in Go
    • 2
      Good for experimentation
    • 1
      Easy for monitoring

    Sign up to add or upvote prosMake informed product decisions

    Cons of collectd
    Cons of Ganglia
    Cons of Prometheus
      Be the first to leave a con
        Be the first to leave a con
        • 12
          Just for metrics
        • 6
          Bad UI
        • 6
          Needs monitoring to access metrics endpoints
        • 4
          Not easy to configure and use
        • 3
          Supports only active agents
        • 2
          Written in Go
        • 2
          TLS is quite difficult to understand
        • 2
          Requires multiple applications and tools
        • 1
          Single point of failure

        Sign up to add or upvote consMake informed product decisions

        - No public GitHub repository available -

        What is collectd?

        collectd gathers statistics about the system it is running on and stores this information. Those statistics can then be used to find current performance bottlenecks (i.e. performance analysis) and predict future system load (i.e. capacity planning). Or if you just want pretty graphs of your private server and are fed up with some homegrown solution you're at the right place, too.

        What is Ganglia?

        It is a scalable distributed monitoring system for high-performance computing systems such as clusters and Grids. It is based on a hierarchical design targeted at federations of clusters.

        What is Prometheus?

        Prometheus is a systems and service monitoring system. It collects metrics from configured targets at given intervals, evaluates rule expressions, displays the results, and can trigger alerts if some condition is observed to be true.

        Need advice about which tool to choose?Ask the StackShare community!

        Jobs that mention collectd, Ganglia, and Prometheus as a desired skillset
        Postman
        San Francisco, United States
        What companies use collectd?
        What companies use Ganglia?
        What companies use Prometheus?

        Sign up to get full access to all the companiesMake informed product decisions

        What tools integrate with collectd?
        What tools integrate with Ganglia?
        What tools integrate with Prometheus?

        Sign up to get full access to all the tool integrationsMake informed product decisions

        Blog Posts

        Dec 8 2020 at 5:50PM

        DigitalOcean

        GitHubMySQLPostgreSQL+11
        2
        2352
        May 21 2020 at 12:02AM

        Rancher Labs

        KubernetesAmazon EC2Grafana+12
        5
        1488
        PythonDockerKubernetes+14
        12
        2597
        Node.jsnpmKubernetes+6
        1
        1402
        GitHubSlackNGINX+15
        28
        20901
        What are some alternatives to collectd, Ganglia, and Prometheus?
        StatsD
        It is a network daemon that runs on the Node.js platform and listens for statistics, like counters and timers, sent over UDP or TCP and sends aggregates to one or more pluggable backend services (e.g., Graphite).
        Nagios
        Nagios is a host/service/network monitoring program written in C and released under the GNU General Public License.
        Fluentd
        Fluentd collects events from various data sources and writes them to files, RDBMS, NoSQL, IaaS, SaaS, Hadoop and so on. Fluentd helps you unify your logging infrastructure.
        Munin
        Munin is a networked resource monitoring tool that can help analyze resource trends and "what just happened to kill our performance?" problems. It is designed to be very plug and play. A default installation provides a lot of graphs with almost no work.
        Telegraf
        It is an agent for collecting, processing, aggregating, and writing metrics. Design goals are to have a minimal memory footprint with a plugin system so that developers in the community can easily add support for collecting metrics.
        See all alternatives