Mesos導入の最良の基盤
現在、新しいApache Mesosクラウドセットアップのアーキテクチャを設計しています。目標は、異なるスタックを同じアーキテクチャに移動することでシステムを統合することです。主なワークロードは、Apache Sparkを使用したビッグデータ分析と、Webサーバー、メールサーバーなどの企業インフラストラクチャです。 アイデアは、Mesos(Marathon / Chronos、AuroraまたはSingularity)で使用可能なスケジューラーの1つで実行されているDockerコンテナーでWebサービスを実行することです。したがって、これは最初のMesosフレームワークグループになります。その隣に、Apache Sparkフレームワークとデータストレージ用のいくつかのデータベースフレームワークがあります。これはMesosフレームワークの2番目のグループになります。テストのためにすべてを並行して実行した後、詳細を選択します。 ただし、Mesos自体を実行する基準を決定するのは困難です。理想的には、できる限り金属の近くで実行する必要があります。また、オーケストレーションソリューションを使用して、Mesosおよびフレームワークデーモンが常に障害時に実行/再起動されるようにします。検討しているオプションは次のとおりです。 1)Mesosとフレームワークを最小限のOSでDockerコンテナーとして実行する。この点で、私たちは現在、CoreOSとFleetに傾いています。 2)Ubuntu / DebianサーバーでMesosとフレームワークを直接実行します。このオプションでは、フォアマンとパペットに傾いています。 質問については、重要な順に、次の解決策を特定しようとしています。 構成するのが最も簡単です 維持および更新を維持するのが最も簡単です オーバーヘッドが最も少ない これまでにCoreOSを使用したことはありませんが、私たちが向かっているように見えるオプションです。私がこれに関して抱えている大きな(主観的な)問題の1つは、DockerコンテナーでMesosを実行してから、MesosでDockerコンテナーを実行することです。これは「不潔」で間違っているようです。これはメリットのない考慮事項ですか? 同様の考え方は、レイヤー間の冗長性にも関係しています。私がどこから来たのかを説明するために、Mesosが金属の上で実行される実際のOSであるなら、私は好むでしょう。使用する基盤に関係なく、アーキテクチャの複数の層(つまり、CoreOS&Fleet&SystemD == Mesos&Marathon&Chronos)で同じ意図された機能が得られるようです。これは避けられませんか? 基準を考慮して、検討に失敗したMesosの下のレイヤーを実行する他の良いオプションはありますか?