Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Runbook: ReplicationLag

Source of truth: tools/observability/alerts/angarabase_alerts.yaml. Backed by: RM-0.6.3.8 S7.

Что означает

Задержка реплики (angarabase_replication_lag_bytes или эквивалент в seconds) > 10 секунд. Реплика отстаёт от primary; чтения с реплики возвращают устаревшие данные.

Severity

warning. При > 60 секунд риск потери данных при failover.

Initial response

  1. Grafana Overview v2 → row “Replication”.
  2. На primary: проверить slot status / sender backpressure.
  3. На реплике: проверить apply rate / disk space / network bandwidth.

Diagnostics

# Primary
curl -sf http://primary:9898/metrics | rg replication

# Replica
curl -sf http://replica:9898/metrics | rg replication

# Application lag в секундах
psql -h replica -c "SELECT now() - pg_last_xact_replay_timestamp() AS apply_lag;"

См. также replication-v2.md §Diagnostics.

Mitigation

ПричинаДействие
СетьПроверить bandwidth, RTT, packet loss между primary и replica
Реплика медленнее primaryUpgrade hardware (SSD, CPU, RAM) на replica
Большой slot backlogОсвободить (рискованно — drop неактивный slot)
Apply bottleneck (single-threaded)См. replication-v2.md §Tuning
Конкурент GC на репликеСнизить query load на replica

Escalation

Если lag > 60 секунд и растёт > 15 минут — оценить риск split-brain при failover; подготовить план восстановления.

Связанные