/tobs

tobs - The Observability Stack for Kubernetes. Easy install of a full observability stack into a k8s cluster with a CLI tool or Helm charts.

Primary LanguageGoApache License 2.0Apache-2.0

tobs - The Observability Stack for Kubernetes

Go Report Card GoDoc

Tobs is a tool that aims to make it as easy as possible to install a full observability stack into a Kubernetes cluster. Currently this stack includes:

  • Prometheus to collect metrics
  • Grafana to visualize what's going on
  • Promscale (design doc) to store metrics for the long-term and allow analysis with both PromQL and SQL.
  • TimescaleDB for long term storage of metrics and provides ability to query metrics data using SQL.
  • Kube-State-Metrics to get metrics from kubernetes api-server.
  • Promlens tool to build and analyse promql queries with ease.
  • Node-Exporter to export metrics from the nodes.

We plan to expand this stack over time and welcome contributions.

Tobs provides a CLI tool to make deployment and operations easier. We also provide Helm charts that can be used directly or as sub-charts for other projects.

See a demo of tobs in action by clicking the video below:

🔥 Quick start

Dependencies: Helm 3

Using the tobs CLI tool

The CLI tool provides the most seamless experience for interacting with tobs.

Getting started with the CLI tool is a two-step process: First you install the CLI tool locally, then you use the CLI tool to install the tobs stack into your Kubernetes cluster.

Installing the CLI tool

To download and install tobs, run the following in your terminal, then follow the on-screen instructions.

curl --proto '=https' --tlsv1.2 -sSLf  https://tsdb.co/install-tobs-sh |sh

Alternatively, you can download the CLI directly via our releases page

Using the tobs CLI tool to deploy the stack into your Kubernetes cluster

After setting up tobs run the following to install the tobs helm charts into your Kubernetes cluster

tobs install

This will deploy all of the tobs components into your cluster and provide instructions as to next steps.

Getting started by viewing your metrics in Grafana

To see your Grafana dashboards after installation run

tobs grafana change-password <new_password>
tobs grafana port-forward

Then, point your browser to http://127.0.0.1:8080/ and login with the admin username.

More details about the CLI tool can be found here

Configuring the stack

All configuration for all components happens through the helm values.yml file. You can view the self-documenting default values.yaml in the repo. We also have additional documentation about individual configuration settings in our Helm chart docs.

To modify the settings, first create a values.yaml file:

tobs helm show-values > values.yaml

Then modify the values.yaml file using your favorite editor. Finally, deploy with the new settings using:

tobs install -f values.yaml

🛠Alternative deployment methods

Using the Helm charts without the CLI tool

Users sometimes want to use our Helm charts as sub-charts for other project or integrate them into their infrastructure without using our CLI tool. This is a supported use-case and instructions on using the Helm charts can be found here.

✏️ Contributing

We welcome contributions to tobs, which is licensed and released under the open-source Apache License, Version 2. The same Contributor's Agreement applies as in TimescaleDB; please sign the Contributor License Agreement (CLA) if you're a new contributor.