The Cloud Native Computing Foundation, a Linux Foundation organization, focusing on advancing cloud-native technology, has accepted Prometheus as its second project, after taking on the Kubernetes cloud orchestration software last year.
Originally developed by Soundcloud for internal use, Prometheus is a distributed monitoring tool based off of the ideas around Google’s Borgmon, which uses time series data and metrics to give administrators insights into how their operations are performing, particularly those based on containers and microservices.
“A modern monitoring and analysis toolkit like Prometheus is a key part of the new cloud-native paradigm,” said Alexis Richardson, the technical oversight committee chair for CNCF.
An Introduction to Prometheus
Prometheus is an open source project with a vibrant community of users, including Digital Ocean, Red Hat, and Weaveworks. Prometheus has more than 200 contributors and over 2,300 pull requests.
“Prometheus is community-driven with an active and growing group of developers from many companies contributing to the large project and Prometheus ecosystem. Being part of the CNCF gives users, especially new ones, a vote of confidence that Prometheus plays an important role in modern infrastructure stacks,” said Julius Volz, developer from the Prometheus project.
CNCF chose Prometheus as its second incubated project in part due to how Prometheus could help organizations working with cloud-native technologies or considering a shift to a cloud-based infrastructure.
“It fits the cloud-native profile,” Chris Aniszczyk, interim executive director of Cloud Native Computing Foundation said of Prometheus, noting that it follows Google’s distributed cloud-native architecture just as Kubernetes, also developed by Google, does. Not surprisingly, Prometheus integrates with Kubernetes to support service discovery and monitoring of dynamically scheduled services.
Under the Hood of Prometheus
Soundcloud developed Prometheus after migrating its operations over to Kubernetes. It is written in Go, with no external dependencies, as a static binary.
Prometheus allows users to query, log, and analyze data, but not in the way traditional analysis works. By identifying streams of data as key-value pairs, Prometheus aggregates and filters specified metrics while allowing for finely-grained querying to take place.
Prometheus has a “flexible query language allows querying and graphing this data. It features advanced metric types like summaries, building rates from totals over specified time spans or alerting on any expression,” software engineer Johannes ‘fish’ Ziemke told The New Stack.
The CNCF will host a Prometheus Day, November 8-9 in Seattle.