Rain Lag

아날로그 온콜 미로 키트: 숨은 신뢰성 의존성을 드러내는 종이 미로 설계하기

단순한 종이 기반 ‘미로 키트’가 온콜 운영 방식을 바꾸고, 숨겨진 의존성을 드러내며, 탁상훈련과 게임화된 협업을 통해 신뢰성 작업을 더 몰입감 있게 만드는 방법을 소개합니다.

소개

현대 시스템은 너무 복잡해서, 모든 의존성·핸드오프·숨은 결합 지점을 한 사람이 전부 이해하는 것은 사실상 불가능합니다. 그런데도 장애가 터지면 우리는 온콜 엔지니어가 이 복잡성을 몇 분 안에 헤쳐 나가길 기대합니다. 대시보드, 다이어그램, 서비스 카탈로그는 도움을 주지만, 실제 세계의 지저분한 현실—“누가, 어떻게 영향을 받고, 나는 누구에게 연락해야 하지?”—를 온전히 담아내지는 못합니다.

여기서 등장하는 것이 바로 **아날로그 온콜 미로 키트(Analog On-Call Maze Kit)**입니다. 페이퍼 퍼스트 방식으로 신뢰성 의존성을 그려 보고, 사고 대응을 연습하며, 힘들게 얻은 교훈을 모두가 기억하는 공유된 이야기로 바꾸는 도구입니다. 또 하나의 대시보드를 만드는 대신, 종이 위에 실제 미로를 만드는 겁니다. 시스템, 팀, 실패 경로를 손으로 그려 넣은 미로를 함께 직접 걸어 나가는 방식이죠.

이 글에서는 의존성 맵을 만드는 것부터 탁상훈련을 돌리는 방법, 오너십을 문서화하는 요령, 사람들이 실제로 참여하고 싶어지게 만드는 게임화 아이디어까지, 여러분만의 아날로그 온콜 미로 키트를 설계하고 운영하는 방법을 단계별로 설명합니다.


디지털 시대에 왜 굳이 아날로그인가?

디지털 시스템의 신뢰성을 종이로 개선하겠다는 발상은 처음 들으면 다소 구식처럼 들릴 수 있습니다. 하지만 아날로그 형식은 단점이 아니라 장점입니다.

생각을 “조금” 느리게 만들어 주기 때문

디지털 도구는 속도를 부추깁니다. 문서 열고, 다이어그램 쓱쓱 그려 넣고, 곧바로 다른 일로 넘어가게 하죠. 반대로 종이 기반 형식은 생각의 속도를 살짝 늦추면서 다음을 가능하게 합니다.

  • 더 깊은 토론을 유도하고
  • “잠깐, 그 큐는 누가 담당이죠?” 같은 숨은 가정을 드러내며
  • 자동 생성된 다이어그램 뒤에 숨지 않고, 모두가 납득하는 공통 그림을 협상하게 만듭니다.

미로를 종이에 스케치할 때, 우리는 단순히 그림을 그리는 게 아니라, 함께 생각을 그려 나가고 있는 것입니다.

머릿속 모델을 눈앞에 꺼내 놓기

많은 신뢰성 실패는 데이터 부족 때문이 아니라, 맞지 않는 멘탈 모델 때문에 일어납니다. 사람들은 시스템이 이렇게 동작한다고 믿지만, 실제로는 전혀 다르게 돌아가는 경우죠. 종이 미로는 이런 멘탈 모델을 눈에 보이게, 토론 가능하게, 수정 가능하게 만들어 줍니다.


1단계: 미로가 아니라 의존성 맵부터 그려라

복도와 함정을 그리기 전에, 미로 안에 무엇이 있는지부터 알아야 합니다.

영향을 받는 모든 시스템을 함께 나열하기

먼저 크로스 펑셔널 그룹을 모읍니다. 엔지니어, SRE, 프로덕트 오너, 고객지원, 필요하다면 장애의 영향을 받는 운영·마케팅 팀까지 포함해도 좋습니다. 그런 다음 여러분 팀의 업무가 직접 또는 간접적으로 영향을 미치거나 영향을 받는 모든 시스템·서비스·외부 의존성을 전부 나열합니다.

