Upgrade prom and alert manager to 2.7.1 and 0.16.1

**What**
- Removes the `alert` label in the scale-up alert
- Updates the annotaitons to use the `function_name` label instead of
the `instance` label that was removed.
- Per prometheus/prometheus#4836 and the related mailing list discussion
https://groups.google.com/d/msg/prometheus-users/7Ul6ngc7Ogs/j_YDszV5BwAJ
the alert value should not be included in the alert labels otherwise
each calculation of the alert is treated like a new alert and then the
use of `for 5s` will not behave as expected.
- Ports the resoltuion openfaas/faas-netes#372

Signed-off-by: Lucas Roesler <roesler.lucas@gmail.com>
This commit is contained in:
Lucas Roesler 2019-02-21 10:01:40 +01:00 committed by Alex Ellis
parent f2ac7b906c
commit 3bcc10a07e
3 changed files with 40 additions and 43 deletions

View File

@ -34,7 +34,7 @@ services:
window: 380s
placement:
constraints:
- 'node.platform.os == linux'
- "node.platform.os == linux"
secrets:
- basic-auth-user
- basic-auth-password
@ -55,8 +55,8 @@ services:
deploy:
placement:
constraints:
- 'node.role == manager'
- 'node.platform.os == linux'
- "node.role == manager"
- "node.platform.os == linux"
resources:
# limits: # Enable if you want to limit memory usage
# memory: 100M
@ -89,7 +89,7 @@ services:
memory: 50M
placement:
constraints:
- 'node.platform.os == linux'
- "node.platform.os == linux"
queue-worker:
image: openfaas/queue-worker:0.7.0
@ -113,7 +113,7 @@ services:
window: 380s
placement:
constraints:
- 'node.platform.os == linux'
- "node.platform.os == linux"
secrets:
- basic-auth-user
- basic-auth-password
@ -132,7 +132,7 @@ services:
- source: prometheus_rules
target: /etc/prometheus/alert.rules.yml
command:
- '--config.file=/etc/prometheus/prometheus.yml'
- "--config.file=/etc/prometheus/prometheus.yml"
# - '-storage.local.path=/prometheus'
ports:
- 9090:9090
@ -141,8 +141,8 @@ services:
deploy:
placement:
constraints:
- 'node.role == manager'
- 'node.platform.os == linux'
- "node.role == manager"
- "node.platform.os == linux"
resources:
limits:
memory: 500M
@ -150,12 +150,12 @@ services:
memory: 200M
alertmanager:
image: prom/alertmanager:v0.15.0
image: prom/alertmanager:v0.16.1
environment:
no_proxy: "gateway"
command:
- '--config.file=/alertmanager.yml'
- '--storage.path=/alertmanager'
- "--config.file=/alertmanager.yml"
- "--storage.path=/alertmanager"
networks:
- functions
# Uncomment the following port mapping if you wish to expose the Prometheus
@ -170,15 +170,14 @@ services:
memory: 20M
placement:
constraints:
- 'node.role == manager'
- 'node.platform.os == linux'
- "node.role == manager"
- "node.platform.os == linux"
configs:
- source: alertmanager_config
target: /alertmanager.yml
secrets:
- basic-auth-password
configs:
prometheus_config:
file: ./prometheus/prometheus.yml

View File

@ -9,7 +9,6 @@ groups:
labels:
service: gateway
severity: major
value: '{{$value}}'
annotations:
description: High invocation total on {{ $labels.instance }}
summary: High invocation total on {{ $labels.instance }}
description: High invocation total on {{ $labels.function_name }}
summary: High invocation total on {{ $labels.function_name }}

View File

@ -7,10 +7,9 @@ ALERT APIHighInvocationRate
LABELS {
service = "gateway",
severity = "major",
value = "{{$value}}"
}
ANNOTATIONS {
summary = "High invocation total on {{ $labels.instance }}",
description = "High invocation total on {{ $labels.instance }}"
summary = "High invocation total on {{ $labels.function_name }}",
description = "High invocation total on {{ $labels.function_name }}"
}