1. 가상화(virtualization)
    • 단일 컴퓨터의 하드웨어 요소를 다수의 VM으로 분할할 수 있도록 해주는 기술
    • resource를 효율적으로 사용할 수 있음
    • 다수 컴퓨터를 managing하는데 효율적임
  2. 가상화의 역사
    • 가상화 등장 전

        - OS 정의 : 시스템 하드웨어 자원과 소프트웨어 자원을 운영, 관리하는 프로그램
        - 특권 명령 : 특정 프로그램이 하드웨어의 요소들과 소통할 수 있는 명령 (OS한정)
              
        - OS -> 1개 하드웨어당 1개 OS (OS는 특권명령이 필요)
        - 일반 프로그램 -> 1개 하드웨어당 다수 프로그램 (일반 프로그램은 특권명령이 필요 없음)
        => 즉, 1개의 하드웨어에서 하나의 OS만 실행 가능 (=Bare-Metal)
                                        app app app
                                        -----OS-----
                                        --Hardware--
      
  • 1세대 가상화(fully Emulated)
    •   - 모든 system 요소가 emulator 안에서 돌아감
        - CPU, disk, 마더보드 등 모든 요소를 emulator로 구현하여 OS와 연동
        - 프로그램으로 emulate 되기 때문에 OS, Hardware의 도움을 받을 수 없어 엄청나게 느림
      
  • 2세대 가상화(Paravirtualization)
    •   - Guest OS(가상화 환경 안의 OS)는 Hypervisor와 통신
        - Hypervisor : OS와 hardware 사이에 존재하는 가상화 매니저
        - 즉,hardware의 지원 받아 속도 향상
        - 몇 몇 요소의 경우 여전히 emulator가 필요함 (모든 걸 hypervisor가 지원하진 않음)
      
  • 3세대 가상화(HVM, Hardware Virtual Machine)
    •   - 하드웨어에서 직접 가상화를 지원 (hypervisor x)
        - 직접 Guest-OS가 하드웨어와 통신 = 빠른 속도(near bare-metal)
      
  1. 가상화가 cloud에서 중요한 이유
    • AWS cloud 환경에서 resource를 작은 단위로 빠르게 구성할 수 있는 원동력이 가상화
    • 즉, AWS에서 user마다 컴퓨터를 할당해 주는 것이 아닌 이미 구축된 가상화 가능한 서버의 한 부분을 할당해 주는 것

태그:

카테고리:

업데이트: