서버·스토리지·고가용성·가상화
서버 확장과 RAS, DAS·NAS·SAN, 블록·파일·객체 저장 방식을 구분한다. RAID별 용량과 장애 허용, 고가용성 구성, 가상머신과 컨테이너의 격리 경계를 기본 계산과 사례로 이해한다.
핵심 요약
서버·스토리지 구성에서는 처리 성능·저장 방식·장애 대응·자원 격리를 구분한다. DAS·NAS·SAN은 연결·접근 구조, RAID는 여러 디스크를 묶는 방식, 고가용성은 장애에도 서비스를 계속 제공하려는 성질, 가상화는 물리 자원을 논리적으로 분리·추상화하는 기술이다.
1. 서버와 용량 계획
CPU는 연산, 메모리는 실행 중 데이터와 프로그램의 작업 공간, 저장장치는 데이터의 지속적 보관, 네트워크는 시스템 간 통신을 담당한다. 병목이 어디인지에 따라 필요한 증설 대상이 다르다.
수직 확장(Scale-up)은 서버 한 대의 CPU·메모리 등을 강화하는 것이고, 수평 확장(Scale-out)은 서버 수를 늘려 작업을 분산하는 것이다. 수평 확장은 분산 처리와 상태 관리가 필요하며, 수직 확장은 장비의 확장 한계가 존재한다.
서버의 RAS는 신뢰성(Reliability)·가용성(Availability)·서비스성(Serviceability)이다. 신뢰성은 정해진 조건에서 고장 없이 동작하는 성질, 가용성은 필요한 때 사용할 수 있는 정도, 서비스성은 점검·수리·유지보수의 용이성과 관련된다.
평균 부하만으로 용량을 정하면 접속이 집중되는 시간이나 일부 장비가 고장 난 상황을 감당하지 못할 수 있다. 정상·최대 부하와 장애 시의 잔여 처리 능력을 함께 고려한다.
2. DAS·NAS·SAN
| 구분 | 구조 | 주된 접근 단위 | 대표 특징 |
|---|---|---|---|
| DAS | 서버에 저장장치 직접 연결 | 블록 | 구성이 단순하나 여러 서버의 공유·통합 관리에 한계가 있을 수 있음 |
| NAS | 네트워크를 통해 파일 서비스 제공 | 파일 | 여러 사용자의 파일 공유에 적합하며 NFS·SMB 등을 사용 |
| SAN | 서버와 저장장치를 스토리지용 네트워크로 연결 | 보통 블록 | 저장 자원의 공유·확장·통합 관리에 활용 |
SAN은 Fibre Channel만으로 구성되는 것은 아니다. IP 기반 iSCSI 등도 사용할 수 있다. NAS는 네트워크상의 파일 서비스, SAN은 저장장치를 연결하는 네트워크 구조라는 차이를 먼저 기억한다.
블록 저장은 고정 크기 블록을, 파일 저장은 이름·디렉터리로 구성한 파일을, 객체 저장은 데이터와 메타데이터를 가진 객체를 다룬다. DAS·NAS·SAN과 블록·파일·객체는 서로 다른 분류 축이다.
저장 성능에서는 IOPS가 초당 입출력 횟수, 처리량이 초당 전송 데이터 양, 지연시간이 개별 입출력에 걸리는 시간이다. 작은 파일의 빈번한 접근과 큰 파일의 연속 전송에서는 중요 지표가 달라질 수 있다.
3. RAID
RAID는 여러 디스크를 묶어 성능·가용성·용량을 구성하는 기술이다. 스트라이핑은 데이터를 여러 디스크에 나누어 기록하고, 미러링은 같은 데이터를 복제하며, 패리티는 장애 시 데이터를 재구성할 수 있는 부가 정보를 저장한다.
아래 표는 디스크 n개가 같은 용량 S이고, 파일시스템 등의 부가 비용과 핫 스페어를 제외한 일반적인 구성을 가정한다.
| 수준 | 방식 | 최소 디스크 | 사용 가능 용량 | 장애 허용 |
|---|---|---|---|---|
| RAID 0 | 스트라이핑 | 2 | n×S | 중복 보호 없음 |
| RAID 1 | 미러링 | 2 | 2개 미러 기준 S | 2개 미러 기준 1개 |
| RAID 5 | 분산 단일 패리티 | 3 | (n−1)×S | 1개 |
| RAID 6 | 분산 이중 패리티 | 4 | (n−2)×S | 2개 |
| RAID 10 | 미러 쌍을 스트라이핑 | 4 | (n/2)×S | 고장 위치에 따라 달라짐 |
RAID 0은 빠를 수 있지만 장애 복구용 중복 정보를 제공하지 않는다. RAID 10은 같은 미러 쌍의 두 디스크가 모두 고장 나면 해당 데이터가 손실될 수 있다. 따라서 ‘전체 디스크의 절반이 어떤 위치에서 고장 나도 안전하다’는 설명은 틀리다.

