rancher / dashboard

The Rancher UI
https://rancher.com
Apache License 2.0
460 stars 261 forks source link

[UI] [Monitoring V2] - a new tab for installing rancher-alerting-drivers #2623

Open jiaqiluo opened 3 years ago

jiaqiluo commented 3 years ago

NOTE: This issue is moved to v2.6, and its context will be updated. There is another UI issue for 2.5.8

Goal: We need to add a new tab to the existing rancher-monitoring installation UI to allow users to install rancher-alerting-drivers which will be a sub-chart under the main chart rancher-monitoring. Here is the parent issue for this new feature.

Requirements

Here is how the monitoring installing/editing page looks like today:

Screen Shot 2021-04-01 at 3 17 46 PM

We expect to add one more tab to the left bar called Alerting Driver. the first checkbox on the page should be Deploy Alerting-driver

If Enable MS Teams is checked:

Header / Label Name k8s YAML Description Input Default
Connector prom2teams.connector Connector URL string <empty>
Connectors prom2teams.connectors A map where the keys are the connector names and the values are the connector webhook urls A map of {connector-name: value} {}
Group Alert By prom2teams.group_alerts_by A label to group all alerts <empty> or one of ("name", "description", "instance", "severity", "status", "summary", "fingerprint", "runbook_url") <empty>
Template path prom2teams.templatepath Custom Template path string /opt/prom2teams/helmconfig/teams.j2
Config Path prom2teams.config Custom config path string /opt/prom2teams/helmconfig/config.ini
Log Level prom2teams.loglevel Log level one of (DEBUG, INFO, WARNING, ERROR, CRITICAL) INFO

If Enable SMS is checked:

Header / Label Name k8s YAML Input Default
Region Id sachet.providers.aliyun.region_id string <empty>
Access Key sachet.providers.aliyun.access_key string <empty>
Access Key Secret sachet.providers.aliyun.access_key_secret string <empty>
Sign Name sachet.providers.aliyun.sign_name string <empty>
Template Code sachet.providers.aliyun.template_code string <empty>
Template Param Key sachet.providers.aliyun.template_param_key string <empty>

All providers are saved under sachet.providers as a dictionary example:

providers:
  aliyun:
    region_id: cn-hangzhou
    access_key: access_key
    access_key_secret: access_key_secret
    sign_name: sign_name
    template_code: template_code
    template_param_key: text
Header / Label Name Input Default
Receiver Name string <empty>
Provider Name string aliyun
To list of string <empty>
From string <empty>

all receivers are saved under sachet.receivers as a list example:

receivers:
  - name: 'team-sms'
    provider: 'aliyun'
    to:
      - '+919742033616'
    from: '08039591643'
  - name: 'bakcup-sms'
    provider: 'aliyun'
    to:
      - '+919742033616'
      - '+919742033616'
    from: '08039591643'

All the configuration will be saved under the alerting-driver section in monitoring's value.yaml. The final version of this section will look like this

cbron commented 3 years ago

@gaktive as jack noted above this has been moved out of 2.5.8 in favor of a smaller one. This is the full long term solution, but the issue itself needs to be tweaked.

catherineluse commented 2 years ago

After https://github.com/rancher/dashboard/issues/5754 is merged, it should be possible to configure all the monitoring chart options in questions.yml, which could be better in the long run as the form could update along with the chart.

catherineluse commented 2 years ago

Note: As of 2.6.7, the alerting drivers Helm chart does not support project monitoring yet: https://github.com/rancher/rancher/issues/38260