>  기사  >  운영 및 유지보수  >  VM 가상 머신과 도커의 차이점은 무엇입니까

VM 가상 머신과 도커의 차이점은 무엇입니까

青灯夜游
青灯夜游원래의
2021-11-29 11:33:4115512검색

차이점: 1. Docker 컨테이너는 프로세스 기반 격리를 제공하는 반면 VM 가상 머신은 리소스의 완전한 격리를 제공합니다. 2. Docker는 호스트 운영 체제의 커널을 사용하는 반면 VM 가상 머신은 독립 커널을 사용합니다. 는 두 번째 수준이고 VM은 분 수준입니다. 4. Docker의 통합은 VM보다 낫습니다.

VM 가상 머신과 도커의 차이점은 무엇입니까

이 튜토리얼의 운영 환경: linux5.9.8 시스템, docker-1.13.1&&VMware Workstation16.0.0.16894299 버전, Dell G3 컴퓨터.

Docker와 VM 가상 머신의 차이점

1. 본질적인 차이점:

VM(VMware)은 호스트 머신과 호스트 머신이 동작하는 기반으로 가상 레이어와 가상 머신을 생성합니다. 시스템화된 운영 체제와 가상화된 웨어하우스를 만든 후 애플리케이션을 설치합니다.

Container(Docker 컨테이너)는 호스트 시스템과 호스트 시스템 운영 체제에 Docker 엔진을 생성한 다음 해당 엔진을 기반으로 애플리케이션을 설치합니다.

Docker 컨테이너는 프로세스 기반 격리를 제공하고 VM 가상 머신은 리소스의 완전한 격리를 제공합니다. 컨테이너는 호스트 운영 체제의 커널을 사용하는 반면, 가상 머신은 별도의 커널을 사용합니다.

2. 사용상의 차이점:

크기:

1. 가상 머신에서 우분투가 차지하는 메모리:                             Docker 컨테이너의 우분투 이미지 파일이 차지하는 메모리:

시작:

Docker는 운영 체제와 하드웨어 리소스를 가상화하는 대신 호스트 컴퓨터의 운영 체제에서 Docker 엔진을 생성하고 호스트 컴퓨터의 운영 체제에서 직접 하드웨어 리소스를 호출하므로 작업이 빠릅니다.

 여기에는 실제로 우분투 가상 머신을 설치하고 Docker 우분투 이미지 파일을 가져오는 작업이 포함됩니다. Docker의 시작 속도는 두 번째 수준인 반면 VM은 분 수준입니다. 가상 머신을 시작하는 데는 2분 이상이 소요되는 반면 Docker는 2초밖에 걸리지 않습니다.

통합:

                    Docker는 VM보다 더 나은 통합을 제공합니다.

Docker 기능

1)

빠른 시작

사용자는 단 몇 분만에 자신의 프로그램을 "Docker화"할 수 있습니다. Docker는 "기록 중 복사" 모델을 사용하므로 애플리케이션 수정이 매우 빠르게 "코드가 원하는 대로 변경됩니다"라는 영역에 도달한다고 할 수 있습니다.

나중에 애플리케이션을 실행할 컨테이너를 만들 수 있습니다. 대부분의 Docker 컨테이너는 1초 이내에 시작됩니다. 하이퍼바이저의 오버헤드가 제거되므로 Docker 컨테이너는 높은 성능을 발휘하는 동시에 동일한 호스트에서 더 많은 컨테이너를 실행할 수 있어 사용자가 시스템 리소스를 최대한 활용할 수 있습니다.

2)

책임의 논리적 분류

Docker를 사용하면 개발자는 컨테이너에서 실행되는 애플리케이션에만 신경 쓰면 되고, 운영 및 유지 관리 담당자는 컨테이너 관리 방법에만 신경 쓰면 됩니다. Docker 설계의 목적은 개발자가 코드를 작성하는 개발 환경과 애플리케이션이 배포되는 프로덕션 환경 간의 일관성을 향상시키는 것입니다. 이를 통해 "개발 중에는 모든 것이 정상입니다. 운영 및 유지 관리 문제임에 틀림없습니다(테스트 환경은 정상이며 온라인에 접속한 후 문제가 있으면 운영 및 유지 관리 문제임에 틀림 없음)"라는 종류를 줄입니다

3) 빠르고 효율적인 개발 수명 주기

Docker의 목표 중 하나는 개발, 테스트, 배포 및 온라인 운영에 이르는 코드 주기를 단축하여 애플리케이션을 이식 가능하고 구축하기 쉽고 협업하기 쉽게 만드는 것입니다. (일반인의 관점에서 도커는 많은 물건을 담을 수 있는 상자와 같습니다. 이러한 물건이 필요하면 상자에서 하나씩 꺼내지 않고 큰 상자에서 직접 꺼낼 수 있습니다.)

4) 서비스 지향 아키텍처가 권장됩니다.

Docker는 서비스 지향 아키텍처와 마이크로서비스 아키텍처도 권장합니다. Docker는 단일 컨테이너가 하나의 애플리케이션 또는 프로세스만 실행하여 분산 애플리케이션 모델을 형성할 것을 권장합니다. 이 모델에서 애플리케이션 또는 서비스는 내부적으로 상호 연결된 일련의 컨테이너로 표시될 수 있으므로 분산 배포 애플리케이션, 애플리케이션 확장 또는 디버깅이 가능합니다. 매우 간단해지며 프로그램 자체 검사도 향상됩니다. (물론 하나의 컨테이너에서 여러 애플리케이션을 실행할 수 있습니다)

추천 학습: "docker 비디오 튜토리얼

"

위 내용은 VM 가상 머신과 도커의 차이점은 무엇입니까의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.