용량 예제
4 TB 디스크 6개로 구성하면 RAID 0은 6×4=24 TB, RAID 5는 (6−1)×4=20 TB, RAID 6은 (6−2)×4=16 TB, RAID 10은 6÷2×4=12 TB다. 실제 사용 가능 용량은 포맷과 제품 구성 등의 영향을 추가로 받는다.
핫 스페어는 장애 디스크를 대신하여 재구성에 투입할 대기 디스크다. 평상시 데이터 복사본인 백업과는 다르다. 재구성 중에도 추가 장애나 성능 저하가 발생할 수 있다.
4. RAID·복제·스냅샷·백업
| 수단 | 주된 목적 | 단독 사용의 한계 |
|---|---|---|
| RAID | 디스크 장애 대응·성능 구성 | 오삭제·논리적 손상까지 되돌리는 백업은 아님 |
| 복제 | 다른 장치·시스템에 데이터 유지 | 잘못된 변경도 함께 전파될 수 있음 |
| 스냅샷 | 특정 시점의 상태 보관 | 원본 저장소에 의존하는 구성에서는 저장소 장애에 함께 영향 |
| 백업 | 복구를 위해 별도 복사본 보관 | 복사본이 실제 복원 가능한지 확인 필요 |
복제 서버가 있다는 것과 과거 시점의 데이터를 복구할 수 있다는 것은 다르다. 운영 관리자 계정 하나가 원본과 백업을 모두 삭제할 수 있다면 백업의 보호 효과도 약해질 수 있다.
5. 고가용성과 장애전환
고가용성(HA)은 장애 영향을 줄여 서비스를 계속 제공하려는 구성과 운영의 목표다. 장애전환(Failover)은 주 역할을 수행하던 구성요소의 장애 시 다른 구성요소가 역할을 넘겨받는 것이다.
| 구성 | 정상 상태 | 주요 고려 사항 |
|---|---|---|
| Active-Standby | 주 장비가 처리하고 대기 장비가 준비 | 장애 감지·역할 승계·상태 일치 |
| Active-Active | 여러 장비가 동시에 처리 | 부하분산·데이터 일관성·일부 장애 시 잔여 용량 |
| N+1 | 필요한 N개 외에 예비 1개 확보 | 장애 후에도 필요한 용량을 제공하는지 |
둘 이상의 노드가 서로 자신이 주 노드라고 판단하는 스플릿 브레인은 데이터 불일치를 일으킬 수 있다. 장애 감지, 주 역할 결정, 중복 쓰기 방지가 함께 필요하다. 장비만 두 대 설치하고 절체를 시험하지 않으면 고가용성이 검증된 것이 아니다.
평균 고장 간격을 MTBF, 평균 수리 시간을 MTTR이라고 할 때 단순한 수리가능 시스템의 가용성 근사식은 다음과 같다.
가용성 = MTBF ÷ (MTBF + MTTR)
MTBF=720시간, MTTR=1시간이면 720÷721≈0.998613, 약 99.8613%다. 퍼센트로 나타낼 때 100을 곱한다. 실제 서비스 가용성은 다른 의존 장치·계획 중단 등 측정 범위에 따라 달라진다.
총 수요 D, 서버당 처리량 C이고 한 대가 고장 나도 전체 수요를 처리해야 한다면, 모든 서버가 같은 부하를 분담한다는 조건에서 최소 대수는 ceil(D/C)+1이다. 가용성 목표에서 MTTR을 역산할 때도 시간 단위를 통일한다.
6. 가상머신과 컨테이너
가상머신(VM)은 가상 하드웨어 위에서 게스트 운영체제와 응용 프로그램을 실행한다. 이를 지원하는 하이퍼바이저는 물리 자원을 가상머신에 할당·관리한다.
| 구분 | 구조 | 핵심 차이 |
|---|---|---|
| Type 1 하이퍼바이저 | 하드웨어 위에서 직접 동작 | 별도 호스트 OS 위의 일반 응용 형태와 구별 |
| Type 2 하이퍼바이저 | 호스트 OS 위에서 동작 | 호스트 OS의 지원을 사용 |
| 컨테이너 | 호스트 커널을 공유하면서 프로세스 실행 환경 격리 | VM처럼 컨테이너마다 독립 게스트 커널을 갖는 구조가 아님 |
전가상화는 게스트 운영체제를 대체로 수정하지 않고 실행하도록 하드웨어 환경을 제공하고, 반가상화는 게스트가 가상화 환경을 인식하여 하이퍼바이저와 협력하는 방식이다. Type 1·2 분류와 전가상화·반가상화 분류를 같은 축으로 섞지 않는다.
컨테이너는 가볍고 배포가 빠를 수 있지만, 커널을 공유하므로 보안·자원 격리를 별도로 고려해야 한다. VM 안에서 컨테이너를 실행할 수도 있다. 가상화된 여러 인스턴스를 한 물리 서버에 몰아두면 그 서버 장애가 모두에 영향을 주므로 물리적 장애 영역도 함께 고려한다.
