SharedIT | 묻고 답하기(AMP)

VDI 개념과 컨테이너 개념을 알고싶습니다.

안녕하세요.

가상화 공부중인데 의문점이 있어 문의드립니다.

  • 1.VDI는 물리적인것을 가상화시키는 것이고

  • 2.컨테이너는 가상화 공간에서 다시 가상화시키는 개념인가요?

  • 3.물리적인것을 컨테이너로 가상화가 가능한가요?

초보적인  질문드려죄송합니다.

Tags : 태그가 없습니다.

8개의 답변이 있습니다.

쿨가이
  0 추천 | 4년 이하 전

VDI와 컨테이너의 공통점과 차이점을 이해하는게 개념접근이 쉬울것 같습니다.

공통점 - 가상화

차이점 - OS 포함여부(포함 VDI, 제외 컨테이너)

등장배경

물리환경을 가상환경으로 필요성 > VDI. (but, OS 종속구조로 오류, 배포문제등 발생) > 그래서 컨테이너

Genghis Khan
  0 추천 | 4년 이하 전
1)VDI 중앙에서 가상화로 동작하는 서버의 자원을 활용해 사용자별로 가상의 데스크탑과 데이터 저장공간을 제공하는 솔루션으로, 특히 해킹의 위험으로부터 안전하며 데이터 유출을 원천 봉쇄할 수 있다. 2)컨테이너 컨테이너는 모듈화되고 격리된 컴퓨팅 공간 또는 컴퓨팅 환경, 다시 말해 어플리케이션을 구동하는 환경을 격리한 공간을 의미 ​ - 기본적으로 가상화를 위해 하이퍼바이저와 게스트 OS가 필요했던 것과는 달리, 컨테이너는 운영 체제를 제외하고 어플리케이션 실행에 필요한 모든 파일만을 패키징(Packaging)한 형태. 그만큼 기존의 가상머신에 비해 가볍고 빠르게 동작이 가능
wansoo
  0 추천 | 4년 이하 전

VDI는 가상의 데스크 탑을 사용할 수 있게 해 주는 환경이라고 보면 되지 않을까 싶어 보이고요.

제 생각엔...

VDI를 위해서 가상 컴퓨터가 필수는 아니라는 생각이 드네요.

요즘 추세가 가상 컴퓨터에, 클라우드 기반의 솔루션이 기본이다 보니, VDI도 가상 컴퓨터 기반에서 작동되는게 기본이긴 하지만... VDI를 위해서 반드시 가상 컴퓨터가 있어야 하는 건 아니라 생각되고요.

VDI는 가상 데스크탑을 이용해서 장소에 관계없이 자신의 작업 환경을 사용할 수 있게  해주는 기반 환경이라 생각하면 되지 않을까 싶네요.

여기서 말하는 가상 데스크 탑이 가상 컴퓨터를 말하지는 않겠고요. 

예를 들어 가상 현실이라 해서 가상 컴퓨터를 이용한 현실을 의미하는건 아닌것과 같은 의미가 되겠고요.


가상 컴퓨터와 컨테이너의 가장 큰 차이점은...

OS (운영체제)가 분리되었냐, 분리되지 않았냐로 보면 될것 같네요.

가상 컴퓨터는 하이퍼바이저란게 있고, 이 하이퍼 바이저 위에 여러개의 운영체제들이 가상 컴퓨터로해서 구동되는 형태가 되겠고요.

컨테이너는 한개의 OS를 공유하면서 사용하는 라이버러리와 런타임 등 실행 환경들만 서로 분리되어 작동되는 형태가 됩니다.

가상 컴퓨터는 하드웨어적으로 가상화를 지원하는 CPU를 사용해야 사용할 수 있겠고요.

요즘 나오는 대부분 CPU들은 기본적으로 가상화를 지원하기 때문에 특별히 문제될거는 없겠지만...

컨테이너는 OS 아래에서 작동되는 것이라 가상 컴퓨터보다 하드웨어에 덜 민감하다고 할 수도 있을 것 같기도 하고요.

