가상 머신과 하이퍼바이저
하나의 서버에서 여러 개의 격리된 가상 컴퓨터를 호스팅하는 방식을 이해합니다.
가상 머신과 하이퍼바이저은(는) CoddyKit의 무료 Network+ Academy 강의입니다. 이것은 4개 중 1번째 강의입니다. 아래에서 전체 강의를 무료로 읽을 수 있으며, 내장 코드 에디터와 24/7 AI 튜터와 함께 브라우저에서 직접 실습할 수 있습니다. 이 강의는 Network+ Academy 학습 경로의 일부이며, 진행 상황이 웹과 CoddyKit 앱에 동기화됩니다. Network+ Academy 강의에는 총 4개의 강의가 포함되어 있습니다.
가상화란 무엇인가요
가상화를 사용하면 하나의 물리적 서버가 여러 대의 독립된 컴퓨터처럼 작동할 수 있습니다. 각각의 가상 컴퓨터는 자체 운영 체제, 애플리케이션, 가상 CPU, 메모리, 디스크를 갖춘 가상 머신(VM)입니다. VM은 아래에 있는 실제 하드웨어를 공유하지만 서로 격리되어 있습니다.
가상화는 현대 데이터 센터와 클라우드의 기반입니다. 물리적 장비 하나에 애플리케이션 하나만 실행하는 대신, 성능이 높은 서버 하나에서 수십 개의 VM을 호스팅하여 비용과 전력 사용량, 필요한 공간을 크게 줄일 수 있습니다.
하이퍼바이저 알아보기
하이퍼바이저(가상 머신 모니터라고도 함)는 VM을 만들고 실행하는 소프트웨어 계층입니다. 물리적 CPU, RAM, 저장 공간을 나누어 각 VM에 일부씩 할당하고, VM을 서로 격리해 한 VM의 충돌이 다른 VM을 중단시키지 못하게 합니다.
하이퍼바이저는 운영 체제가 애플리케이션의 실행을 예약하는 것처럼 실제 하드웨어에 대한 접근을 예약합니다. 각 게스트 OS에서는 VM이 완전한 물리적 컴퓨터를 소유한 것처럼 보입니다.
유형 1: 베어 메탈 하이퍼바이저
유형 1 하이퍼바이저는 그 아래에 호스트 운영 체제 없이 하드웨어에서 직접 실행됩니다. 베어 메탈 위에서 실행되므로 빠르고 효율적이며 안전합니다. 따라서 운영 환경의 서버와 클라우드에 적합합니다.
- VMware ESXi
- Microsoft Hyper-V
- KVM (커널 기반 가상 머신)
- Xen
데이터 센터는 유형 1 하이퍼바이저를 실행하여 하나의 호스트가 동시에 여러 테넌트를 지원하도록 합니다.
유형 2: 호스팅형 하이퍼바이저
유형 2 하이퍼바이저는 Windows나 macOS 같은 일반 운영 체제 위에서 애플리케이션으로 실행됩니다. 설치가 쉽고 테스트, 학습, 데스크톱 환경에 적합하지만 요청이 먼저 호스트 OS를 거치므로 더 느립니다.
- VMware Workstation 및 Fusion
- Oracle VirtualBox
- Parallels Desktop
노트북에서 Linux를 실행할 때는 유형 2를 사용하고, 서버 팜을 실행할 때는 유형 1을 사용하세요.
게스트 OS와 호스트
호스트는 모든 것을 실행하는 물리적 컴퓨터와 하이퍼바이저입니다. 게스트 OS는 VM 내부에 설치된 운영 체제입니다. 게스트는 자유롭게 조합할 수 있습니다. 호스트 하나에서 Windows Server, Ubuntu Linux, 이전 버전의 Windows를 나란히 실행할 수 있습니다.
각 게스트는 전용 하드웨어를 사용하는 것으로 생각하지만, 실제로는 모두 하이퍼바이저의 일정에 따라 호스트의 CPU와 메모리 풀을 공유합니다.
리소스 할당
관리자는 각 VM에 vCPU(가상 프로세서 코어), RAM, 디스크를 할당합니다. 초과 할당은 모든 VM이 동시에 최고 사용량에 도달하지 않을 것이라고 가정하고, 호스트가 물리적으로 보유한 양보다 더 많은 가상 리소스를 전체 VM에 할당하는 것입니다.
신중하게 수행하면 효율성이 높아지지만, 부주의하게 수행하면 리소스 경합이 발생해 VM이 CPU나 메모리를 두고 경쟁하면서 느려집니다. 각 VM의 규모를 적절하게 조정하면 성능을 예측 가능하게 유지할 수 있습니다.
스냅샷과 복제
스냅샷은 특정 시점의 VM 상태를 정확히 저장합니다. 패치나 변경으로 문제가 발생하면 몇 초 만에 스냅샷으로 되돌릴 수 있습니다. 복제는 VM 전체를 복사해 동일한 새 VM을 빠르게 만드는 기능입니다.
이러한 기능 덕분에 VM은 물리적 서버보다 훨씬 유연합니다. 물리적 서버에서 고장 난 장비를 다시 구축하려면 몇 시간이 걸릴 수 있습니다. 단, 스냅샷은 동일한 호스트 저장 공간에 있으므로 백업은 아닙니다.
컨테이너와 VM 비교
컨테이너(예: Docker)는 더 가벼운 형태의 가상화입니다. 컨테이너마다 전체 게스트 OS를 사용하는 대신 호스트 커널을 공유하고 애플리케이션과 해당 종속 항목만 패키징합니다. 컨테이너는 수 밀리초 만에 시작되며 메모리도 훨씬 적게 사용합니다.
VM은 각각 전체 OS를 사용해 하드웨어 수준에서 격리되고, 컨테이너는 OS 수준에서 격리됩니다. 두 방식 모두 널리 사용되며, 실제 환경에서는 계층화된 격리를 위해 VM 내부에서 컨테이너를 실행하는 경우도 많습니다.
라이브 마이그레이션
라이브 마이그레이션은 실행 중인 VM을 가동 중지 시간을 거의 또는 전혀 발생시키지 않고 한 물리적 호스트에서 다른 호스트로 이동합니다. 하이퍼바이저는 네트워크를 통해 VM의 메모리를 새 호스트로 복사한 다음 매우 매끄럽게 전환하므로 사용자는 거의 알아차리지 못합니다.
이를 통해 서비스를 종료하지 않고도 하드웨어 유지 관리, 로드 밸런싱, 장애 조치를 수행할 수 있습니다. VMware에서는 이를 vMotion이라고 하며, 가상화 환경의 높은 가용성을 보장하는 핵심 이유 중 하나입니다.
VM이 클라우드를 움직이는 이유
클라우드 제공업체는 방대한 하이퍼바이저 팜을 운영합니다. 클라우드 서버를 임대하면 실제로는 공유 하드웨어에서 실행되는 VM을 받는 것입니다. 가상화를 사용하면 제공업체는 몇 분 만에 VM을 생성하고, 규모를 조정하며, 사용한 만큼만 요금을 청구할 수 있습니다.
네트워크 기술자에게 이것이 중요한 이유는 이제 네트워크가 호스트 내부까지 확장되어 가상 스위치를 통해 가상 머신을 연결하기 때문입니다. 가상 스위치는 다음 강의에서 살펴봅니다.
이점과 상충 관계
이점: 하드웨어 통합, 빠른 프로비저닝, 스냅샷을 통한 간편한 백업, 격리, 가동 시간을 높이는 라이브 마이그레이션이 있습니다.
상충 관계: 하이퍼바이저는 약간의 오버헤드를 추가하고, 초과 할당은 경합을 일으킬 위험이 있으며, 호스트 하나에 VM을 많이 배치하면 해당 호스트에 장애가 발생할 때 단일 장애 지점이 생깁니다. 이러한 위험을 관리하려면 중요한 VM을 여러 호스트에 분산하는 것이 좋습니다.
빠른 확인
하이퍼바이저 유형에 대한 이해도를 확인해 보세요.
복습
가상화는 하나의 물리적 서버를 여러 개의 격리된 가상 머신으로 나누며, 이들을 하이퍼바이저가 관리합니다. 유형 1 하이퍼바이저는 운영 환경을 위해 베어 메탈에서 실행되고, 유형 2는 데스크톱과 테스트를 위해 호스트 OS에서 실행됩니다. 각 VM에는 vCPU, RAM, 디스크가 할당되며 스냅샷, 복제, 라이브 마이그레이션을 지원합니다. 또한 VM은 클라우드 컴퓨팅의 기본 구성 요소입니다.
자주 묻는 질문
“가상 머신과 하이퍼바이저” 강의는 무료인가요?
네 — “가상 머신과 하이퍼바이저” 전체 내용을 이 웹사이트에서 무료로 읽을 수 있습니다. 인터랙티브하게 실습하려면(내장 코드 에디터와 24/7 AI 튜터), CoddyKit PRO로 업그레이드하면 Network+ Academy 강의 전체를 잠금 해제할 수 있습니다. Network+ Academy 강의에는 총 4개의 강의가 포함되어 있습니다.
“가상 머신과 하이퍼바이저”에서 뭘 배우나요?
하나의 서버에서 여러 개의 격리된 가상 컴퓨터를 호스팅하는 방식을 이해합니다. 브라우저에서 직접 실행하는 실습 코드로 Network+ Academy을(를) 배우며, 24/7 AI 튜터가 강의를 진행하면서 질문에 답변해줍니다.
Network+ Academy을(를) 시작하는 데 경험이 필요한가요?
사전 경험은 필요하지 않습니다. CoddyKit의 Network+ Academy은(는) 초급자부터 고급 학습자까지를 위해 구성되어 있으므로, 여기서 시작하거나 처음부터 시작할 수 있으며 자신의 속도대로 진행할 수 있습니다. 이것은 4개 중 1번째 강의입니다.
“가상 머신과 하이퍼바이저” 강의는 얼마나 걸리나요?
대부분의 CoddyKit 강의는 약 5~10분이 소요됩니다. 각 강의는 간결하고 인터랙티브하여 꾸준한 진행이 가능하며, 웹과 앱에서 중단한 부분부터 바로 시작할 수 있습니다.
이 Network+ Academy 강의에서 코드를 작성하고 실행할 수 있나요?
네. 모든 Network+ Academy 강의에는 내장 코드 에디터가 포함되어 있으므로, 브라우저에서 바로 실제 코드를 작성하고 실행한 후 즉시 AI 피드백을 받을 수 있습니다 — 로컬 설정이 필요 없습니다.
이 강의의 모든 강의
- 가상 머신과 하이퍼바이저
- 가상 스위치와 네트워크
- 공용, 사설, 하이브리드 클라우드
- 클라우드 연결과 VPC