Konrad Kowalski (rootsher)Principal Platform & Reliability Architect010110010110100111011111010001100110110111011111

Reliability Engineering

wpisy (16)

  1. Recovery od podstaw: rollback, PITR i powrót po awarii5/5

    Po recovery: zielone wykresy to nie koniec

    Recovery kończy wpływ incydentu, ale nie kończy pracy. Trzeba odtworzyć przebieg zdarzeń, poprawić runbook i sprawdzić, czy założone RPO oraz RTO były…

  2. Recovery od podstaw: rollback, PITR i powrót po awarii4/5

    PITR jednego tenanta: odtworzenie jednej bazy

    Prosty przykład PITR w systemie multi-tenant: jeden tenant ma osobną bazę, więc odtwarzamy tylko tę bazę i nie cofamy całej produkcji.

  3. Testowanie przez warstwy: od kodu do infrastruktury7/9

    Migration tests i data tests: bezpieczna zmiana stanu

    Migration test sprawdza zmianę schematu i danych, a data test pilnuje kompatybilności stanu. To warstwa, która decyduje, czy wydanie da się bezpiecznie cofnąć.

  4. Deployment strategies: po co w ogóle są6/6

    Shadow traffic: sprawdzenie bez odpowiedzi dla użytkownika

    Shadow traffic wysyła kopię requestu do nowej wersji, ale odpowiedź użytkownik dostaje ze starej. To testuje zachowanie bez przejęcia ruchu.

  5. Recovery od podstaw: rollback, PITR i powrót po awarii3/5

    PITR całego serwera: restore to dopiero początek

    PITR całego serwera nie kończy się na odtworzeniu bazy. Trzeba jeszcze zamrozić zapisy, sprawdzić stan, przepiąć ruch i świadomie porzucić albo przenieść dane…

  6. Deployment strategies: po co w ogóle są5/6

    Feature flags: deploy to nie release

    Feature flag pozwala wdrożyć kod bez włączania zachowania. To skraca rollback funkcji, ale tworzy dług, jeśli flag się nie sprząta.

  7. Testowanie przez warstwy: od kodu do infrastruktury6/9

    Regression tests i smoke tests: bramka przed wydaniem

    Regression test zamyka błąd, który już raz przeszedł, a smoke test sprawdza, czy wersja w ogóle nadaje się do dalszego sprawdzania.

  8. Deployment strategies: po co w ogóle są4/6

    Targeted rollout: A/B testy, ringi i segmenty

    Canary dzieli ruch procentem. Targeted rollout wybiera konkretnych użytkowników, ringi albo segmenty, więc odpowiada na inne pytanie.

  9. Deployment strategies: po co w ogóle są3/6

    Canary deployment: nowa wersja dostaje część ruchu

    Canary ogranicza blast radius przez mały procent prawdziwego ruchu. Bez metryk jest tylko wolniejszym rolloutem.

  10. Deployment strategies: po co w ogóle są2/6

    Blue-green deployment: dwie wersje, jeden ruch

    Blue-green rozdziela wdrożenie od przełączenia ruchu. Rollback może być szybki, ale dane nadal nie cofają się razem z routingiem.