본문으로 건너뛰기

버그 제보

이상한 점을 알려 주시면 고칠게요. 지금 보고 있는 페이지와 브라우저 정보가 함께 담겨요.

페이지:

DevOps

서비스 운영 준비 체크리스트

작성 2026. 10. 21.추가
목차4개 항목
출처와 참고

「Going To Production Checklist」의 서버 체크리스트를 뼈대로, 보안 헤더는 MDN 문서로 확인해 오늘 기준으로 재구성한 노트다. 프런트엔드 쪽은 프론트엔드 출시 전 체크리스트에 있다.

체크리스트를 쓰는 법

체크리스트는 「프로덕션에서 처음 알게 되면 비싼 것」의 목록이다. 항목마다 예/아니오로 답할 수 있게 쓴다. 「모니터링이 잘 되어 있다」가 아니라 「오류율 임계치 알림이 있다」처럼 쓴다. 답이 「아니오」인 항목은 고치거나, 감수한다고 명시적으로 결정한다.

분야별 항목

분야예라고 답할 수 있어야 하는 질문자세히
회복력의존 서비스가 죽어도 핵심 기능을 일부라도 유지하나? 과부하가 지나가면 스스로 회복하나? 끊긴 DB·큐 연결을 다시 맺나? 내 장애가 다른 서비스로 번지지(연쇄 장애) 않나?회복력 패턴
수평 확장여러 CPU·여러 인스턴스에서 돌 수 있나(상태를 프로세스 밖에 두나)? 로드 밸런서 뒤에서 도나? 중단 없이 노드를 더할 수 있나?로드 밸런서, 12요소 앱
무중단 배포사용자 세션을 잃지 않고 노드를 넣고 뺄 수 있나? 롤링·블루그린·카나리 배포가 되나? 되돌리기(롤백)가 한 단계인가?배포 전략
프로세스 감독서버 재시작 뒤 자동으로 뜨나? 죽으면 자동으로 다시 시작하나?데몬과 systemd, 쿠버네티스 아키텍처
로그삼킨(catch만 하고 넘긴) 오류까지 모두 기록하나? 로그 수준이 구분되고 구조화(JSON)돼 있나? 한곳으로 모아 검색할 수 있나?관측 가능성
알림·헬스 체크재시작, 오류율 임계치, 자원 고갈 임박(CPU·메모리·I/O 90% 이상), 타임아웃, 5xx 응답에 알림이 오나? 모든 구성 요소에 헬스 체크(liveness·readiness)가 있나?관측 가능성, 서버 장애 진단
지표엔드포인트별 요청 수와 지연 시간, 핵심 비즈니스 연산의 소요 시간을 시간축으로 볼 수 있나?관측 가능성
고가용성서로 독립된 데이터 센터(가용 영역·리전)에서 돌 수 있나?고가용성과 이중화
테스트부하(스트레스) 테스트를 했나? 네트워크 분할 상황을 시험했나?서버 장애 진단
백업백업에서 실제로 복구해 봤나? 복구 목표 시간(RTO)과 데이터 손실 허용 범위(RPO)가 정해져 있나?재해 복구
보안OWASP Top 10을 점검했나? 모든 엔드포인트가 TLS인가? 보안 헤더를 붙였나? 비밀 값이 코드·이미지에 없나?웹 보안, DevSecOps
법·정책의존성 라이선스를 어기지 않나? 암호화 규제와 조직 기준을 지키나?오픈소스 라이선스

백업은 복구해 본 것만 백업이다. 복구 절차를 한 번도 돌려 보지 않은 백업은 있다고 믿는 것일 뿐이다.

보안 헤더: 지금 붙이는 것과 버린 것

헤더지금
Strict-Transport-Security붙인다. 브라우저가 HTTPS로만 접속하게 한다
Content-Security-Policy붙인다. XSS 방어의 핵심이다. 클릭재킹 방지도 frame-ancestors로 한다
X-Content-Type-Options: nosniff붙인다. MIME 추측을 막는다
X-Frame-OptionsCSP frame-ancestors가 대체한다. 오래된 브라우저를 위해 함께 둘 수 있다
X-XSS-Protection붙이지 않는다(또는 0). 브라우저의 XSS 필터는 제거됐고, 켜 두면 오히려 새 취약점을 만들 수 있다. CSP를 쓴다
Public-Key-Pins(HPKP)쓰지 않는다. 잘못 설정하면 사이트를 장기간 접속 불가로 만들 수 있어 브라우저에서 제거됐다. 인증서 투명성(Certificate Transparency)이 대신한다

정리

  • 체크리스트는 예/아니오로 답할 수 있는 질문으로 쓴다.
  • 상태를 프로세스 밖에 두어야 수평 확장, 무중단 배포, 자동 재시작이 가능하다.
  • 로그·알림·지표·헬스 체크가 있어야 장애를 사용자보다 먼저 안다.
  • 백업은 복구해 봐야 백업이다.
  • 보안 헤더는 HSTS·CSP·nosniff를 붙이고, X-XSS-Protection과 HPKP는 버린다.

관련 노트: 프론트엔드 출시 전 체크리스트, 관측 가능성, 배포 전략, 회복력 패턴, 재해 복구, 고가용성과 이중화, 클라우드 SLA와 계약

원본 기록3

댓글

GitHub 계정으로 댓글을 남길 수 있어요.