Linux

가상화 관리 서비스

laughcryrepeat 2020. 10. 2. 15:33

가상화 Virtualization 서비스의 개요

 

1) 가상화의 특징

 

1. 가상화의 개념

 

CPU, 메모리, 디스크와 같은 하나의 물리적 자원을 여러개의 논리적인 자원으로 나누거나

다수의 물리적인 자원을 하나의 논리적인 자원으로 통합하여 서비스하는 기술

 

2. 가상화의 특징

가상화는 논리적인 자원풀에 기반한 효율적인 자원 활용, 물리적인 공간 절약, 데이터 및 서비스에 대하나 가용성 증가, 

중앙집중관리에 따른 보안성 향상 등 장점을 제공.

 

  • 공유 Sharing
    많은 가상자원들이 하나의 물리적자원과 연결되어 있거나 가리키는것 의미
  • 프로비저닝 Provisioning
    사용자의 요구사항에 맞게 할당, 배치, 배포할 수 있도록 만들어 놓는것 의미
  • 단일화 Aggregation
    여러개의 물리적 자원을 논리적으로 통합하여 하나의 자원으로 사용할 수 있도록 제공.
  • 에뮬레이션 Emulation
    물리적 특징이 다른 장치를 범용적인 모델로 인식하여 사용할 수 있도록 지원하는 것.
  • 절연 Insulation
    하나의 가상화 서비스에 문제가 발생해도 다른 서비스로 장애가 전이되지 않도록 관리하는것을 의미.

 

2) 가상화 서비스 방식과 기술

 

1. 하드웨어 레벨의 가상화 방식

  • VMM(Virtual Machine Monitor) 이 물리적인 하드웨어를 가상머신의 하드웨어와 매핑하고,
    게스트 운영체제의 자원 사용을 관리함.
전가상화 반가상화
CPU의 물리적 가상화 기능을 이용해 하드웨어를 완전히 가상화
윈도우, 리눅스 등 다양한 게스트 OS를 수정없이 사용
게스트 OS는 하이퍼바이저에 하드웨어의 제어를 요청하여 동작.
하이퍼바이저가 하드웨어 사용을 통제하므로 상대적으로 높은 성능을 제공.
게스트 OS의 수정이 필요하여 리눅스 등 오픈소스가 주로 지원.

 

2. 호스트 기반 가상화 Host Baseed Virtualization 방식

호스트 운영체제에 VMM을 설치하고 가상머신을 생성. 

 

3. 리눅스의 대표적인 가상화 기술

  • KVM
    CPU 에뮬레이터인 QEMU를 이용해 리눅스/윈도우 등 다중 가상머신 운영.
    CPU는 반가상 기술지원하지 않고 이더넷, Disk I/O, 그래픽 등은 반가상화 지원.
    호스트서버에서보면 게스트 서버는 하나의 프로세스로 간주, 오버헤더가 거의 없음.
  • XEN
    CPU 전가상화, 반가상화를 모두 지원하는 하이퍼바이저 기반의 가상화 기술.
    CPU 반가상화 지원으로 물리적 서버 대비 효율성이 가장 좋음.
    반가상화 구성시, 호스트와 다른 아키텍처의 게스트는 실행할 수 없음.
    전가상화 구성시, QEMU 기반으로 동작.
  • 버추얼 박스 VirtualBox
    오라클이 주도하여 개발 및 배포하고 있는 x86 기반 가상화 소프트웨어
  • 도커 Docker
    하이퍼바이저를 사용하거나 게스트 운영체제를 설치하지않고, 서버 운영에 필요한 프로그램과 라이브러리만 이미지로 만들어
    프로세스처럼 동작시키는 경량화된 가상화 기술.

 

4. 가상화 지원 소프트웨어 플랫폼

 

Cloudstack KVM,XEN, XEN Server, VMWare 등의 하이퍼 바이저 지원
OpenStack IaaS(Infrastructure as a Service) 형태의 클라우드 컴퓨팅을 구축할 수 있는 오픈소스 프로젝트.
KVM,XEN, XEN Server, VMWare ESX/ESXi, PowerVM, Hyper-V 등 하이퍼바이저 지원.
OpenNebula 이기종 분산 데이터센터 인프라를 관리하기 위한 클라우드 컴퓨팅 플랫폼
KVM,XEN, VMWare ESXI, Hyper-V 등 하이퍼바이저 지원
OpenShift Docker 와 Kubernetes를 제공하는 컨테이너 어플리케이션 플랫폼

 

5. 가상화 지원 소프트웨어의 디스크 이미지 형식

 

버추얼 박스는 전용의 디스크 이미지 형식을 사용할뿐만 아니라 다른 가상화 소프트웨어가 지원하는 디스크 형식도 함께 지원.

VD(Virtual Disk Image) 버추얼박스에서만 사용할 수 있는 전용 디스크 이미지 형식
VHD(Virtual Hard Disk) 버추얼박스, Hyper-V, Xen 에서 사용할 수 있는 디스크 이미지 형식
VMDK(Virtual Machine Disk) 버추얼박스, VMvare Player에서 사용할 수 있는 디스크 이미지 형식

가상화 관련 주요 명령어 요약

 

1. 가상화 서비스 설치 명령어

 

KVM 관련 패키지 설치 명령어

$yum install kvm
$yum install virt-manager

 

XEN 관련 패키지 설치 명령어

$yum install centos-release-xen
$yum install xen
$yum install libvirt-deamon
$yum install libvirt-deamon-xen

 

2. 가상화 관련 주요 명령어

 

virt-top 가상화 현황을 top 과 유사한 형식으로 출력
virsh 텍스트 기반의 콘솔 환경에서 가상머신을 관리해주는 도구로 생성, 시작, 재시작, 종료, 강제종료 등의 기능을 수행
virt-manager 가상머신을 손쉽게 시작 및 종료할 수 있고, 가상머신의 CPU 사용량, 호스트 CPU 사용향 등을 모니터링 할 수 있는 GUI 기반의 도구
libvirt Linux 에서 가상화 지원을 위한 API, 데몬(deamon), 라이브러리, 관리 툴들의 모음.
libvirtd libvirt 관리 시스템의 서버 데몬으로 관리도구와 통신하여 원격 도메인의 명령을 전달.
xm Xen을 관리하는 명령어.