예를 들면 다음이 포함될 수 있습니다.

  • 핵심 마이크로서비스 및 모놀리식 서비스
  • 데이터베이스, 캐시, 큐, 스토리지 백엔드
  • 서드파티 API 및 SaaS 도구
  • 데이터 파이프라인 및 분석 시스템
  • 운영 도구: 관측·모니터링, 알림, CI/CD, 피처 플래그 등
  • 여러분의 데이터나 API를 사용하는 다운스트림 소비자들

완벽해야 한다는 압박은 내려놓으세요. 이 목록은 차츰 다듬어 가면 됩니다. 중요한 점은 이 작업이 협업적이어야 한다는 것입니다. 역할이 다르면 보이는 미로의 영역도 다르기 때문입니다.

“벽에 붙이는” 워크숍으로 만들기

스티키 노트나 인덱스 카드를 준비해 벽이나 큰 테이블 위에 붙여 나갑니다. 시스템 하나당 카드 한 장입니다. 이렇게 물리적으로 펼쳐진 시스템들의 “스프롤(sprawl)”을 보는 순간, 종종 첫 번째 “아하!”가 나옵니다.

“우리 서비스가 이렇게 많은 것들을 건드리고 있었는지 전혀 몰랐네요.”


2단계: 오너십을 문서화해 책임 공백 드러내기

시스템 목록을 만들었다면, 그다음 중요한 단계는 오너십(ownership)을 명확히 적어 두는 것입니다.

각 의존성에 대해 다음을 적습니다.

  • 담당 팀 이름 (또는 1차 책임 그룹)
  • 주요 연락처 (슬랙 채널, 메일링 리스트, 또는 담당자)
  • 에스컬레이션 경로 (1차 연락처가 응답하지 않을 때는 어떻게 하는가?)

이 정보는 각 카드 위에 바로 적거나, 다이어그램 옆에 작은 표로 정리해 둡니다.

그러면 다음과 같은 것들이 빠르게 드러납니다.

  • 고아 시스템: “이 레거시 배치 잡은 도대체 누가 담당하죠?”
  • 모호한 책임 구분: “두 팀 모두 상대 팀이 이 큐를 맡고 있다고 생각한다.”
  • 깨진 에스컬레이션 경로: “우리는 이 팀을 깨우지만, 이 팀은 SLA 48시간인 외부 벤더에 의존한다.”

이런 공백과 모호함은 대부분 실제 장애가 터져야 비로소 드러납니다. 미로 키트는 이 문제를 페이저가 울리기 전에 발견하게 해 줍니다.


3단계: 영향 유형을 분류해 관계 구조 드러내기

모든 의존성이 같은 수준의 의미를 갖는 것은 아닙니다. 어떤 것은 업스트림(Upstream) 데이터 소스이고, 어떤 것은 다운스트림(Downstream) 소비자입니다. 어떤 것은 운영상 치명적이지만, 어떤 것은 리포팅에만 영향을 줄 뿐이죠.

겉으로 잘 보이지 않는 신뢰성 관계를 드러내려면, 각 의존성에 하나 이상 영향 유형 태그를 붙여 보세요. 예를 들어:

  • Upstream – 이 시스템이 제공하는 데이터나 기능에 여러분의 서비스가 의존합니다.
  • Downstream – 이 시스템이 여러분의 출력이나 이벤트를 소비합니다.
  • Data – 데이터의 일관성, 최신성, 무결성이 이 연결에 의존합니다.
  • Operational – 배포, 관측, 지원 워크플로가 이 시스템에 의존합니다.

카드 색을 다르게 쓰거나, 작은 아이콘·점 표시로 구분할 수 있습니다. 예를 들어:

  • 파란 점 = Upstream
  • 초록 점 = Downstream
  • 노란 점 = Data
  • 빨간 점 = Operational

이런 시각적 언어 덕분에, 겉으로 보기엔 별것 아닌 분석 잡(job)이 사실은 치명적인 업스트림 데이터 의존성이라는 사실을 깨닫게 될 수도 있습니다. 혹은 “단순한 로깅 벤더”라고만 생각했던 시스템이 운영의 핵심 축이라는 점이 드러날 수도 있죠.


4단계: 각 의존성이 “어떻게” 영향을 받는지 서술하기

단순 분류만으로는 여전히 추상적입니다. 미로를 정말 쓸모 있게 만들려면, 각 의존성에 대해 짧게라도 **“구체적으로 어떻게 영향을 주고받는지”**를 적어야 합니다.

