본문 바로가기

마스터-슬레이브 구조

마스터-슬레이브 구조란 분산 시스템에서 데이터 수정을 맡는 마스터 한 노드와 그 변경을 복제받아 읽기를 나눠 맡는 슬레이브 노드들로 역할을 위계적으로 나눈 구조다. 쓰기를 한곳에 모아 관리가 단순해지는 대신 마스터가 단일 장애점이 되며, 동기·비동기 복제의 일관성-지연 상충과 마스터 장애 시 선거·페일오버가 핵심 쟁점이다.

목차

1. 개요

마스터-슬레이브 구조란 여러 컴퓨터가 협력하는 분산 시스템에서 노드의 권한을 대등하게 두지 않고, 데이터를 고칠 수 있는 노드 하나(마스터)와 그 변경을 넘겨받아 읽기만 나눠 맡는 노드들(슬레이브)로 역할을 위계적으로 가른 구조다.1 쓰기 창구를 한곳으로 모으면 '누가 진짜 최신값인가'를 다툴 일이 줄어 관리가 단순해지는 대신, 그 한 노드가 멈추면 전체가 흔들리는 약점을 안는다. 그래서 복제로 슬레이브에 사본을 뿌려 읽기 부하를 나누고, 마스터가 쓰러지면 남은 노드가 새 마스터로 올라서게 해 그 약점을 메운다. 분산 파일 시스템에서 한 노드가 전체를 관리하고 나머지가 데이터를 나눠 맡는 구성이 이 골격의 대표 사례이며, 슬레이브로 흩어지는 읽기 요청은 로드밸런싱으로 고르게 나누고 자주 읽는 값은 캐시 메모리에 얹어 더 빠르게 만든다. 모든 노드가 대등한 피어 구조와 짝을 이루는, 노드 역할 설계의 두 축 가운데 하나다.2

2. 상세

2.1. 역할의 비대칭 — 쓰기는 하나, 읽기는 여럿

한 노드만 데이터 변경(쓰기)을 맡고 나머지는 그 결과를 받아 읽기에만 쓰는 것이 이 구조의 뼈대다. 쓰기 경로가 하나뿐이라 값이 서로 어긋날 여지가 줄고, 대신 폭주하기 쉬운 읽기 요청은 여러 슬레이브가 나눠 받아 처리량을 끌어올린다. 도서관에서 원본 장부는 사서 한 사람만 고치게 하고, 열람용 사본은 여러 창구에 두어 방문객이 나눠 보게 하는 상황에 가깝다.

2.2. 동기 복제와 비동기 복제 — 안전과 속도의 맞바꿈

마스터의 변경을 슬레이브로 옮기는 방식은 크게 둘로 갈린다. 동기 방식은 모든 슬레이브가 변경을 반영했다고 확인할 때까지 기다린 뒤 쓰기를 완료로 처리한다. 어느 노드에서 읽어도 같은 값이 나오지만 그 기다림만큼 응답이 느려진다. 비동기 방식은 마스터가 먼저 처리를 끝내고 슬레이브에는 시간차를 두어 흘려보낸다. 빠른 대신, 아직 변경이 닿지 않은 슬레이브를 읽으면 한 박자 지난 옛값(stale)이 나올 수 있다.3

2.3. 일관성과 가용성의 상충

'어디서 읽어도 늘 최신'이라는 성질(일관성)과 '언제 물어도 답이 온다'는 성질(가용성)을 동시에 최고로 끌어올리기는 어렵다. 최신을 보장하려고 모두의 동기화를 기다리면 지연이 커지고, 지연을 줄이려 먼저 응답하면 옛값이 섞인다. 이 맞바꿈은 마스터-슬레이브 설계에 늘 따라붙는 비용이다.

2.4. 페일오버와 선거 — 마스터가 쓰러졌을 때

마스터 집중의 최대 약점은 그 하나가 멈추면 쓰기가 통째로 막히는 단일 장애점이라는 데 있다. 이를 완화하는 절차가 페일오버다. 마스터가 정해진 시간 동안 응답이 없으면 장애로 판정하고, 남은 노드들이 표를 모아 새 마스터를 세워(선거) 그 역할을 넘겨받는다. '응답 없음이 이어짐(조건) → 장애 판정 → 승격(결과)'이라는 조건-절차 흐름으로 굴러간다.4

3. 수능에서는 이렇게 나온다

