2013-05-30 14 views

답변

81

가장 큰 차이점은 프로젝트 인 Docker는 런타임 컨테이너에만 초점을 두는 반면 OpenShift (시스템)는 런타임 컨테이너와 REST API, 조정 및 웹 인터페이스를 모두 포함하여 개별적으로 배포 및 관리한다는 점입니다 컨테이너.

런타임 컨테이너 만 비교하면 OpenShift와 Docker는 모두 커널 격리 기능을 사용하여 테넌트 프로세스를 분리합니다. 기본적으로 LXC와 OpenShift를 통한 Docker의 경우 주로 SELinux 및 MCS (Multiple Category Security)를 사용합니다. 둘 다 cgroup을 사용하여 세입자의 CPU, 메모리 및 IO를 제한합니다. Upstream OpenShift는 장기간의 노력을 줄이기 위해 LXC를 고려하고 있습니다.

Docker는 고급 디스크 및 파일 복사시 쓰기 공유에 AUFS를 사용하므로 OpenShift는 이러한 시스템을 필요로하지도 않으며 호환되지 않습니다.

컨테이너 내부에서 OpenShift는 "카트리지"를 통해 기능 단위 (웹 서버, DBS)를 모델링합니다.이 시스템은 시스템 호출시 호출되는 쉘 스크립트 후크 집합입니다. API 설명은 here입니다. 카트리지는 도커 이미지와 거의 유사합니다.

Openshift는 브로커 (조정자)가 노드 (여러 테넌트 컨테이너를 호스팅하는 서버)와 통신하여 해당 컨테이너의 끝점을 호출하는 API에 대해서도 설명합니다.

추가 예정 : 2015 년 6 월부터 OpenShift Origin 1.0이 Docker 및 Kubernetes 위에서 실행되어 Docker 런타임에서 실행되는 다중 컨테이너 응용 프로그램을 빌드하고 개발할 수 있습니다. OpenShift는 Kube 및 Docker 위에 빌드, 이미지 워크 플로 및 프로모션 및 컨테이너 클러스터 작업을 추가합니다.

+1

감사합니다. – w00t

+2

@Clayton 깨진 링크. 카트리지 API에 대한 설명이 여기에 있습니다 (http://openshift.github.io/documentation/oo_cartridge_developers_guide.html). –

+0

링크를 수정하고 OpenShift와 Docker에 대한 자세한 정보를 추가했습니다. – Clayton

2

여기는 초보자를위한 최고의 설명입니다. https://deis.com/blog/2016/kubernetes-illustrated-guide/

이것은 농담이 아니며 때로는 우리가 실제로 이해할 수 있도록 어린이를 바라 볼 필요가 있습니다.

나는 그들이 심지어 비교할 만하다고 말하지 않을 것이다. Openshift는 kubernetes를 기반으로하는 redhat의 엔터프라이즈 솔루션입니다. Kubernetes는 도커 컨테이너로 작업을 구성하고 자동화하는 데 도움이되는 프레임 워크 일뿐입니다. 나는 비디오로 시작해서 낮은 레벨의 쿠페 넷을 살펴볼 것이다. 일단 편안하다면 openshift가 추가하는 기능을 살펴보십시오.

+0

OpenShift는 Kubernetes의 단순한 엔터프라이즈 버전이 아니며 많은 가치를 제공합니다 그 위에. Kubernetes 자체는 실제로 최종 사용자 제품이 아니며 컨테이너 관리에 도움이되는 단지 하나의 프로젝트입니다. Kubernetes와 함께 다른 프로젝트를 추가하여 개발자가 더 유용하게 사용할 수 있도록해야합니다. 예를 들어 메트릭, 통합 로깅, 빌드 및 배포 자동화 (Jenkins를 사용하여 선택적으로 수행). 이러한 모든 종류의 것들은 OpenShift로 상자에서 나옵니다. Kubernetes와 함께 직접 설치해야합니다. –

0

나는 지난 2 년 동안이 주제에 대한 몇 가지 흥미로운 수치를 발견 :