[학습 목표]

가상화 기술 개념

가상화 기술의 종류와 개념

컨테이너 기술에 대한 개념

 

 

<Server virtualizations>

 

Container Technology

- 18년도부터 컨테이너 개념이 들어오기 시작 

앱을 돌릴때 필요한 라이브러리, 어플리케이션 자체를 이미지와해서 만들것을 name space와 cgroup을 통해서 시작하는것을 컨테이너라고 생각하면됨

 

 

도커가 나오면서 컨테이너가 널리 사용됨

특히 구글에서 컨테이너 관리로 썻던 쿠버네티스가 그런 계기가있음

실행에 필요한것들을 이미지에 다 담고 (이미지는 어디든 갈 수 있음) 도커에 넣고 실행하면 컨테이너가 생성

컨테이너 안에 들어가면 로컬에서 쓰던 기분 (어? 쉘인가?)

도커 이미지 : 실행에 필요한것을 다 담음

컨테이너 : 그 이미지를 분리시킨다음 runC 상태로 돌아가서 그 안에 있던 (이미지) 에플리케이션이 독립된 단위로 실행됨

 

 

VM : 은 하이퍼바이져가 들어가 있음  (하이퍼바이저 : 가상화를 해주는 장치 또는 칩)

Container : VM에 필요하던 오버헤드가 없음 

 

 

 

이것만 알아둬라

Container 는 Nacespace/Cgroup의 집합 그럼 나는 어떻게 네트워크를 그 안에서 조절할 것이냐 ? 또는 안에서 조절할 부분 or 밖에서 조절할 부분을 구분할 것인가?

 

 

 

가상화 기술이란

서버, 스토리지, 네트워크 등의 IT 리소스의 물리적인 성질이나 경계를 가리고, 논리적인 리소스

이용 단위로 변환해서 제공하는 기술

 

목적

  • 인프라를 단순화 시킬 수 있다. (사용자 측면)
  • 유휴장비의활용률을높일수있다.(불필요한장비증설방지)
  • 서비스 장애에 대한 신속한 대응이 가능하다.
  • TCO(Total Cost of Ownership)를 절감할 수 있다.
  • 신속한 확장이 가능하다. (Scale Out)

종류

  • 서버가상화
  • 스토리지 가상화
  • 네트워크 가상화

 

 

 

• 가상화의 목적


Isolation from other tenant(세입자 - 여러개의 자원을 하나에서 쓰는 형태)
because basically it’s shared resource.
try to be safe from other noisy neighborhood

 

Application of virtualization technology

분류
설명
애플리케이션 가상화
특징
사용자의 PC에 개별적으로 설치되어 있는 애플리케이션을 가상화를 통해 제공
사용자는 필요한 애플리케이션을 자신의 PC에서 매번 설치하지 않고도 즉시 사용 가능
역할
클라우드의 SaaS(Software as a Service) 구현의 기반 기술 제공
데스크톱 가상화
특징
서버 측 데스크톱 가상화는 사용자의 데스크톱에서 Windows Vista, Windows 7 등의 이기종의 또 다 른 데스크톱을 가상으로 소유가 가능하게 함
클라이언트 측 데스크톱 가상화는 PC 안의 이기종의 가상 데스크톱을 운영 가능 하도록 함 데스크톱 가상화를 통한 개인 작업 공간과 회사 작업 공간의 분리가 가능해 짐
역할
클라우드의 DaaS(Desktop as a Service) 구현의 기반 기술 제공
서버 가상화
특징
데이터센터 내의 수십 대의 물리적인 서버 워크로드들을 몇 대의 가상 서버로 통합 집적 (Consolidation)하여 물리적인 상면 비용, 관리적인 측면의 비용, Green IT 측면의 전력량을 포함한 서버 자원 활용도를 증대시킬 수 있음
역할
클라우드의 IaaS(Infrastructure as a Service) 구현의 기반 기술 제공
스토리지 가상화
특징
필요로 하는 스토리지 공간 대신 Thin-Provisioning이라는 기술을 통해 최소 공간만을 가상으로 할당 하여 서비스 구현이 가능하도록 함
이기종의 스토리지 시스템 통합에 사용할 수 있는 환경을 제공
역할
클라우드의 IaaS(Infrastructure as a Service) 구현의 기반 기술 제공
네트워크 가상화
특징
하드웨어 어플라이언스 형태로 존재해 왔던 L2, L3, L7 스위치, 네트워크 방화벽, 보안 장비들을 가상 머신으로 구현하고, 네트위킹 자원들이 하나의 공유된 물리적인 환경에서도 내부적으로는 가상화를 통해 분리되어 동작하게 함
역할
멀티 테넌시(Multi-Tenancy)를 갖춘 IaaS 구현의 기반 기술 제공

 

 

서버가상화

시스템 자원을 공유(pool & share)함으로써 전체적인 시스템의 활용도를 증대시킬 수 있고, 자동화 기술과 함께 적용함으로써 시스템 사용자의 서비스 수준을 보다 향상시켜 줄 수 있다.

