2016-03-30 3 views
3

OpenShiftが何であるか、それが何をするのかをちょっと分かりました(Kubernetes自身に加えて)。OpenShiftは、コンテナをホストレベルで分離することで真のマルチテナントをサポートしていますか?

私の質問は、OpenShift Origin 1.1(OpenShift 3.1)の現在のリリースを指しています。

  • OpenShiftは、専用ホスト上の別々のテナントからコンテナを実行して真のマルチテナントをサポートしますか? (あなたがドッカー/コンテナのセキュリティ問題に慣れている場合)、あまり詳細に入るがなければ

は、それはあなたがコンテナ吹き出物または他の悪用によってのみに対して互いにテナントを保護することができることを、一般的な知識でなければなりませんホストレベルでコンテナ分離を行う

(私はこの電子ブックをDocker Securityに強くお勧めします)。

OpenShiftのドキュメントでは、プロジェクトとユーザーの概念のみが記述されていますが、Kubernetesのドキュメントでは特定のリソースの有効範囲を指定するための名前空間の概念のみが記載されています。

開発者や顧客向けのマルチテナントコンテナ/ PaaSプラットフォームとしてOpenShiftを使用した経験がある場合は、これに関するご意見やご意見をお寄せいただきありがとうございます。

+1

別個のホストを使用する必要があるというご意見は、主にDockerを単独で使用することに関連しています。 OpenShiftは、SELinux、ソフトウェア定義のネットワーキング、および他のメカニズムを使用して、Dockerだけでなくより優れたセキュリティ保護を提供します。 OpenShiftのプロジェクトは、Dockerの機能を超えるレベルの分離を提供します。 1つのプロジェクト内のアプリケーションでは、具体的に設定することができない限り、別のプロジェクト内のアプリケーションを表示することはできません。提供されているものは、別々のホストでこれらのアプリケーションを実行する必要なく、異なるプロジェクトで異なるユーザーを実行するのに適しています。 –

答えて

1

はい、異なるホスト上でコンテナを実行することによって、コンテナを分離した状態に保つことができます。

この方法は、スケジューラポリシーを設定することです。スケジューラは「タイムスケジューラ」ではなく、ポッドを実行する場所を決定するリソーススケジューラです。

異なるノード上で実行中のポッド(1つ以上のコンテナのセット)は、特に、アフィニティルールを使用して構成できます。

一般的にhttps://docs.openshift.com/enterprise/3.0/admin_guide/scheduler.htmlおよびhttps://docs.openshift.com/enterprise/3.0/admin_guide/scheduler.html#affinityを参照して、この設定の設定方法の詳細を確認してください。

https://github.com/kubernetes/kubernetes/blob/master/docs/design/podaffinity.mdにあるドキュメントでも、これについての洞察が得られます。

関連する問題