0%

OpenShift Origin v3 on Kubernetes - Part1: Requirements

CloudFoundryに押され気味だったのですが、DockerやKubernetesへの対応が速いOpenShiftが最近おもしろそうです。
Red Hatが持つ知識と経験のおかげで、Kubernetesは企業向けとして実用可能になったとか。
Kubernetesとの統合を試すためにOpenShiftのドキュメントを読み始めたのですが、バージョンの違いがよくわかりません。OpenShift Orignは現在3と4があります。

OpenShift Origin v3と OpenShift Origin V4

08-14に公開されたoriginのリポジトリはOpenShift v3用です。

一方のOpenShift V4は、07-20にAnnouncing the Release of OpenShift Origin V4リリースされています。
リポジトリは以前からあるorigin-serverです。

OpenShift v3がDockerとKubernetesを基盤にしたthird generationv3なので、V4の前のV3と明確な違いがある気がするのですが。

さらに、oo-install User’s Guideを読むと次のように書いてあります。

OpenShift Origin version 4 is supported on Red Hat Enterprise Linux (RHEL) 6.4 or higher and CentOS 6.4 or higher, 64 bit architecture only. This version is not supported on Fedora, RHEL 7.x or CentOS 7.x.

V4はRHEL7.xでは動作しないようです。6.4 or higherですが、7.xはサポートされないです。RHEL7からDockerが採用されたのでV4が動作しないのか、ドキュメントが適当な気がします。

Kubernetesと統合する場合はOpenShift Origin v3を使う

今回の目的はKubernetesと統合して使うことなので、OpenShift Origin v3を使います。
従って、以下のワンライナーでインストールしません。

sh <(curl -s https://install.openshift.com/)

KubernetesのpluginとしてのOpenShift

Kubernetesのプラグインとして、OpenShift Origin v3はGoで書かれています。
これだけではOpenShift Origin v3がどんな役割を果たすのかよくわかりません。
Docker Hubからイメージをpullするだけなら、普通のKubernetesと変わらないです。

OpenShift 3.x System Designを読むと、ユーザーがgit pushするとイメージをビルドしてDocker Registryにpushしてくれるところが、OpenShiftの提供するapplication centricな役割のようです。

従って、Deisなど他のPaaSと同様な位置づけになります。Deisはfleetでスケジュールして、OpenShiftの場合はPodでスケジュールするところが違います。粒度の細かいコンテナのスケジュール管理にはPodが向いていますが、Heroku的なgit pushによるデプロイの概念とPodのグループをどうつながるのか気になります。

まとめ

一応今日の理解をまとめます。ちゃんと理解できたら書き直します。

  • OpenShift Origin v3 : DockerとKubernetesベース: origin
  • OpenShift Origin V4: 従来のGearベース: origin-server