Skip to content

feat: websockets dependsOn patroni

Steve Xuereb requested to merge feat/websocket-depend-on-patroni into master

What

Have the websocket service depend on the patroni

inhibit rules created
- equal:
  - env
  - environment
  - pager
  source_matchers:
  - component="rails_primary_sql"
  - type="patroni"
  target_matchers:
  - component="loadbalancer"
  - type="websockets"
- equal:
  - env
  - environment
  - pager
  source_matchers:
  - component="rails_replica_sql"
  - type="patroni"
  target_matchers:
  - component="loadbalancer"
  - type="websockets"
- equal:
  - env
  - environment
  - pager
  source_matchers:
  - component="rails_primary_sql"
  - type="patroni"
  target_matchers:
  - component="puma"
  - type="websockets"
- equal:
  - env
  - environment
  - pager
  source_matchers:
  - component="rails_replica_sql"
  - type="patroni"
  target_matchers:
  - component="puma"
  - type="websockets"
- equal:
  - env
  - environment
  - pager
  source_matchers:
  - component="rails_primary_sql"
  - type="patroni"
  target_matchers:
  - component="workhorse"
  - type="websockets"
- equal:
  - env
  - environment
  - pager
  source_matchers:
  - component="rails_replica_sql"
  - type="patroni"
  target_matchers:
  - component="workhorse"
  - type="websockets"

Why

On 2022-01-31 and 2022-03-14 we had service degradation on patroni. The websocket service ended up firing an alert because of this as well since websocket has a hard dependency on patroni.

example of alerts

Reference: https://gitlab.com/gitlab-com/gl-infra/reliability/-/issues/16031 Signed-off-by: Steve Azzopardi sazzopardi@gitlab.com

Edited by Steve Xuereb

Merge request reports