x86 가상화를 이해하기 위한 기초 지식
0. x86 가상화란?
*x86 가상화는 x86 기반의 게스트 운영체제 (윈도우, 리눅스) 가 하이퍼바이저라고 하는 가상화 레이어 위에서 구동하는 방식이다.
*x86은 80 x 86 이라는 인텔이 개발한 마이크로프로세서 계열을 통창하여 부르는 말이며, 이들과 호환되는 프로세서들에서 사용한 명령어 집합 구조를 일컫는 말이다.
x86 아키텍쳐는 CISC(Complex Instrucetion Set Computer) 기반으로 되어 있는데 CISC란 소프트웨어 특히, 컴파일러 작성을 쉽게 하기 위해 하드웨어화 할 수 있는 것은 가능한 모두 하드웨어에게 맡긴다는 원칙 아래 설계된 컴퓨터이다.
이에 반해 유닉스 시스템은 RISC(Reduced Instruction Set Computer) 기반으로 설계되어 있으며 RISC는 실행 속도를 높이기 위해 가능한 복잡한 처리는 소프트웨어에게 맡기는 설계 방식이다.
- 블레이드 서버란 랙 서버와 같은 서버의 단점을 보완하기 위해 설계된 서버이다.
1. 서버 가상화란?
한 대의 물리적인 서버에 여러 대의 논리적인 가상 머신을 작동시키는 것을 말한다.
가상머신들은 물리적인 서버에 설치된 하이퍼바이저에 의해 관리되는데 이 하이퍼바이저는 다른 말로 가상머신 모니터 (VMM) 이라고 부르기도 한다.
2. 서버 가상화의 특징
- 격리
- 가상머신을 물리 하드웨어로부터 완전히 불리할 수 있다.
- 가상머신은 loosed coupled 형태이다. (loosed coupled = 느슨한 결합)
- 물리 서버와 OS 사이에 가상머신이라는 논리적인 형태를 생성함으로써 물리 서버와 OS는 쉽게 분리할 수 있다.
- 캡술화
- 물리적인 서버는 하나의 얄약과 같은 형태라고 보면 된다.
- 그 알약 안에 들어 있는 수많은 캡슐이 가상머신이라고 생각하면 된다.
- 하나의 알약 안에 여러 개의 캡슐이 존재하는 형태라고 보면 된다.
- 하드웨어 비의존성
- 가상머신은 캡슐화와 격리에 의해 물리적인 서버에 더 이상 종속되지 않는다.
- 논리적 서버인 가상머신으로 구성되기 때문에 논리적인 레벨에서 괸리되기 때문이다.
- 심지어 다른 물리적인 서버의 경계를 넘어 이동될 수도 있다.
3. 서버 가상화의 장점
첫째, 서버 리소스를 공유하여 비용을 절감한다.
- 기존의 x86 서버는 실제 물리 서버의 평균 10~15퍼센트의 리소스만을 사용한다.
- 서버 가상화를 활용하면서 사용률이 낮은 서버들은 한 대의 가상화 서버로 통합할 수 있다.
- 한 대의 물리적인 서버에 여러 대의 가상 서버를 동시에 운용할 수 있으므로, 기존에 한 대의 서버에 들어가던 전력 비용, 통신 비용, 랙 공간 비용으로 다수의 서버를 운용할 수 있으므로 비용 절감 효과를 누릴 수 있다.
둘째, 유지보수의 편의성이 증대된다.
- 기존 물리적인 서버의 경우 서버와 OS 의존도가 높기 때문에 서버에 유지보수 및 장애가 발생하면 서버의 전원을 차단해야 하므로 OS 가동이 중지된다.
- 서버 가상화를 운영한다면, 그리고 서버 가상화 클러스터가 구축되어 있다면 가상 머신을 다른 서버로 이동한 다음 장애가 발생한 물리 서버를 손쉽게 조치할 수 있다.
셋째, 시스템 가용성이 증대한다.
- 물리적인 서버에 불의의 장애가 발생하면 동작하고 있던 OS의 가용성이 떨어진다.
- 이 때, 클러스터로 구성된 가상머신 팜은 장애가 발생한 서버 위에서 동작하는 가상머신 들을 다른 쪽으로 자동으로 이동시킨다.
- 이런 기능을 이용하여 관리자의 개입이 없더라도 가상머신의 가용성을 보장할 수 있다.
'DevOps > virtualization_가상화' 카테고리의 다른 글
[Proxmox] 하이퍼바이저 재시작 후 VM 실행 오류 (no quorum, vm is locked) (1) | 2024.11.13 |
---|---|
[가상화] VMware vSphere 개요 (0) | 2023.10.11 |
[가상화] x86 가상화 아키텍쳐 구현 방식 (0) | 2023.09.20 |
[가상화] 전가상화와 반가상화 (0) | 2023.09.18 |
[가상화] 하이퍼바이저란 무엇인가? (0) | 2023.09.11 |