질문은 이것입니다.

“우리의 작업이 이 시스템에 정확히 어떤 영향을 주는가?”

예를 들어:

  • “우리 서비스는 이 테이블의 유일한 writer이며, 스키마 변경은 모든 소비자를 깨뜨릴 수 있다.”
  • “이 배치 잡이 지연되면 매출 대시보드에 오래된 데이터가 표시된다.”
  • “우리 서비스의 트래픽 스파이크가 여기서 오토스케일링을 일으키고, 그 결과 공유 DB 커넥션 풀을 고갈시킬 수 있다.”
  • “Auth 연동이 실패하면 사용자가 이 서드파티 툴에 접근할 수 없어, 지원팀 업무가 막힌다.”

이 설명들은 다음에 도움을 줍니다.

  • 실패 모드에 대한 공유된 멘탈 모델을 만들고
  • 변경·장애의 **블라스트 레이디우스(영향 반경)**를 더 분명히 하며
  • 실제 장애 상황에서 온콜 엔지니어가 2차·3차 영향을 예측할 수 있게 돕습니다.

설명은 최대한 쉬운 자연어로 쓰세요. 목표는, 온콜에 처음 들어온 사람이 몇 초 안에 “이 의존성이 왜 중요한지” 이해할 수 있게 하는 것입니다.


5단계: 맵을 “미로”로 변환하기

이제 여러분에겐 재료가 모두 준비되어 있습니다. 시스템, 오너, 영향 유형, 실패 설명까지. 이제 이것들을 조합해 미로를 만듭니다.

큰 종이나 화이트보드를 준비해 다음 순서로 진행합니다.

  1. 여러분 팀의 주요 서비스를 중앙에 배치합니다.
  2. 업스트림·다운스트림 의존성을 그 주변에 배치합니다.
  3. 시스템 사이를 연결선(복도)으로 이으며, 영향 유형에 따라 선의 색·스타일(실선, 점선 등)을 다르게 표시합니다.
  4. 단일 실패로 광범위한 영향을 줄 수 있는 크리티컬 패스를 강조 표시합니다.

정확한 아키텍처 다이어그램을 그리는 것이 목표가 아닙니다. 현실의 복잡성을 반영하면서도 사람이 걸어 다니며 탐색할 수 있는 퍼즐을 설계하는 것이 목표입니다.


6단계: 미로를 활용한 탁상형 장애 대응 훈련

미로가 준비되면, 이제 이를 활용해 저위험 환경에서 실제 사고를 시뮬레이션할 수 있습니다.

미로 기반 탁상훈련 진행 방법

  1. 시나리오를 하나 고릅니다.
    예를 들면:

    • 업스트림 API가 30분간 500 에러를 반환한다.
    • 주요 데이터베이스가 부분적인 성능 저하를 겪는다.
    • 로깅 벤더가 완전히 unreachable 상태가 된다.
  2. 사고를 미로 안에 떨어뜨립니다.
    초기 실패 지점에 번개 모양 같은 심볼을 표시합니다.

  3. 온콜 팀이 미로를 걸어 나가게 합니다.
    질문은 다음과 같습니다.

    • 가장 먼저 어떤 알람이 울릴까?
    • 어떤 대시보드를 먼저 확인할까?
    • 우리가 적어 둔 설명에 따르면, 다음에 영향을 받는 의존성은 어디일까?
    • 누구에게 연락해야 할까? (오너십·에스컬레이션 정보 활용)
  4. 결정과 시간을 추적합니다.
    실제 탁상훈련이라 해도, 탐지·진단·에스컬레이션·완화까지 각각 얼마나 걸릴지 대략적인 시간 추정을 해 봅니다.

  5. 명시적으로 디브리핑합니다.
    훈련이 끝난 뒤에는 반드시 토론 시간을 갖습니다.

    • 어디에서 막혔는가?
    • 어떤 책임 구분이 모호했는가?
    • 어떤 가정이 틀렸는가?
    • 어떤 문서·도구를 개선해야 하는가?

이런 훈련을 주기적으로 하면 온콜 스킬이 예리하게 유지될 뿐 아니라, 여러분의 사고 대응 플랜이 지속적으로 검증됩니다.


7단계: 게임화로 재미와 기억력을 높이기

