55
1
장
보안과 신뢰성 사이의 교집합
만 수렴하는 배포 시스템을 도입해서 내부자가 악의적인 목적의 바이너리를 프로덕션 환경에
밀어 넣을 수 있는 위험을 완화할 수 있다.
1.4.7
시스템 조사와 로깅
지금까지 신뢰성과 보안 관련 장애를 모두 방지할 수 있는 설계 원칙과 구현 방법을 중점적으
로 살펴봤다. 안타까운 점은 완벽한 신뢰성이나 보안을 이루는 것은 현실적이지 않거나 비용이
너무 많이 든다. 또한, 보호 메커니즘도 실패할 수 있다는 점을 염두에 두고 장애를 탐지하고
복구하기 위한 계획을 세워야 한다.
15
장에서 설명하겠지만 올바른 로깅은 장애 탐지와 대처를 위한 기본이다. 보통은 로그를 최
대한 자세하고 완결성 있게 남기는 것이 좋지만 몇 가지 유의할 사항이 있다. 규모가 어느 정도
이상이면 로그의 양이 너무 많아 비용이 올라가며 효과적으로 로그를 분석하기가 어려워진다.
이 장의 초반부에서 언급했던 유튜브의 사례에서 알 수 있듯이 로깅이 신뢰성 문제를 유발하기
도 한다. 게다가 보안 로그는 또 다른 과제로 이어진다. 통상 로그에는 인증 자격 증명이나 사
용자 식별 정보
personally
identifiable
information
(
PII
) 같은 민감한 정보를 담으면 안 된다. 로그 자체가
공격자의 목표가 되기 때문이다.
1.4.8
위기 대응
긴급 상황에서 문제가 발생하면 즉시 결과가 나타나므로 팀은 반드시 신속하고 부드럽게 협업
해야 한다. 최악의 경우 장애로 인해 몇 분 만에 비즈니스가 무너질 수도 있다. 예를 들어
2014
년