하이퍼바이저 : 가상화를 해주는 장치 또는 칩

 


<서버 가상화 기술>

 

하이퍼바이저(Hypervisor)

  • 프로세서나 메모리와 같은 다양한 컴퓨터 자원에 서로 다른 각종 운영 체제(OS)의 접근 방법을 통제하는 얇은 계층의 소프트웨어
  • 다수의 OS를 하나의 컴퓨터 시스템에서 가동할 수 있게 하는 소프트웨어로 중앙 처리 장치(CPU)OS 사이에 일종의 미들웨어로사용 됨
  • 하나의 컴퓨터에서 서로 다른OS를 사용하는 가상 컴퓨터를 만들 수 있는 효과적인 가상화엔진
Bare-Metal(native) Hypervisor
Hosted Hypervisor
  • Host OS가 필요없다.
  • Host OS가 없어 오버헤드가 적다.
  • 각 VM별 관리가 유연하다.
  • 자체적인 관리 기능이 없어 별도의 관리 솔루션이 필요하다.
  • Host OS가 필요하다.(리눅스, 윈도우 등)
  • Host OS 상에 가상 머신을 배치하므로 오버헤드
  • 가 발생한다.
  • VM 생성이 간단하다.
  • 다양한 관리 솔루션이 있다.

 

 

 

호스트 OS 가상화 vs 하이퍼바이저 가상화

 

 

 

가상화유형

 전 가상화 (full-virtualization)

시스템 전체를 완전히 가상화 하여 시스템의 Bios부터 CPU, Memory, I/O 등을 완전히 에뮬레이션 하여 가상화 하는 방법

장점
단점
하드웨어를 완전히 가상화 하기 때문에 Guest OS에 아무런 수정없이 Windows, Linux까지 다양 한 OS를 이용할 수 있다.
가상머신의 유지보수가 쉽다.
전 가상화를 실현하기 위해 CPU의 VT(Virtualization Technology)를 이용하므로 성 능의 저하가 발생한다는 단점이 있다.

 

 

– 반 가상화 (para-virtualization)

하드웨어 전체를 가상화 하는 대신에 가상화가 적용된 리눅스 커널을 시스템 부팅 시 적용하는 것으로 모든 장치를 가상화 하는 것은 아님

 

장점
단점
가상머신이 직접 하드웨어를 제어하는 것이 아니 라 하이퍼바이저에게 의뢰, 하이퍼바이저가 제어 를 하기에 높은 성능을 유지할 수 있다.
반 가상화를 실현하기 위해서는 가상머신 OS의 커널 일부분을 수정해야 한다.
가상머신 유지보수가 어렵다. (가상머신 비밀번 호 분실 시 복구 불가능)

 

요즘에는 반가상화 전가상화 사이에 차이가 크게 사라짐 

 

KVM

  • –  Kernel-based Virtual Machine의 약자
  • –  http://www.linux-kvm.org
  • –  오픈 소스 소프트웨어
  • –  x86 서버 기반의 전 가상화 솔루션 (Using Intel VT or AMD-V)
  • –  게스트 운영체제의 수정이 필요 없음
  • –  Using QEMU
    • QEMU 는 가상화 에뮬레이터
    • 게스트 OSI/OQEMU를 통해 제공한다.
  • –  VM이 새로운 프로세스와 QEMU 프로세스를 이용하여 실행된다는 단점이 있음 (오버헤드 발생)
  • –  ESX Server, Xen Server 등과 같이 전용 하이퍼바이저가 아닌 Linux 자체를 호스트 OS로 이용
  • –  RHEV (RedHat Enterprise Virtualization) 솔루션의 기반

KVM 아키텍처

 

 

Xen

서버 가상화 기술

  • –  캠브리지 대학교의 연구 프로젝트로 개발
  • –  http://www.xen.org
  • –  오픈 소스 소프트웨어
  • –  x86 서버 기반의 반 가상화 솔루션 (Paravirtualizing VMM-Virtual Machine Monitor)
  • –  게스트 운영체제의 수정이 필요함
  • –  전 가상화에 비해 처리에 대한 오버헤드가 적다.

하드웨어 기술(Intel VT or AMD-V)이 발전함에 따라 성능 차이가 줄어들고 있음

  • –  x86 서버 기반의 전 가상화 솔루션(Intel VT or AMD-V)에서는 HVM(Hardware Virtual Machine)을 구현할 수 있다.
    • 반가상화/전가상화모두구현가능
  • –  Citrix Xen Server 솔루션의 기반

Xen 아키텍처

'Network > [Cloud]' 카테고리의 다른 글

[Cloud] Telemetry  (1) 2022.12.10
[Cloud] 도커 기본 명령어  (0) 2022.12.05
[Cloud] 도커란?  (0) 2022.12.05
[Cloud] 1. 클라우드 컴퓨팅이란?  (0) 2022.11.25

+ Recent posts