독립적인 환경 및 자원 분리 관점에서 본다면 가상 컴퓨터가 제대로된 방안을 마련해 줄 수 있겠지만, 가상 컴퓨터는 자원 소비가 많다보니, 가상 컴퓨터 갯수가 널어 날수록 심각한 자원 고가 문제를 유발할 수 있겠고요.

컨터이너는 단일 OS 아래에 작동되는 실행환경만 분리 시켜 주기 때문에 독립적인 실행 환경과 자원 분리의 장점을 어느 정도 충족 시켜 주면서도 가상 컴퓨터 보다 훨씬 가볍게 많은 컨테이너를 동시 수용할 수 있게 해 줄 수 있다는 장점을 가져다 줄 수 있겠고요.

컨테이너로는 Docker와 LXC에서 발전한 LXD가 유명하고요.

도커보다 LXD가 성능이 더 좋다고 하더군요.

낭만생선
  0 추천 | 4년 이하 전

어떤 목적으로 어떻게 쓰이는지 생각해 보시면 개념 잡기 편하실것 같아요.

  • 1.가상화(VDI포함) : 서로 다른 물리 서버에서 파일 형태의 논리적인 서버들을 구동 시킵니다.

        -  IBM 서버에서든 HP 서버에서든 DELL 서버에서든 가상화 서버(VM)은 하드웨어적인 특성을 타지 않고 구동을 시킬수 있는것이죠.

이기종 장비간 이중화나 클라우드 환경에서 자유로울수 있습니다.


2. 컨테이너 : 서로다른 OS 환경에서 Application을 구동 시킵니다.

        -  JAVA나 닷넷 프로그램을 구동 시키기 위해선 이런 저런 기반 프로그램들을 설치 하고 환경 설정을 해야하죠/.

           앞서 가상화의 VM들은 이기종 하드웨어에서 하드웨어 제약에 자유롭다고 했는데

컨테이너는 이런 서로다른 OS 환경에 자유롭습니다. 

Docker라는 컨테이너 프로그램이 설치 되어 있으면 가상화된 어플리케이션을 다른 환경 설정없이 바로 구동 시킬수 있습니다.

A라는 서버에서 구동중이던 Application이 죽으면 바로 B 서버로 구동 시켜야 하는데

컨테이너를 이용하면 그상태 그대로 구동 시킬수 있는것이죠.


요약

VDI등의 가상화 : 서버를 전체를 파일로 논리적 가상화

Docker 같은 컨테이터 : 서버안에서 Application 부분만 통으로 가상화



차바라기
  0 추천 | 4년 이하 전

아래 사이트 정리가 잘되어져 있네요 참고 하시면 될듯한요

http://www.itworld.co.kr/t/62077/VDI/103469

양성환
  0 추천 | 4년 이하 전

가상화 기술기반으로만 보자면 

프라이빗 가상화 기반을 1세대

퍼블릭 클라우드를 2세대

컨테이너 기반을 3세대 로 생각하면 가장이해가 쉽습니다.

서버가 할당해줄 자원의 리소스사용정도로 보구요.


양성환
  0 추천 | 4년 이하 전

왜 2,3세대냐면 결국 OS가 차지하는 부분때문에 원하는 자원을얼마나 쓸수있냐의 문제로 가게됩니다.

일명솔루션의 경우 물리설정장비의 작으면 80%정도로 보수적으로 잡구요.

퍼블릭클라우드를 90%정도로표현합니다.

컨테이너는 98~99%라고 하지요.


양성환
  0 추천 | 4년 이하 전

실제로는 같은개념인데,2세대와 3세대 정도로 생각하고 용도의 차이정도로 구분도 가능합니다.

둘다 가상화인데, VDI는 서버의 어플리케이션상에서 올라갑니다 vmwarw,citrix,hyper-v등을이용하고 주로 OS를 가상화하는 용도이고, 컨테이너는 서비스를 가상화하는 개념으로 마이크로서비스와같이 세분화된 기능별로 작게쪼개는겁니다.OS가 별도로존재하지않고,부모OS에 의존하는 형태에 서비스만 올리는거지요.