Skip to content

Commit

Permalink
Bump MetalLB
Browse files Browse the repository at this point in the history
This commit bumps MetalLB:
from: 133177a7376fed9954c4bef7f77848e3d3b08ef1
Add log for L2 speaker when node is not usable (#2538) (2024-10-07)

to:  2e8ad2dba31bc3cd3d416b08d9e8df1f40a50a50
apply Prometheus best practices to existing alerts (2024-10-11)

Signed-off-by: github-actions[bot] <[email protected]>
  • Loading branch information
web-flow authored and fedepaol committed Oct 14, 2024
1 parent 9d45f66 commit 6abf1c6
Show file tree
Hide file tree
Showing 8 changed files with 60 additions and 24 deletions.
16 changes: 14 additions & 2 deletions bin/metallb-operator.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -552,6 +552,17 @@ spec:
description: To set if we want to disable MP BGP that will separate
IPv4 and IPv6 route exchanges into distinct BGP sessions.
type: boolean
dynamicASN:
description: |-
DynamicASN detects the AS number to use for the remote end of the session
without explicitly setting it via the ASN field. Limited to:
internal - if the neighbor's ASN is different than MyASN connection is denied.
external - if the neighbor's ASN is the same as MyASN the connection is denied.
ASN and DynamicASN are mutually exclusive and one of them must be specified.
enum:
- internal
- external
type: string
ebgpMultiHop:
description: To set if the BGPPeer is multi-hops away. Needed for
FRR mode only.
Expand Down Expand Up @@ -654,7 +665,9 @@ spec:
type: object
x-kubernetes-map-type: atomic
peerASN:
description: AS number to expect from the remote end of the session.
description: |-
AS number to expect from the remote end of the session.
ASN and DynamicASN are mutually exclusive and one of them must be specified.
format: int32
maximum: 4294967295
minimum: 0
Expand All @@ -681,7 +694,6 @@ spec:
type: string
required:
- myASN
- peerASN
- peerAddress
type: object
status:
Expand Down
6 changes: 3 additions & 3 deletions bindata/deployment/helm/metallb/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -79,17 +79,17 @@ Kubernetes: `>= 1.19.0-0`
| prometheus.podMonitor.relabelings | list | `[]` | |
| prometheus.prometheusRule.additionalLabels | object | `{}` | |
| prometheus.prometheusRule.addressPoolExhausted.enabled | bool | `true` | |
| prometheus.prometheusRule.addressPoolExhausted.labels.severity | string | `"alert"` | |
| prometheus.prometheusRule.addressPoolExhausted.labels.severity | string | `"critical"` | |
| prometheus.prometheusRule.addressPoolUsage.enabled | bool | `true` | |
| prometheus.prometheusRule.addressPoolUsage.thresholds[0].labels.severity | string | `"warning"` | |
| prometheus.prometheusRule.addressPoolUsage.thresholds[0].percent | int | `75` | |
| prometheus.prometheusRule.addressPoolUsage.thresholds[1].labels.severity | string | `"warning"` | |
| prometheus.prometheusRule.addressPoolUsage.thresholds[1].percent | int | `85` | |
| prometheus.prometheusRule.addressPoolUsage.thresholds[2].labels.severity | string | `"alert"` | |
| prometheus.prometheusRule.addressPoolUsage.thresholds[2].labels.severity | string | `"critical"` | |
| prometheus.prometheusRule.addressPoolUsage.thresholds[2].percent | int | `95` | |
| prometheus.prometheusRule.annotations | object | `{}` | |
| prometheus.prometheusRule.bgpSessionDown.enabled | bool | `true` | |
| prometheus.prometheusRule.bgpSessionDown.labels.severity | string | `"alert"` | |
| prometheus.prometheusRule.bgpSessionDown.labels.severity | string | `"critical"` | |
| prometheus.prometheusRule.configNotLoaded.enabled | bool | `true` | |
| prometheus.prometheusRule.configNotLoaded.labels.severity | string | `"warning"` | |
| prometheus.prometheusRule.enabled | bool | `false` | |
Expand Down
20 changes: 10 additions & 10 deletions bindata/deployment/helm/metallb/templates/prometheusrules.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -19,8 +19,8 @@ spec:
{{- if .Values.prometheus.prometheusRule.staleConfig.enabled }}
- alert: MetalLBStaleConfig
annotations:
message: {{`'{{ $labels.job }} - MetalLB {{ $labels.container }} on {{ $labels.pod
}} has a stale config for > 1 minute'`}}
summary: {{`'Stale config on {{ $labels.pod }}'`}}
description: {{`'{{ $labels.job }} - MetalLB {{ $labels.container }} on {{ $labels.pod }} has a stale config for > 1 minute'`}}
expr: metallb_k8s_client_config_stale_bool{job=~"{{ template "metallb.fullname" . }}.*"} == 1
for: 1m
{{- with .Values.prometheus.prometheusRule.staleConfig.labels }}
Expand All @@ -31,8 +31,8 @@ spec:
{{- if .Values.prometheus.prometheusRule.configNotLoaded.enabled }}
- alert: MetalLBConfigNotLoaded
annotations:
message: {{`'{{ $labels.job }} - MetalLB {{ $labels.container }} on {{ $labels.pod
}} has not loaded for > 1 minute'`}}
summary: {{`'Config on {{ $labels.pod }} has not been loaded'`}}
description: {{`'{{ $labels.job }} - MetalLB {{ $labels.container }} on {{ $labels.pod }} has not loaded for > 1 minute'`}}
expr: metallb_k8s_client_config_loaded_bool{job=~"{{ template "metallb.fullname" . }}.*"} == 0
for: 1m
{{- with .Values.prometheus.prometheusRule.configNotLoaded.labels }}
Expand All @@ -43,8 +43,8 @@ spec:
{{- if .Values.prometheus.prometheusRule.addressPoolExhausted.enabled }}
- alert: MetalLBAddressPoolExhausted
annotations:
message: {{`'{{ $labels.job }} - MetalLB {{ $labels.container }} on {{ $labels.pod
}} has exhausted address pool {{ $labels.pool }} for > 1 minute'`}}
summary: {{`'Exhausted address pool on {{ $labels.pod }}'`}}
description: {{`'{{ $labels.job }} - MetalLB {{ $labels.container }} on {{ $labels.pod }} has exhausted address pool {{ $labels.pool }} for > 1 minute'`}}
expr: metallb_allocator_addresses_in_use_total >= on(pool) metallb_allocator_addresses_total
for: 1m
{{- with .Values.prometheus.prometheusRule.addressPoolExhausted.labels }}
Expand All @@ -57,8 +57,8 @@ spec:
{{- range .Values.prometheus.prometheusRule.addressPoolUsage.thresholds }}
- alert: MetalLBAddressPoolUsage{{ .percent }}Percent
annotations:
message: {{`'{{ $labels.job }} - MetalLB {{ $labels.container }} on {{ $labels.pod
}} has address pool {{ $labels.pool }} past `}}{{ .percent }}{{`% usage for > 1 minute'`}}
summary: {{`'Exhausted address pool on {{ $labels.pod }}'`}}
message: {{`'{{ $labels.job }} - MetalLB {{ $labels.container }} on {{ $labels.pod }} has address pool {{ $labels.pool }} past `}}{{ .percent }}{{`% usage for > 1 minute'`}}
expr: ( metallb_allocator_addresses_in_use_total / on(pool) metallb_allocator_addresses_total ) * 100 > {{ .percent }}
{{- with .labels }}
labels:
Expand All @@ -69,8 +69,8 @@ spec:
{{- if .Values.prometheus.prometheusRule.bgpSessionDown.enabled }}
- alert: MetalLBBGPSessionDown
annotations:
message: {{`'{{ $labels.job }} - MetalLB {{ $labels.container }} on {{ $labels.pod
}} has BGP session {{ $labels.peer }} down for > 1 minute'`}}
summary: {{`'BGP session down on {{ $labels.pod }}'`}}
message: {{`'{{ $labels.job }} - MetalLB {{ $labels.container }} on {{ $labels.pod }} has BGP session {{ $labels.peer }} down for > 1 minute'`}}
expr: metallb_bgp_session_up{job=~"{{ template "metallb.fullname" . }}.*"} == 0
for: 1m
{{- with .Values.prometheus.prometheusRule.bgpSessionDown.labels }}
Expand Down
6 changes: 3 additions & 3 deletions bindata/deployment/helm/metallb/values.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -165,7 +165,7 @@ prometheus:
addressPoolExhausted:
enabled: true
labels:
severity: alert
severity: critical

addressPoolUsage:
enabled: true
Expand All @@ -178,13 +178,13 @@ prometheus:
severity: warning
- percent: 95
labels:
severity: alert
severity: critical

# MetalLBBGPSessionDown
bgpSessionDown:
enabled: true
labels:
severity: alert
severity: critical

extraAlerts: []

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -432,7 +432,7 @@ metadata:
categories: Networking
certified: "false"
containerImage: quay.io/metallb/metallb-operator
createdAt: "2024-10-08T09:25:58Z"
createdAt: "2024-10-14T05:06:10Z"
description: An operator for deploying MetalLB on a kubernetes cluster.
operators.operatorframework.io/builder: operator-sdk-v1.34.1
operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
Expand Down
16 changes: 14 additions & 2 deletions bundle/manifests/metallb.io_bgppeers.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -208,6 +208,17 @@ spec:
description: To set if we want to disable MP BGP that will separate
IPv4 and IPv6 route exchanges into distinct BGP sessions.
type: boolean
dynamicASN:
description: |-
DynamicASN detects the AS number to use for the remote end of the session
without explicitly setting it via the ASN field. Limited to:
internal - if the neighbor's ASN is different than MyASN connection is denied.
external - if the neighbor's ASN is the same as MyASN the connection is denied.
ASN and DynamicASN are mutually exclusive and one of them must be specified.
enum:
- internal
- external
type: string
ebgpMultiHop:
description: To set if the BGPPeer is multi-hops away. Needed for
FRR mode only.
Expand Down Expand Up @@ -310,7 +321,9 @@ spec:
type: object
x-kubernetes-map-type: atomic
peerASN:
description: AS number to expect from the remote end of the session.
description: |-
AS number to expect from the remote end of the session.
ASN and DynamicASN are mutually exclusive and one of them must be specified.
format: int32
maximum: 4294967295
minimum: 0
Expand All @@ -337,7 +350,6 @@ spec:
type: string
required:
- myASN
- peerASN
- peerAddress
type: object
status:
Expand Down
16 changes: 14 additions & 2 deletions config/crd/bases/metallb.io_bgppeers.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -195,6 +195,17 @@ spec:
description: To set if we want to disable MP BGP that will separate
IPv4 and IPv6 route exchanges into distinct BGP sessions.
type: boolean
dynamicASN:
description: |-
DynamicASN detects the AS number to use for the remote end of the session
without explicitly setting it via the ASN field. Limited to:
internal - if the neighbor's ASN is different than MyASN connection is denied.
external - if the neighbor's ASN is the same as MyASN the connection is denied.
ASN and DynamicASN are mutually exclusive and one of them must be specified.
enum:
- internal
- external
type: string
ebgpMultiHop:
description: To set if the BGPPeer is multi-hops away. Needed for
FRR mode only.
Expand Down Expand Up @@ -297,7 +308,9 @@ spec:
type: object
x-kubernetes-map-type: atomic
peerASN:
description: AS number to expect from the remote end of the session.
description: |-
AS number to expect from the remote end of the session.
ASN and DynamicASN are mutually exclusive and one of them must be specified.
format: int32
maximum: 4294967295
minimum: 0
Expand All @@ -324,7 +337,6 @@ spec:
type: string
required:
- myASN
- peerASN
- peerAddress
type: object
status:
Expand Down
2 changes: 1 addition & 1 deletion hack/metallb_ref.txt
Original file line number Diff line number Diff line change
@@ -1 +1 @@
133177a7376fed9954c4bef7f77848e3d3b08ef1
2e8ad2dba31bc3cd3d416b08d9e8df1f40a50a50

0 comments on commit 6abf1c6

Please sign in to comment.