이 글은 『그림으로 공부하는 IT인프라 구조』(저자: 야마자키 야스시)를 기반으로 학습한 내용을 정리한 글입니다.
인프라란 무엇이고, 아키텍처는 왜 중요한가?
우리가 전기를 쓸 때, 콘센트에 플러그만 꽂으면 되지 ‘전기가 어떻게 오는지’는 몰라도 상관없습니다. 그 복잡한 구조는 전기 회사에서 관리하고 있으니까요. IT 인프라도 마찬가지입니다.
웹사이트에 접속하거나, 온라인에서 송금하거나, 앱으로 영화를 볼 수 있는 건 그 뒤에서 IT 인프라가 묵묵히 돌아가고 있기 때문입니다.
이 IT 인프라는 눈에 보이지 않지만, 수많은 컴퓨터와 네트워크, 저장장치들이 유기적으로 연결된 거대한 시스템입니다.
그런데 이렇게 복잡한 시스템을 어떻게 설계할까요?
바로 아키텍처(architecture)가 그 해답입니다.
‘아키텍처’는 쉽게 말하면 ‘설계도’, ‘구조’를 뜻합니다.
즉, 인프라 아키텍처란 IT 시스템을 어떻게 구성할지에 대한 설계 구조를 말합니다.
집약형 아키텍처: 모든 걸 한 대의 컴퓨터에 몰아서 처리하는 구조
IT 시스템이 처음 등장하던 시절에는 한 대의 큰 컴퓨터가 회사의 모든 일을 다 처리하던 시대였습니다.
이런 컴퓨터를 호스트(host), 메인프레임(mainframe), 범용 컴퓨터 등으로 불렀고,
그 구조를 집약형 아키텍처(Centralized Architecture)라고 합니다.
왜 이런 구조를 썼을까?
그 당시에는 컴퓨터 자체가 굉장히 비싸고 귀했기 때문에, 한 대를 최대한 효율적으로 잘 돌리는 것이 중요했습니다.
그래서 기업의 핵심 업무—예를 들어, 은행의 고객 계좌 관리 같은—을 모두 이 한 대의 컴퓨터에 몰아서 처리했습니다.
집약형 아키텍처의 장점
- 구성이 단순하다.
컴퓨터가 하나니까 시스템을 관리하기 쉽습니다. 뭔가 고장 났을 때 어디서 문제 생겼는지도 바로 알 수 있죠. - 안정성과 성능이 높다.
고급 장비다 보니 성능이 뛰어나고, 고장이 나더라도 대비책이 잘 되어 있습니다.
CPU나 메모리 같은 부품이 이중화돼 있어서 하나가 망가져도 다른 부품이 대신 일하게 만들어져 있습니다. - 자원 관리가 철저하다.
여러 작업이 동시에 돌아가더라도, 시스템이 알아서 우선순위를 정하고 서로 영향을 주지 않도록 리소스를 정교하게 분배합니다.
쉽게 말하면, 고급 오피스텔 하나에 여러 팀이 살고 있는데, 각 방마다 전기·수도·인터넷이 다 따로 되어 있어서 누가 밤새워 일한다고 해도 옆 방 사람은 아무 영향도 안 받는 구조라고 보면 됩니다.
집약형 아키텍처의 단점
- 도입 비용이 매우 비싸다.
이 대형 컴퓨터는 가격이 상상을 초월합니다.
한 대만 있어도 수천, 수억 원이 들 수 있습니다. - 유지비용도 만만치 않다.
운영체제도 특수하고, 관리도 어렵고, 전문 인력도 필요해서 운영비용이 많이 듭니다. - 확장성이 부족하다.
만약 처리 능력이 부족해지면 컴퓨터를 한 대 더 붙이는 게 아니라, 또 하나의 대형 컴퓨터를 사야 합니다.
그런데 그 가격이 똑같이 비싸기 때문에 부담이 크고, 시스템 확장이 어렵습니다.
분할형 아키텍처란? – 작고 많은 컴퓨터로 나누어 처리하는 구조
앞서 살펴본 집약형 아키텍처는 대형 컴퓨터 한 대가 모든 업무를 처리하는 방식이었습니다. 하지만 이런 구조는 가격이 비싸고, 확장이 어렵다는 단점이 있었습니다. 그래서 등장한 것이 바로 **분할형 아키텍처(분산형 구조, Distributed Architecture)**입니다.
분할형 아키텍처는 간단히 말해서, 여러 대의 소형 컴퓨터(서버)를 조합하여 하나의 시스템처럼 사용하는 구조입니다.
즉, 큰 한 덩어리로 다 처리하던 걸 작게 나누고 역할을 분담하는 방식입니다.
왜 분할형 아키텍처를 쓰게 되었을까?
기술이 발전하면서 이제는 소형 컴퓨터 한 대도 충분히 빠르고 강력해졌습니다.
예전에는 대형 컴퓨터만이 할 수 있었던 일들을 이제는 작은 서버 여러 대를 묶어서 충분히 처리할 수 있게 된 것입니다.
그리고 무엇보다 소형 컴퓨터는 가격이 매우 저렴합니다.
어떤 경우에는 대형 컴퓨터 한 대 값으로 소형 서버를 100대 이상 살 수 있을 정도입니다.
하지만 소형 컴퓨터는 안정성이 떨어질 수 있기 때문에, 분할형 아키텍처에서는 여러 대의 컴퓨터를 조합해서 신뢰성을 확보합니다.
한 대가 고장나더라도, 나머지 컴퓨터들이 그 일을 대신할 수 있도록 설계되어 있습니다.
분할형 아키텍처의 장점
- 비용이 저렴하다.
고성능 대형 컴퓨터 대신 저가형 서버를 여러 대 사용하므로 도입 비용이 매우 낮습니다. - 확장성이 뛰어나다.
서버가 부족하면 필요한 만큼만 추가하면 됩니다.
예를 들어 사용자가 늘면 서버를 2대에서 4대로 늘리는 식으로 유연하게 확장할 수 있습니다. - 유연하고 표준화된 시스템 구성
대부분의 분할형 구조는 리눅스 같은 범용 운영체제나 일반 프로그래밍 언어를 사용하므로,
유지관리나 개발이 쉬우며 ‘오픈 시스템’이라고 부르기도 합니다.
분할형 아키텍처의 단점
- 구조가 복잡해진다.
서버가 많아질수록 이를 관리하고 통합하는 구조가 복잡해집니다.
예를 들어, 요청을 어느 서버가 처리할지, 서버 간 데이터를 어떻게 동기화할지 등을 고려해야 합니다. - 한 대의 서버가 망가졌을 때의 영향도 고려해야 한다.
서버별 역할이 분리되어 있기 때문에,
하나의 서버가 멈췄을 때 전체 시스템에 미치는 영향을 최소화하도록 설계해야 합니다.
여기서 말하는 ‘서버’는 무엇일까?
분할형 아키텍처에서 사용하는 컴퓨터를 서버(server)라고 부릅니다.
그런데 여기서 중요한 점은, 서버라는 말이 두 가지 의미로 쓰인다는 것입니다.
- 물리적인 컴퓨터 자체를 말할 때:
- 이건 우리가 상상하는 실제 기계입니다.
- 보통 모니터도 없고, 생김새는 DVD 플레이어나 네트워크 장비처럼 생겼습니다.
- 이런 경우는 물리 서버라고 부릅니다.
- 서버 역할을 하는 소프트웨어를 말할 때:
- 예를 들어 웹 페이지를 제공하는 웹 서버 소프트웨어,
데이터를 저장하고 제공하는 DB 서버 소프트웨어 등이 이에 해당합니다. - 이들은 하나의 물리 컴퓨터 안에서 여러 개가 함께 동작할 수도 있고, 각각 따로 물리 서버에 설치되기도 합니다.
- 예를 들어 웹 페이지를 제공하는 웹 서버 소프트웨어,
쉽게 말해서, 서버는 “특정 역할을 수행하는 존재”입니다.
레스토랑에서 웨이터를 “서버”라고 부르는 것처럼, IT에서도 특정 기능을 담당하는 것이 바로 서버입니다.
예시로 보는 서버의 역할
- 웹 서버: 사용자가 웹사이트에 접속하면 HTML 페이지를 생성해서 보내주는 역할
- DB 서버: 대량의 데이터를 저장해두고, 필요할 때 꺼내주는 역할
- 이 두 서버는 한 컴퓨터에 함께 있을 수도 있고, 각각 다른 컴퓨터에서 따로 운영될 수도 있습니다.
'Book > 그림으로 공부하는 IT인프라 구조' 카테고리의 다른 글
지리적 분할 아키텍처 (0) | 2025.07.25 |
---|---|
수평 분할형 아키텍처 (0) | 2025.07.25 |
수직 분할형 아키텍처 (0) | 2025.07.25 |