1

Python バインディングを使用して Mesos/Deimos クラスターを実行していますが、次のエラーが発生します。

F0719 03:26:17.994248 7 os.hpp:131] Expecting 'MESOS_SLAVE_PID' in environment variables

このエラーは、Mesos の Web インターフェイスのエグゼキュータのペイラーに表示されます。エラーの上の行は、executor スクリプトが実行を開始したことを示しています (私自身のログ メッセージ)。

エグゼキュータがエグゼキュータ Python スクリプトから実行されると、エラーが発生します。

driver.run()

MESOS_SLAVE_PIDまた、エラーは、環境変数が設定されることを期待する Mesos に関係しています ( https://github.com/apache/mesos/blob/master/src/exec/exec.cpp#L648を参照)。ただし、Deimos はデフォルトで (少なくともこの場合は) Docker コンテナー内でこの変数を設定していないようです (そうすべきだと思います)。

編集: これは Deimos 自体のバグのようです。これは私による関連するバグレポートです: https://github.com/mesosphere/deimos/issues/43

4

1 に答える 1

0

demos バイナリを直接実行しましたか? または、一部のフレームワークに executor_uri を提供しましたか。通常、executor が直接起動されることは想定されていないためです。executor_uri をフレームワークに提供することで、executor を指定します。したがって、フレームワークがタスクを開始するたびに:

1、フレームワークは他の情報とともに executor_uri をスレーブに送信します。2、スレーブは情報を使用してエグゼキュータを取得し、コンテナ化に環境をセットアップしてエグゼキュータを起動するように指示します。

参考までに: https://github.com/apache/mesos/blob/0ba6b89b7421d426709af5bf89fac138cf0ca63e/src/slave/containerizer/containerizer.cpp#L262

于 2014-08-05T20:20:29.397 に答える