사건 관리
(섹션: 기술 및 인프라)
간략한 요약
사고 관리는 사용자 가치를 신속하게 복원하고 비즈니스 피해를 최소화하는 반복 가능한 프로세스입니 지원-명확한 역할 (Incident Manager, Tech Lead, Comms), SLO 게이트, 에스컬레이션, ChatOps 프로세스, 준비된 runabooks 및 측정 가능한 액션 항목을 사용한 "무해한" 사후 분석.
1) 목표와 원칙
속도 및 안전성: 빠른 진단 → 안전한 안정화 → 지속적인 복구.
단독 소유자-할당 된 사건 관리자 (IM) 가 프로세스 결정을 내립니다.
제품으로서의 커뮤니케이션: 이해 관계자 및 사용자를위한 예측 가능한 업데
데이터> 의견: SLO/metrics/trails/log는 진실의 원천입니다.
Blameless: 개인적인 고발이없는 이유에 대한 분석; 시스템 개선에 중점을 둡니다.
2) 사건 분류 (심각도/영향/긴급 성)
심각도 (예):- SEV1 (중요): 수익/TTW/결제에 심각한 피해, 사용자 또는 전체 지역의> 20%; SLA 손상/PII 위협.
- SEV2 (높음): 키 흐름의 부분 저하 (게임 예금/베팅/출시), 영향 5-20%.
- SEV3 (중간): 2 차 서비스가 눈에 띄게 저하되면 바이 패스가 있습니다.
- SEV4 (낮음): 사소하고 제한된 효과, SLO/SLA에 영향을 미치지 않습니다.
영향: 영향을받는 사람 (모든/지역/테넌트/채널). 긴급 성: 저하율 (오류 예산에서 빠른 연소/느린 연소).
3) 사고 수명주기
1. 탐지-경고/SLO/합성/보고서의 신호.
2. 인정-통화 중 수신을 확인하고 IM을 할당하십시오.
3. 심사-SEV/영향 점수, 가설 수집, 전쟁 실 발견.
4. Mitigate-안정화 (롤백/경로 전환/phicheflags/스케일링).
5. 통신-정기적 인 상태 업데이트 (내부/외부).
6. 복구-전체 SLO/비즈니스 메트릭 복구.
7. 닫기-연대기 기록, 인공물 수집, PIR (RCA + 액션 항목).
4) 역할 및 책임 (RACI)
인시던트 관리자 (IM) - 프로세스 소유자, 역할 할을 할당하고 시간을 모니터링하며 프로세스 결정 (R) 을 수행합니다.
TL (Technical Lead) -진단/가설/수정, 좌표 엔지니어 (A/R) 를 수행합니다.
커뮤니케이션 (Comms) - 상태 업데이트, 지원/비즈니스/PR과의 연결, 상태 페이지 (R).
스크라이브 - 프로토콜 (타임 라인, 결정, 링크, 아티팩트) (R).
이해 관계자-제품/지불/게임 제공 업체/보안 (C/I).
SEV1 당 최소: IM + TL + Comms + Scribe. SEV2의 역할을 결합 할 수 있습니다.
5) 전쟁 실 온라인 ChatOps
개별 채널: '# insument-warroom- <id>' (작업), '# success-State' (업데이트 만).
템플릿 명령: '/사건 시작 ', '/상태 업데이트', '/호출 <소유자> ', '/롤백', '/동결 ', '/스케일 + N'.
봇은 최근 릴리스, 대시 보드, 관련 경고, 추적 예제, 종속성 체계 등 컨텍스트를 끌어냅니다.
의사 소통 규칙: 간단히 말해서 한 명의 화자 (TL), IM이 적당합니다.
6) 방아쇠와 문
SLO 게이트: 빠른/느린 연소, 결제 변환 감소, TTW p95> 임계 값, p99 API RAM, 결제 대기열이 발사됩니다.
자동 동작: 카나리아 중지, 롤백, 저하 모드 활성화 (기능 제한), 고주파 합성 가능.
동결: 안정화 및 PIR 이전의 모든 릴리스/풋 마이그레이션.
7) 전형적인 시나리오 (runabook 패턴)
A) 지불: PSP의 타임 아웃/오류 증가
1. 결제 루프 릴리스 홍보 및 동결 중지
2. PSP 경로를 대기 경로로 전환하고 정책별로 타임 아웃/리트레이를 높이십시오.
3. 불완전한 트랜잭션의 조정, dempotent 키와의 반복.
4. Comms 커뮤니케이션 → 지원: 예비 작업을 수행합니까? ETA.
B) 출시 후 API p99 JP와 5xx
1. 롤백 (청록색/카나리아 → 안정).
2. 캐시 히트, 대기열 깊이, 데이터베이스/게임 제공 업체 핫스팟을 확인하십시오.
3. 기능 플래그를 통해 무거운 기능을 제한하는 임시 스케일링
C) 게임 제공 업체를 사용할 수 없
1. 사용 가능한 스튜디오/게임으로 트래픽을 전환하고 상태 배너를 표시하십시오.
2. 30-60 초마다 합성 검사를 켜십시오.
3. 보상/보너스 (정책 별) 에 동의-PIR에 추가하십시오.
D) 누출/의심되는 PII
1. 구성 요소 격리, 키/토큰 취소, 로그 수집 (WORM).
2. 법적 커뮤니케이션/규제 조정.
3. 사고 후 조치: 비밀 교체, 마스킹, 액세스.
8) 커뮤니케이션 (내부/외부)
업데이트 빈도: SEV1-15-30 분마다, SEV2-30-60 분.
내부 상태 템플릿:- 깨진 것: "PSP-X를 통한 예금: 시간 초과 상승".
- 영향: "TR/BR, ~ 18% 의 스트림 사용자".
- 시작했을 때: "12:07 EET, SEV1".
- 우리가하는 일: "PSP-Y로 전환 경로, retrayes/rate cap을 사용할 수 있습니다".
- 다음 업데이트: "20 분 안에".
- 연락처: "IM @ uty-im, TL @ oncall-pay".
공개 상태 (페이지/소셜 네트워크) -ETA 및 추가 업데이트 링크를 사용하여 PII 및 불필요한 세부 정보없이 약칭됩니다.
9) 아티팩트 수집 및 감사
이벤트 타임 라인 (미세한 정확도), 서비스 버전, 기능 플래그, 설정 변경.
대시 보드 사진, 대략적인 경로 (trace _ id), "전/도중/후" 로그.
티켓, PR, 릴리스, runabooks에 연결합니다.
통신 보고서 (언제/투/무엇).
모두 사건 카드에 추가됩니다.
10) 폐쇄 및 PIR (사후 검토)
PIR 형식 (짧음):- 요약: 무슨 일이 있었는지, 규모, 지속 시간, SEV.
- 영향: 사용자/지역, SLO/SLA, Fin. 효과.
- 타임 라인: 분별로 자세히 설명하십시오.
- 근본 원인: 기술 + 조직 (이전에 탐지되지 않은 이유).
- 탐지 및 방어: 도움이되거나 실패한 것 (경고, 합성, phicheflags).
- 행동 항목: 특정 작업, 소유자, 마감일 (및 효과 확인 방법).
- 배운 교훈: 프로세스/아키텍처/관찰 가능성의 변화.
규칙: 2-4 주 동안 완료된 품목을 확인한 후 요금, 최대 사실, 필수 후속 조치 없음.
11) 프로세스 신뢰성 지표
MTTD-탐지해야 할 평균 시간
MTTA (... 인정) -통화 중 확인 전에.
MTTR (... 복원) -SLO가 복원 될 때까지.
실패율 변경-릴리스의% 로 인해 사고가 발생합니다.
SEV 별 사고 율, 도메인 별 배포 (지불/게임/인프라).
경고 품질: 시끄러운/거짓 비율, 경고 후 동작 시간.
Comm-SLA: 상태 업데이트 빈도 준수
12) SLO와의 통합 및 릴리스
CD 게이트: 녹색 SLO 프록시 (가용성, p95, conv, TTW) 로만 카나리아 프로모션.
동결 절차: 고속 연소/SEV1-PIR 전에 릴리스를 중지합니다.
그래프의 자동 주석: 대시 보드에서 릴리스/플래그/마이그레이션이 표시됩니다.
13) 규제 및 준수
PII: 로그/트랙에서 마스킹/앨리어싱, WORM 감사 상점, 액세스 제어.
지역: 허용 된 관할 구역 밖에서 사용자 데이터를 가져 가지 마십시오.
보고: 규제 기관에 공식화 된 문자/알림-템플릿 및 에스컬레이션 프로세스.
14) 학습과 준비 (게임 데이)
분기 별 연습: "PSP 드롭", "게임 제공 업체를 사용할 수 없음", "p99 서지", "키 누출".
MTTA/MTTR의 타이머, 운동시 복고풍.
Runabooks 및 연락처를 업데이트하고 ChatOps 명령을 확인합니다.
15) 준비 점검표 (사건 전)
1. SEV 규칙과 에스컬레이션 매트릭스가 동의했습니다.
2. 통화 중 회전, IM/TL/Comms/Scribe가 할당되었습니다.
3. 주요 시나리오 (결제, 게임, 데이터베이스, 캐시, 대기열) 에 대한 실행기.
4. SLO 카드 및 번 레이트 경고, 상태 페이지.
5. ChatOps 봇: 명령, 자동 컨텍스트, 상태 템플릿.
6. PIR 템플릿 및 사건 카드.
7. 정기적 인 게임 데이 및 연락/권한 개정.
8. 동결 정책 및 "빨간색 버튼" (롤백/킬 스위치).
16) 안티 패턴
단일 IM이 없으며 "크라우드 리드" → 혼돈과 지연.
SLO 게이트 부족 → 늦은 탐지, 시끄러운 경고.
동결 → 계단식 충돌없이 사고가 발생하는 동안 해제하십시오.
통나무와 산책로로는 충분하지 않으며 아티팩트 → 약한 PIR이 없습니다.
고발 문화 → 숨겨진 실수, 에스컬레이션에 대한 두려움.
영감을주는 커뮤니케이션 → 비즈니스/사용자 신뢰 상실.
17) 템플릿 (위키에 복사)
A) 사건 카드 (YAML)
yaml id: INC-2025-11-005 title: PSP-X timeouts in TR/BR sev: SEV1 start_at: 2025-11-05T12:07:00+02:00 status: active impact: "Deposits via PSP-X failing for ~18% users (TR, BR)"
im: "@oncall-im"
tl: "@oncall-pay"
comms: "@oncall-comms"
scribe: "@oncall-scribe"
mitigations:
- "Reroute to PSP-Y"
- "Enable retries and raise timeouts"
next_update_in: "20m"
links:
grafana: "<dashboard-url>"
traces: "<tempo-link>"
logs: "<loki-query>"
runbook: "payments/psp_timeout"
B) 상태 업데이트 (내부)
[12:25] SEV1 PSP-X timeouts — TR/BR
Impact: ~18% deposits affected. SLO fast-burn active.
Mitigation: Rerouting to PSP-Y; retries enabled; release freeze.
ETA next update: 12:45 EET
IM: @oncall-im TL: @oncall-pay
C) PIR (캡)
Summary, Impact, Timeline, Root Cause (tech+org),
Detections/Defenses, Action Items (owner+due), Lessons Learned.
요약
강력한 사건 관리는 사전 합의 된 역할, SLO 게이트, 작업 된 룬북, 투명한 커뮤니케이션 및 "무해한" PIR과 같은 구조 + 분야입니다. 이 루프는 MTTA/MTTR을 줄이고 다운 타임 비용을 낮추며 사용자 신뢰를 구축하며 대담하지만 안전하게 릴리스 할 수 있습니다.