Skip to content

Robusta Installation and Configuration

Robusta Homepage

Image Source

Install Robusta

Creating the config file

  1. To configure robusta, the Robusta CLI is required. Choose one of the installation methods below.

Installation Method: PIP

pip install -U robusta-cli --no-cache
  • Python 3.7 or higher is required

Installation Method: Docker

  1. Generate a Robusta configuration.
    • This will setup Slack and other integrations.

If you’d like to send Robusta messages to additional destinations (Discord, Telegram etc.). See Sink configuration.

 robusta gen-config
  1. Save generated_values.yaml, somewhere safe. This is your Helm values.yaml file.

Sending alerts to Robusta

General Instructions

To configure Prometheus to send alerts to Robusta, add two settings to AlertManager:

  1. A webhook receiver for Robusta
  2. A route for the webhook receiver you added

Below is an example AlertManager configuration. Depending on your setup, the exact file to edit may vary. (See below.)

AlertManager config for sending alerts to Robusta:

receivers:

  - name: 'robusta'
    webhook_configs:
      # the following line assumes that Robusta was installed in the `default` namespace.
      # if you installed Robusta in a different namespace, replace `default` with the correct namespace
      # likewise, if you named your Helm release ``robert`` then replace ``robusta`` with ``robert``
      - url: 'http://robusta-runner.default.svc.cluster.local/api/alerts'
        send_resolved: true

route:
  routes:

    - receiver: 'robusta'
      matchers:
        - severity =~ "info|warn|error|critical"
      repeat_interval: 4h
      continue: true

Common Mistakes

  1. Make sure the Robusta route is the first route defined. If it isn’t the first route, it might not receive alerts. When a route is matched, the alert will not be sent to following routes, unless the route is configured with continue: true.

  2. Tweak the settings accordingly if:

    • You installed Robusta in a namespace other than default
    • You named Robusta’s Helm release something other than robusta

After you configure AlertManager, you can test it works properly, by creating a demo alert:

robusta demo-alert

Within a few minutes, you should see the demo alert in the Robusta UI, Slack, and any other sinks you configured.

Why do I still see a banner in the Robusta UI that “Alerts won’t show up”?

The notification is displayed until the first alert is sent from AlertManager to Robusta.

Sinks

Send alerts to Mattermost:

Alert Enrichment

Configure automations that enrich and remediate Prometheus alerts.

Robusta comes with many Prometheus enrichments that work out of the box.

Enriching Alerts

SSL Verification

By default, Robusta does not verify the SSL certificate of the Prometheus server. To enable SSL verification, add the following to generated_values.yaml:

runner:
  additional_env_vars:

  - name: PROMETHEUS_SSL_ENABLED
    value: true

To add a custom CA certificate, add the following as well:

runner:
  certificate: "<YOUR BASE-64 ENCODED DATA>" # base64-encoded certificate value

Additional Resources:

https://github.com/prometheus-operator/prometheus-operator/blob/main/Documentation/user-guides/alerting.mdmanaging-alertmanager-configuration


Last update : 7 mai 2023
Created : 7 mai 2023