평가원은 이 구조를 서버 제품 지식이 아니라 관계를 읽는 문제로 낸다. 구체적인 출제 이력은 아래 위젯을 참조하라. 이런 각도로 나온다.

  • 비교·대조: 중앙에 쓰기를 모으는 마스터-슬레이브와 모든 노드가 대등한 피어 구조를 나란히 놓고, '단순하지만 병목' 대 '견고하지만 조정 복잡'이라는 기준 차이를 판정하게 한다.
  • trade-off 판정: 동기냐 비동기냐, 일관성이냐 가용성이냐를 놓고 한쪽을 높이면 다른 쪽 비용이 커진다는 상충을 선지에 심는다.
  • 조건-절차 관계: 마스터 장애 → 선거 → 승격의 순서를 뒤섞거나 승격 조건을 슬쩍 바꿔 놓고 맞는지를 묻는다.

4. 헷갈리기 쉬운 것들

흔한 오해 왜 틀렸나 바르게 이해하기
마스터 노드가 죽으면 서비스가 통째로 멈춘다 다른 노드가 새 마스터로 올라서(페일오버) 서비스를 넘겨받는다 마스터 집중의 위험은 사본 유지와 자동 승격 절차가 상당히 덜어 준다는 흐름으로 이해한다
비동기 복제라면 슬레이브도 늘 최신값을 준다 비동기는 시간차 전달이라, 아직 반영 전인 슬레이브는 지난 값(stale)을 내줄 수 있다 빠름을 얻는 대신 잠깐의 옛값을 감수하는 구조다
슬레이브를 늘리면 모든 성능이 함께 좋아진다 읽기 분담과 안정성은 오르지만, 사본마다 최신으로 맞추는 동기화·쓰기 부담도 같이 커진다 가용성을 높이려는 쪽과 일관성 유지 비용은 한 몸으로 움직이는 trade-off다

5. 관련 개념

  • 분산 시스템 — 여러 노드가 한 시스템처럼 동작하게 만드는 상위 구조. 이 문서는 그 노드 역할 설계의 한 갈래다
  • 샤딩과 복제 — 슬레이브에 사본을 뿌리는 '복제'가 이 구조의 전제. 데이터를 '나눔'과 '겹침'으로 가르는 대비를 다룬다
  • 분산 파일 시스템 — 관리 노드가 쓰기·관리를 맡고 저장 노드들이 블록을 나눠 두는, 이 골격의 대표 사례
  • 로드밸런싱 — 여러 슬레이브에 읽기 요청을 고르게 흩어 주는 분배 장치
  • 캐시 메모리 — 자주 읽는 값을 앞단에 얹어 슬레이브 부하까지 더는 성능 기법

각주

  1. 정의와 개념 서술은 평가원 기출 기반 배경지식 자료(기술·분산 시스템)의 심화 합성 자료를 따랐다.

  2. 마스터-슬레이브의 반대편이 '피어 구조'다. 모두 대등해 단일 장애점은 줄지만, 여러 노드가 동시에 고치려 들 때 충돌을 맞추는 일이 까다로워진다. '중앙 집중=단순하지만 병목' 대 '대등 분산=견고하지만 조정 복잡'으로 짝지어 두면 비교 문항이 한결 쉬워진다.

  3. '동기 vs 비동기'는 이 단원의 핵심 대비쌍이다. 선지에서 '모두 반영될 때까지 기다렸다가 완료'가 보이면 동기, '먼저 끝내고 나중에 전달'이 보이면 비동기로 갈라 두면 함정 하나를 미리 지운다.

  4. '선거'는 사람이 뽑는 절차가 아니라 남은 노드끼리 표를 모아 새 마스터를 정하는 자동 과정이다. '조건(응답 없음) → 판정 → 승격'의 세 칸으로 외워 두면 순서를 뒤집는 함정에 강해진다.

출제 사례(아직 매칭된 출제 기록이 없어요)

이 개념이 어느 시험·지문에 등장했는지의 기록입니다. 개념 자체의 난이도가 아니라 출제 맥락을 보여줍니다.

출제 기록이 확인되면 여기에 시험·지문·문항이 채워집니다.

이 문서를 가리키는 문서

잘못된 내용을 발견하셨나요? 신고해 주시면 검토 후 반영합니다.

다음 단계

이 개념, 실제 지문에서 훈련하기

수능특강·기출 지문 해설로 개념이 문항에서 어떻게 쓰이는지 직접 확인해보세요.

학습 자료 보러가기