기술 실무 설계 시리즈 7/8
클라우드 비용은 숫자로 보인다.
월 몇 달러, 인스턴스 비용, Lambda 호출 비용, S3 저장 비용처럼 계산할 수 있다.
하지만 운영 복잡도는 잘 보이지 않는다.
배포할 때마다 사람이 확인해야 하는 절차, 장애 때마다 찾아야 하는 로그, 헷갈리는 도메인, 수동으로 맞춰야 하는 설정도 모두 비용이다.
작은 운영 도구에서는 이 보이지 않는 비용을 더 중요하게 봐야 할 때가 있다.
비용은 돈만이 아니다
기술 선택을 할 때 클라우드 비용만 비교하면 판단이 좁아진다.
예를 들어 어떤 구조가 월 비용은 조금 싸지만 다음을 요구한다면 실제로는 비쌀 수 있다.
- 매번 수동 배포
- 복잡한 서버 패치
- 장애 때마다 콘솔 검색
- 문서 없는 환경 변수
- 사람이 직접 정리해야 하는 파일
- 원인을 찾기 어려운 로그
사람의 시간도 비용이다.

운영자의 집중력도 비용이다.
장애 때 의사결정이 느려지는 것도 비용이다.
매니지드 서비스를 쓰는 이유
S3, CloudFront, Lambda, API Gateway 같은 매니지드 서비스를 쓰는 이유는 단순히 저렴해서가 아니다.
책임을 줄이기 위해서다.
예를 들어 S3와 CloudFront로 정적 파일을 서빙하면 직접 웹 서버를 운영하지 않아도 된다.
Lambda를 쓰면 이벤트성 작업을 위해 상주 서버를 관리하지 않아도 된다.
API Gateway를 쓰면 일부 라우팅, CORS, 로그, throttling을 Gateway 계층에서 다룰 수 있다.
이 선택은 비용 최적화이면서 운영 책임 최적화다.
복잡도가 늘어나는 지점
운영 복잡도는 다음에서 늘어난다.
- 배포 대상이 많다.
- 환경 변수가 많다.
- 도메인 경로가 복잡하다.
- 캐시 정책이 문서화되지 않았다.
- 장애 로그가 여러 곳에 흩어져 있다.
- 인증과 권한 예외가 많다.
- 데이터 원천과 캐시가 구분되지 않는다.
- 수동 복구 절차가 없다.
이 항목들은 월 비용 청구서에 나오지 않는다.
하지만 운영 품질에 직접 영향을 준다.
단순한 구조가 항상 좋은 것은 아니다
운영 복잡도를 줄인다고 해서 모든 것을 하나로 합치면 안 된다.
하나의 서버, 하나의 DB, 하나의 관리자 페이지가 처음에는 단순해 보일 수 있다.
하지만 책임이 섞이면 나중에 더 복잡해진다.
진짜 단순함은 모든 것을 한곳에 두는 것이 아니다.
각 부분의 책임이 명확해서 이해하기 쉬운 것이다.
문서화도 복잡도 절감이다
문서는 운영 복잡도를 줄인다.
특히 다음 문서가 있으면 장애 대응과 인수인계가 쉬워진다.
- HANDOVER
- 아키텍처 문서
- 배포 가이드
- 트러블슈팅 문서
- 용어집
- 리소스 목록
문서를 쓰는 데 시간이 들지만, 같은 질문을 반복해서 찾는 시간을 줄인다.
문서화는 개발 외 작업이 아니라 운영 비용 절감이다.
비용 비교에 넣어야 할 질문
기술 선택을 할 때 다음 질문을 함께 본다.
- 이 구조를 누가 운영할 것인가
- 장애가 나면 어디부터 볼 수 있는가
- 배포는 몇 단계인가
- 수동 작업이 있는가
- 담당자가 바뀌어도 이해 가능한가
- 나중에 다른 서비스로 옮길 수 있는가
- 보안 경계가 명확한가
- 비용을 줄이려다 사람의 일이 늘지는 않는가
이 질문이 운영 복잡도를 비용처럼 계산하게 해준다.
작은 팀일수록 더 중요하다
큰 팀은 전담 인프라나 플랫폼 팀이 있을 수 있다.
작은 팀이나 개인 프로젝트에서는 그렇지 않다.
개발자가 배포도 하고, 장애 대응도 하고, 문서도 써야 한다.
이럴수록 운영 복잡도를 줄이는 선택이 중요하다.
단순한 매니지드 서비스, 명확한 배포 절차, 적은 수의 수동 작업, 잘 정리된 문서가 큰 차이를 만든다.
정리
운영 복잡도는 비용이다.
클라우드 청구서에는 나오지 않지만, 사람의 시간과 장애 대응 속도와 시스템 신뢰도에 영향을 준다.
좋은 설계는 월 비용만 줄이는 설계가 아니다.
운영자가 없어도 어느 정도 굴러가고, 문제가 생기면 빠르게 확인할 수 있고, 담당자가 바뀌어도 이어받을 수 있는 설계다.
비용을 볼 때 돈과 함께 운영 복잡도를 계산해야 한다.
함께 볼 GitHub 저장소
'성장과 기술 > 시스템 설계' 카테고리의 다른 글
| 처음부터 완벽한 공통화를 하지 않은 이유 (0) | 2026.07.03 |
|---|---|
| API Gateway를 운영 경계로 보는 법 (0) | 2026.07.02 |
| 장애 영향 범위를 줄이는 콘솔 분리 전략 (0) | 2026.07.01 |
| 서버리스, 상주 서버, 정적 호스팅을 나누는 기준 (0) | 2026.06.30 |
| 내부 도구에서 충분히 좋은 설계를 판단하는 기준 (0) | 2026.06.29 |
글에서 정리한 생각은 GitHub의 코드와 포트폴리오로 이어지고, 일부는 FamBlend 같은 제품 실험으로 확장됩니다.