ApacheのMesosとGoogleのKubernetesの違いは何ですか?質問する

ApacheのMesosとGoogleのKubernetesの違いは何ですか?質問する

Apache の Mesos と Google の Kubernetes の違いは正確には何でしょうか? どちらもサーバー クラスター管理ソフトウェアであることは理解しています。主な違いはどこにあるか、また、どのような場合にどちらのフレームワークが好まれるのかを詳しく説明していただけますか?

なぜ使いたいのかMesosphere 上の Kubernetes?

ベストアンサー1

Kubernetes は、仮想マシンの世界、つまり「オンザメタル」シナリオに「Google スタイル」のクラスタ管理機能をもたらすオープンソース プロジェクトです。ユーザーに代わって管理される軽量コンピューティング「ノード」を提供する最新のオペレーティング システム環境 (CoreOS や Red Hat Atomic など) と非常にうまく連携します。Kubernetes は Golang で記述されており、軽量、モジュール式、移植可能、拡張可能です。私たち (Kubernetes チーム) は、さまざまなテクノロジー企業 (Mesos オープンソース プロジェクトをキュレートする Mesosphere を含む) と協力して、Kubernetes をコンピューティング クラスタと対話する標準的な方法として確立しようとしています。その目的は、Google での経験に基づいて、クラスタ アプリケーションを構築する際に必要となるパターンを再現することです。これらの概念には次のようなものがあります。

  • ポッド— コンテナをグループ化する方法
  • レプリケーションコントローラ— コンテナのライフサイクルを処理する方法
  • ラベル— コンテナを検索してクエリする方法、そして
  • サービス— 共通の機能を実行するコンテナのセット。

したがって、Kubernetes だけで、シンプルで、簡単に起動でき、移植性と拡張性に優れたものが手に入り、可能な限り軽量な方法で管理するものに「クラスター」という名詞が追加されます。クラスターでアプリケーションを実行すると、個々のマシンについて心配する必要がなくなります。この場合、クラスターは VM と同様に柔軟なリソースです。論理的なコンピューティング ユニットです。すばやく簡単に、電源を入れたり、使用したり、サイズを変更したり、電源を切ったりできます。

Mesos については、基本的なビジョンの点ではかなり重複していますが、製品はライフサイクルのかなり異なる段階にあり、スイートスポットも異なります。Mesos は、多数の異なるマシンを 1 つの論理コンピューターにまとめる分散システム カーネルです。Mesos は、多くの物理リソースを所有して大きな静的コンピューティング クラスターを作成する世界のために生まれました。Mesos の優れた点は、多くの最新のスケーラブルなデータ処理アプリケーション (Hadoop、Kafka、Spark) が Mesos 上で適切に動作することです。また、これらすべてを、新しい時代のコンテナー パッケージ アプリとともに、同じ基本リソース プール上で実行できるのも便利です。Kubernetes プロジェクトよりも多少重いですが、Mesosphere などの人々の取り組みにより、管理がますます容易になっています。

ここで本当に興味深いのは、Mesos が現在、Kubernetes のコンセプトの多くを追加し、Kubernetes API をサポートするように適応されていることです。そのため、必要に応じて Kubernetes アプリにさらに多くの機能 (高可用性マスター、より高度なスケジューリング セマンティクス、非常に多数のノードに拡張する機能) を追加するためのゲートウェイとなり、実稼働ワークロードの実行に適しています (Kubernetes はまだアルファ状態です)。

尋ねられたら、私はこう答える傾向があります。

  1. Kubernetes は、クラスタリングの世界に初めて触れる方にとって、始めるのに最適な場所です。Kubernetes は、クラスタ指向の開発を試して実験を始めるための最も迅速で簡単、かつ軽量な方法です。Kubernetes は、さまざまなプロバイダー (Microsoft、IBM、Red Hat、CoreOs、MesoSphere、VMWare など) によってサポートされているため、非常に高い移植性を備えています。

  2. 既存のワークロード (Hadoop、Spark、Kafka など) がある場合、Mesos はそれらのワークロードを相互にインターリーブし、Kubernetes アプリなどの新しいものをいくつか混在させることができるフレームワークを提供します。

  3. Mesos は、Kubernetes フレームワークのコミュニティによってまだ実装されていない機能が必要な場合に、エスケープバルブを提供します。

おすすめ記事