신입개발자 Linux 교육

윤동기·2023년 1월 30일
0

Linux

목록 보기
1/9
post-thumbnail

1.1 가상화(Virtualization)란?

가상화(Virtualization): 한줄 요약

하나의 물리적 서버에서 여러 운영체제와 애플리케이션을 실행할 수 있도록 하는 소프트웨어 기술

  • 텍스트물리적인 컴퓨팅 자원을 사용자로 부터 은폐하고 논리적인 대체 리소스를 제공하는 기술

  • 논리적으로 대체된 리소스로 하나의 완전한 논리적 컴퓨터를 만들어 낸 결과물을 가상화머신(Virtual Machine, VM)/가상호스트(Virtual Host)/가상서버(Virtual Server)라 부른다.

1.2 가상화의 장/단점

장점
- 유연성 : 동일한 하드웨어에서 여러 운영체제를 동시에 실행 할 수 있다.
- 민첩성 : 하나의 운영체제에서 다른 운영체제로의 신속한 변경이 가능하다.
- 내결함성 : 물리적서버에 자애가 발생하더라도 운영중인 가상서버를 신속하게 정상운영상태의 환경으로 이전 할 수 있다.
- 비용효율성 : 물리적 서버의 수, 전기요금, 유지보수비용을 절감 할 수 있다.
단점
- 성능열화가 발생 할 수 있다.
- 실행하고자 하는 어플리케이션이 가상환경에서 정상적인 작동을 검증해야 한다.
- 물리환경과 가상환경 양쪽에 대한 기술 노하우가 필요해 진다.
- 가상환경 고유의 보안문제에 대비해야 한다.

1.3 가상화 대상 컴퓨팅 자원

1.4 가상화 형태별 구분

1.5 VM(Virtual Machine)

  • 하이퍼바이저(Hypervisor)
    • 호스트컴퓨터에서 다수의 운영체제를 실행하기 위한 논리적 플랫폼. VMM(Virtual Machine Monitor)

하이퍼바이저의 종류

  • Type1 네이티브(Native/Bare-Metal)

    • Hypervisor는 Host OS를 필요로 하지 않고 물리적 하드웨어 위에서 실행된다.
    • 하이퍼바이저가 다수의 VM을 관리하는 형태.

    Pros and Cons

    • Pros
      하이퍼바이저에서 직접 하드웨어 제어 가능 → 상대적으로 오버헤드 적음 (직접 관리 → 리소스 관리 유연)
      Type 2에 비해 향상된 성능
    • Cons
      별도의 관리기능 필요
      여러 하드웨어 세팅이 필요함 (번거로움)

    하드웨어를 컨트롤할 OS가 없어 별도의 관리 기능이 필요하며 'DOm0' 라는 관리 머신이 같이 구동된다.
    DOm0에서 일 처리량에 따라 크게 2가지로 나뉜다. (전가상화, 반가상화)

    • 전가상화(Full Virtualization)
      • CPU의 가상화 기술을 필요로 함 : Intel-VT, AMT-V
      • 대표SW : VMWare ESX Serverm MS Hyper-V
    • 반가상화(Pare Virtualization)
      • 게스트OS를 일부 수정해야 함
      • 대표SW : VMWare VMWareWorksation, MS VirtualPC, Oracle VirtualBox
  • Type2 호스트형(Hosted)

    • Host OS를 필요로하고 Hypervisor는 HostOS위에서 실행된다.
    • 개인 PC 환경에서 여러 운영 체제를 구동하려는 개인 사용자에게 이상적.
    • 대표SW : VMWare VMWareWorksation, MS VirtualPC, Oracle VirtualBox

    호스트형의 구분의 모호함

    • 하이퍼바이저의 한 종류로 구분 : Native Hypervisor vs. Hosted Hypervisor
    • 가상머신 구현방법의 한 종류로 구분: Hypervisor VM vs. HostOS/GeustOS

1.6 VM(Virtual Machine)의 구조

1.7 Container

  • OS를 호스트 OS와 공유하기 때문에 VM마다 OS를 설치 할 필요가 .
  • OS설치가 불필요 하므로 사용 시작까지의 시간이 매우 짧다.
  • 컨테이너형 가상화는 부팅과정이 불필요하므로 어플리케이션의 시작이 매우 빠르다.
  • 호스트OS에 작성된 전용 NIC와 통신한다.
  • 가상화된 하드웨어와 하이퍼바이저를 사용해야하는 VM에 비해 컨테이너 런타임은 하나의 프로세스이므로 오버헤드가 거의 없다.
  • 대표SW: OpenVZ, LXC, Docker

참고
https://www.redhat.com/ko/topics/virtualization/what-is-a-hypervisor
https://velog.io/@bonjaski0989/%ED%95%98%EC%9D%B4%ED%8D%BC%EB%B0%94%EC%9D%B4%EC%A0%80-Hypervisor
https://judo0179.tistory.com/m/36

profile
꿈꾸는 개발자

0개의 댓글