thanos - Highly available Prometheus setup with long term storage capabilities.

  •        246

Thanos is a set of components that can be composed into a highly available metric system with unlimited storage capacity. It can be added seamlessly on top of existing Prometheus deployments and leverages the Prometheus 2.0 storage format to cost-efficiently store historical metric data in any object storage while retaining fast query latencies. Additionally, it provides a global query view across all Prometheus installations and can merge data from Prometheus HA pairs on the fly.

https://github.com/improbable-eng/thanos

Tags
Implementation
License
Platform

   




Related Projects

cortex - A multitenant, horizontally scalable Prometheus as a Service

  •    Go

Cortex is a CNCF sandbox project used in several production systems including Weave Cloud, GrafanaCloud and FreshTracks.io. Cortex provides horizontally scalable, multi-tenant, long term storage for Prometheus metrics when used as a remote write destination, and a horizontally scalable, Prometheus-compatible query API.

mgob - MongoDB dockerized backup agent. Runs schedule backups with retention, S3 & SFTP upload, notifications, instrumentation with Prometheus and more.

  •    Go

MGOB is a MongoDB backup automation tool built with golang. Its features include Schedule backups, Local backups retention, Upload to S3, Google Cloud and lot more. It is distributed as an Alpine Docker image.

vulcan - Vulcan extends Prometheus adding horizontal scalability and long-term storage

  •    Go

Vulcan extends Prometheus adding horizontal scalability and long-term storage. Vulcan is highly experimental.

nginx-lua-prometheus - Prometheus metric library for Nginx written in Lua

  •    Lua

This is a Lua library that can be used with Nginx to keep track of metrics and expose them on a separate web page to be pulled by Prometheus. You need to install nginx package with lua support (libnginx-mod-http-lua on newer Debian versions, or nginx-extras on older ones). The library file, prometheus.lua, needs to be available in LUA_PATH. If this is the only Lua library you use, you can just point lua_package_path to the directory with this git repo checked out (see example below).

OpenEBS - Containerized Storage for Containers

  •    Go

OpenEBS is containerized block storage written in Go for cloud native and other environments w/ per container (or pod) QoS SLAs, tiering and replica policies across AZs and environments, and predictable and scalable performance.


Prometheus Digi Pres Workbench

  •    Java

The Prometheus Project is a semi-automated process for transferring data from physical carriers to preservation digital mass storage. It provides a number of web services which allows users on Windows based machines to image the physical media.

S3 - Node.js implementation of a server handling the Amazon S3 protocol

  •    Javascript

CloudServer (formerly S3 Server) is an open-source Amazon S3-compatible object storage server that is part of Zenko, Scality’s Open Source Multi-Cloud Data Controller.CloudServer provides a single AWS S3 API interface to access multiple backend data storage both on-premise or public in the cloud.

goofys - a high-performance, POSIX-ish Amazon S3 file system written in Go

  •    Go

Goofys allows you to mount an S3 bucket as a filey system. It's a Filey System instead of a File System because goofys strives for performance first and POSIX second. Particularly things that are difficult to support on S3 or would translate into more than one round-trip would either fail (random writes) or faked (no per-file permission). Goofys does not have a on disk data cache (checkout catfs), and consistency model is close-to-open.

promviz - Visualize the traffic of your clusters in realtime from Prometheus data

  •    Go

Promviz is an application that helps you visualize the traffic of your cluster from Prometheus data. Promviz: retrieves data from Prometheus servers, aggregates them and provides an API to get the graph data.

Minio - Open source object storage server compatible with Amazon S3 APIs

  •    Go

Minio is an object storage server, It is compatible with Amazon S3 cloud storage service. It is best suited for storing unstructured data such as photos, videos, log files, backups and container / VM images. Size of an object can range from a few KBs to a maximum of 5TB. Minio server is light enough to be bundled with the application stack, similar to NodeJS, Redis and MySQL.

node_exporter - Exporter for machine metrics

  •    Go

Prometheus exporter for hardware and OS metrics exposed by *NIX kernels, written in Go with pluggable metric collectors.The WMI exporter is recommended for Windows users.

Unsee - Alert dashboard for Prometheus Alertmanager

  •    Go

Alert dashboard for Prometheus Alertmanager. Alertmanager UI is useful for browsing alerts and managing silences, but it's lacking as a dashboard tool - unsee aims to fill this gap. Starting with 0.7.0 release it can also aggregate alerts from multiple Alertmanager instances, running either in HA mode or separate. Duplicated alerts are deduplicated so only unique alerts are displayed. Each alert is tagged with names of all Alertmanager instances it was found at and can be filtered based on those tags.

cloudserver - Zenko CloudServer, an open-source Node

  •    Javascript

CloudServer (formerly S3 Server) is an open-source Amazon S3-compatible object storage server that is part of Zenko, Scality’s Open Source Multi-Cloud Data Controller. CloudServer provides a single AWS S3 API interface to access multiple backend data storage both on-premise or public in the cloud.

chartmuseum - Helm Chart Repository with support for Amazon S3, Google Cloud Storage, Microsoft Azure Blob Storage, Alibaba Cloud OSS Storage, and Openstack Object Storage

  •    Go

ChartMuseum is an open-source Helm Chart Repository written in Go (Golang), with support for cloud storage backends, including Google Cloud Storage, Amazon S3, Microsoft Azure Blob Storage, Alibaba Cloud OSS Storage and Openstack Object Storage. Works as a valid Helm Chart Repository, and also provides an API for uploading new chart packages to storage etc.

pegasus

  •    C++

Pegasus is a distributed key-value storage system developed and maintained by Xiaomi Cloud Storage Team, with targets of high availability, high performance, strong consistency and ease of use. The original motivation of this project is to replace Apache HBase for users who only need simple key-value schema but require low latency and high availability. It is based on the open source rDSN framework, and uses modified RocksDB as underlying storage engine. The consensus algorithm it uses is PacificA. Unlike Bigtable/HBase, a non-layered replication archiecture is adopted in pegasus in which an external DFS like GFS/HDFS isn't the dependency of the persistent data, which benefits the availablity a lot. Meanwhile, availablity problems in HBase which result from Java GC are totally eliminated for the use of C++.

prometheus-operator - Prometheus Operator creates/configures/manages Prometheus clusters atop Kubernetes

  •    Go

Project status: beta Not all planned features are completed. The API, spec, status and other user facing objects may change, but in a backward compatible way.The Prometheus Operator for Kubernetes provides easy monitoring definitions for Kubernetes services and deployment and management of Prometheus instances.

prometheus - Kubernetes Setup for Prometheus and Grafana

  •    Smarty

This will create the namespace monitoring and bring up all components in there. See grafana.net for some example dashboards and plugins.

kubernetes-prometheus - Kubernetes Setup for Prometheus and Grafana

  •    Shell

This will create the namespace monitoring and bring up all components in there. See grafana.net for some example dashboards and plugins.

nodejs-storage - Node

  •    TypeScript

Node.js idiomatic client for Cloud Storage. Cloud Storage allows world-wide storage and retrieval of any amount of data at any time. You can use Google Cloud Storage for a range of scenarios including serving website content, storing data for archival and disaster recovery, or distributing large data objects to users via direct download.

OpenTelemetry makes robust, portable telemetry a built-in feature of cloud-native software

  •    Java

OpenTelemetry provides a single set of APIs, libraries, agents, and collector services to capture distributed traces and metrics from your application. You can analyze them using Prometheus, Jaeger, and other observability tools.