kubernetes、rancher、mesosにはどのような機能的な違いがありますか?


16

一般的なコンテナオーケストレーションツールであるkubernetes、rancher、mesosの主な機能の違いは何ですか?

どちらを選択するように導いたのでしょうか?


うーん、これはそのままでは広すぎるかもしれません。「etc」を削除し、特にkuber / rancher / mesosについてのみ質問するようにタイトルを変更すると、おそらく良い質問になるでしょう。
Peter G

2
あなたの提案に従って、質問をもう少し限定的に編集しました。
-tayworm

他のゲームを変えるオーケストレーションツールについて聞いてみたいと思いますが。
-tayworm

回答:


16

まず第一に、Rancherには実際にKubernetes Mesos の両方の実装が含まれています。ただし、DockerのSwarmに大きく基づいたCattleという独自のシステムを作成しました。これについては、Rancherのセクションで触れます。

第二に、それぞれが同様の基本機能(負荷分散、リソース分離など)を提供するため、重要でない限り、これらの共通機能の違いに焦点を当てるのではなく、それらがどのように異なるかを詳しく調べます。

クベルネテス

非常にパフォーマンス重視で、クラウドストレージオーケストレーションも備えています(Mesosにはない機能ですが、プラグインはおそらくあります)。個々のコンテナが必要とするリソース使用量の自動スケーリングを可能にするAPIオプションがあります(コンテナが他のコンテナに強くヒットしていない場合は逆になります)。

Kubernetesで重要なことは、他のコンテナオーケストレーションソフトウェアとは異なり、包括的な構成やあらゆる種類の包括的な自己修復を提供しないことです。代わりに、アプリレベルで簡単なロールバックシステムを使用して複数のアプリを継続的に展開することに焦点を当てています(その結果、使用時にマイクロサービスを調べたい場合があります)。

各アプリは小さなもので、個別に展開/構成できます。彼らはドキュメントで、Kubernetesは従来のPaaS(サービスとしてのプラットフォーム)システムではなく、仮想ハードウェアまたはデータベース用のミドルウェアがなく、アプリ自体を構築しないと述べています。(彼ら自身が言うように)手動のコンテナオーケストレーションの必要性をなくし、代わりにターゲットアプリの状態に向かって継続的に押すことでプロセスを自動化するように設計されています。

メソス

Kubernetesと比較したモノリシック。個々のサービスの管理も可能ですが、個々のサービスよりも全体像に焦点を当てています。Spark、Hadoopなどの組み込みミドルウェアを提供します。Mesosを最適に使用するには、簡単に拡張できるように設計されているため、多くのプラグインが必要です。

アプリケーションの管理をきめ細かく制御する必要がある場合(目的のプラグインがある場合や、ない場合はビルドするチームメンバーがある場合)、Mesosを使用することをお勧めします。

牧場主(および牛)

それ自体が前の2つのスーパーセットであり、両方の実装を備えているという点で、潜在的に最良のオプションです。また、管理ソフトウェアの複雑さを増すことはめったに良いことではなく、予期しない問題につながる可能性があるため、これはマイナス面と見なされることもあります。

Rancherには、ワンクリックで展開できるアプリケーションカタログがありますが、Kubernetesにはその設計哲学のためにありません。ただし、RancherにはKubernetesが実装されているため、これらの機能がKubernetesにない場合はRancherを使用できます。

牛は、関連するサービスをグループ化するスタックシステムに基づいています。また、同じ名前のDockerサービスに似た機能であるRancher Composeも収容されています。これはおそらく牛の最も興味深い部分であり、残りはかなり標準的なものです(ただし、シークレット管理はまだベータ版です)。Docker Composeの経験がある場合は、ここでそれを読んでください(私はそうではないので、おそらくそれについて書くのに最適な人ではありません)。

リソース:「Kubernetesとは」、「Rancherの概要」、「mesos.apache.org:Mesosとは」

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.