신뢰성 관련 작업은 건조하거나, 혹은 위축감을 주는 영역으로 느껴지기 쉽습니다. 미로 키트는 **게임화(gamification)**를 통해 이를 즐겁고 기억에 남는 활동으로 바꿉니다.

추가할 수 있는 요소들

  • 경쟁 요소

    • 팀별로 사고 대응 “미로 걷기”에 걸린 시간을 재봅니다.
    • 정확한 진단, 올바른 에스컬레이션 선택, 창의적인 완화 방안 등에 점수를 부여합니다.
  • 스토리텔링

    • 사고에 이름과 서사를 붙입니다. 예: “침묵의 큐가 있던 밤”, “유령 피처 플래그 사건”.
    • 훈련이 끝난 뒤 참가자들에게 각자 말로 사고 이야기를 다시 들려 달라고 합니다.
  • 문제 해결 챌린지

    • 제약 조건을 도입합니다. “이 팀은 30분 동안 연락 불가”, “주요 대시보드가 다운된 상태” 등.
    • 팀에게 미로의 일부를 재설계해 블라스트 레이디우스를 줄이는 방안을 고민하게 합니다.

게임화의 목적은 장애를 가볍게 보려는 것이 아닙니다. 오히려 두려움을 줄이고, 사람들이 더 적극적으로 엣지 케이스와 실패 경로를 탐색하도록 유도하는 데 있습니다.


디지털 도구가 자주 놓치는 것들

서비스 카탈로그, 의존성 그래프, 인시던트 관리 플랫폼은 강력한 도구입니다. 하지만 종종 다음과 같은 한계를 가집니다.

  • 실제 현실이 아니라 이상화된 아키텍처를 반영하고
  • 그래프 자동 생성 뒤에 가정과 추정이 숨어 있으며
  • “툴에 있으니 맞겠지”라는 분위기 때문에 질문과 의심을 억제합니다.

반대로 아날로그 미로 키트는 이런 점을 뒤집습니다.

  • 아무것도 가정하지 않고, 모든 것을 직접 협상하고 합의해야 하고
  • 공백과 충돌은 눈에 잘 띄고, 때로는 불편할 정도로 드러나지만, 그게 생산적인 긴장을 만듭니다.
  • 결과물은 “돌에 새긴 소스 오브 트루스”가 아니라, 대화를 여는 출발점입니다.

원한다면 나중에 미로를 디지털로 옮길 수 있습니다. 하지만 가장 중요한 학습은 미로를 직접 만들고, 함께 걸어보는 과정에서 나오지, 정적인 다이어그램 파일에서 나오지 않습니다.


결론: 첫 번째 미로부터 시작하자

시작에 거창한 템플릿이나 소프트웨어는 필요 없습니다. 간단한 스타터 키트만 있으면 됩니다.

  • 시스템 이름을 적을 인덱스 카드나 스티키 노트
  • 3~4가지 색상의 마커
  • 큰 종이 또는 화이트보드
  • 팀과 함께하는 60~90분의 시간

여기서부터 다음 순서로 진행해 보세요.

  1. 여러분의 업무가 영향을 주고받는 모든 시스템을 나열한다.
  2. 각 시스템의 오너와 에스컬레이션 경로를 적는다.
  3. 영향 유형(Upstream, Downstream, Data, Operational)을 분류한다.
  4. 각 의존성이 어떻게 영향을 받는지 짧게 설명한다.
  5. 미로를 그리고 크리티컬 패스를 강조한다.
  6. 하나의 탁상형 인시던트를 돌려 보고, 게임화 요소를 곁들인다.

신뢰성 작업을 종이 위, 펜을 든 사람들, 한 공간에 모인 팀이라는 물리적 세계로 끌어내리면, 디지털 도구가 자주 가려 버리는 숨은 의존성, 책임 공백, 취약한 연결 고리를 훨씬 더 쉽게 발견할 수 있습니다. 그리고 그 과정에서, 실제 알람이 울릴 때 온콜 엔지니어들이 의지할 수 있는 공유된 멘탈 모델도 함께 구축하게 됩니다.

아날로그 온콜 미로 키트는 단순한 연습이 아닙니다. 복잡성을 책상 위에 실제로 올려놓고, 함께 탐색하고, 한 번에 한 미로씩 개선해 나가는 방법입니다.

아날로그 온콜 미로 키트: 숨은 신뢰성 의존성을 드러내는 종이 미로 설계하기 | Rain Lag