問題タブ [marathon]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
logging - 0.8.2 のログ レベルが正しく構成されていませんか?
私は marathon 0.8.2 と mesosphere docker イメージ (タグ v0.8.2) を使用しています。フラグをデーモンに渡して--logging_level warnいますが、まだすべてのヘルス チェックが通過していることがわかります (ログ レベル INFO)。
docker inspect のスニペット:
経由のパラメータps:
ただし、 を見るとdocker logs mesos_marathon、多くの情報が表示されます。
[INFO] [06/16/2015 15:49:25.302] [marathon-akka.actor.default-dispatcher-7] [akka://marathon/user/$f] ヘルス結果を受け取りました [Healthy(microbot.edb72ab0- 143e-11e5-8fb0-56847afe9799,2015-06-16T15:46:24.346Z,2015-06-16T15:49:25.206Z)]
[情報] [06/16/2015 15:49:25.302] [marathon-akka.actor.default-dispatcher-7] [akka://marathon/user/$f] 受信した健康結果:[Healthy(microbot.e6946214 -143e-11e5-8fb0-56847afe9799,2015-06-16T15:46:24.346Z,2015-06-16T15:49:25.206Z)]
[INFO] [06/16/2015 15:49:25.302] [marathon-akka.actor.default-dispatcher-7] [akka://marathon/user/$f] 受信したヘルス結果: [Healthy(microbot.ea257847) -143e-11e5-8fb0-56847afe9799,2015-06-16T15:46:24.346Z,2015-06-16T15:49:25.206Z)]
[INFO] [06/16/2015 15:49:25.302] [marathon-akka.actor.default-dispatcher-7] [akka://marathon/user/$f] 受信したヘルス結果: [Healthy(microbot.ff9ac8c5 -143e-11e5-8fb0-56847afe9799,2015-06-16T15:46:24.346Z,2015-06-16T15:49:25.207Z)]
[INFO] [06/16/2015 15:49:25.302] [marathon-akka.actor.default-dispatcher-7] [akka://marathon/user/$f] 受信した健康結果: [Healthy(microbot.edbf8e46 -143e-11e5-8fb0-56847afe9799,2015-06-16T15:46:24.346Z,2015-06-16T15:49:25.207Z)]
[INFO] [06/16/2015 15:49:25.303] [marathon-akka.actor.default-dispatcher-7] [akka://marathon/user/$f] 受信したヘルス結果: [Healthy(microbot.f888a2eb) -143e-11e5-8fb0-56847afe9799,2015-06-16T15:46:24.346Z,2015-06-16T15:49:25.208Z)]
[INFO] [06/16/2015 15:49:25.303] [marathon-akka.actor.default-dispatcher-7] [akka://marathon/user/$f] 受信したヘルス結果: [Healthy(microbot.edbc80f0 -143e-11e5-8fb0-56847afe9799,2015-06-16T15:46:24.346Z,2015-06-16T15:49:25.208Z)]
私は確かに何かが欠けています。
dns - mesos-dns、ポートを操作するためのベスト プラクティス
私は Service Discovery とクラスター化されたシステムにまったく慣れていません。Docker コンテナーのデプロイメントのために Mesos と Marathon を試し始めました。Marathon REST API と UI はうまく機能しているようです。
私の問題は、デプロイされたサービスの実際の発見です。テストの目的で、MongoDB テストクラスターで行ったように、Marathon を介して 3 つのインスタンスにスケーリングされた Kafka クラスターをデプロイしました。Mesos-DNS クライアントは、ホストからコンテナーに動的にマップされたポートを意味するkafka.marathon.mesosandのようなレコードを提供します。mongo.marathon.mesos問題は、クライアントがターゲット ポートに関する情報を明示的に必要とすることです。これらのポート情報をサービスから自動的かつ動的に取得する一般的な方法はありますか? 複数のポートを公開しているアプリはどうですか?
これまでの私の考え: - REST 呼び出しを実行して、デプロイされたアプリに関するステータスを取得し、何らかの方法で関連データを抽出する - DNS SRV ルックアップを実行し、何らかの方法で関連データを抽出する - ポートに静的にバインドされたある種の「マスター」を持つ、動的な「クライアント」を使用します。
私はそれらの情報をたくさん検索しましたが、最終的にほとんどのチュートリアルは、私が目指しているものではない手動の検索で終わりました.
docker - マラソンにデプロイされた場合の Docker が継続的に失敗する
私はこれらのテクノロジーに不慣れで、物事を理解しようとしています。そこで、Mesosphere が提供する基本的なチュートリアルに従い、ローカルにクラスター (2 つの VM) を作成することができたので、nodejs アプリケーションをデプロイしたいので、nodejs Express フレームワークとサーバーを起動するだけのスクリプトを含む Docker イメージを作成しました。docker イメージは docker registry で pujariamol/nodejs-express として見つけることができ、root レベルに runScript.sh というスクリプトがあります。
デプロイするために試した JSON は次のとおりです。
これにより、docker コンテナーがプルされ、開始されると思いました。また、runScript.sh を実行したかったので、cmd で './runScript.sh' を試していましたが、うまくいかなかったので、テスト目的で out.txt にテキストを書き込んでみましたが、何も動作しないようです。アプリケーションがデプロイされた瞬間、mesos はこのアプリの失敗ステータスを示します。マラソンにデプロイするためにクロム拡張ポストマンを使用しています。何が問題なのかわかりません。このアプリケーションを Marathon にデプロイするのを手伝ってください。さらに情報が必要な場合はお知らせください。
前もって感謝します。
jenkins - Jenkins スレーブが mesos で動作しない
CIにjenkins mesosプラグインを使用しています。最初に、次のチュートリアルに従いました: http://www.ebaytechblog.com/2014/05/12/delivering-ebays-ci-solution-with-apache-mesos-part-ii/
しかし、ジェンキンス自体はこれを介してセットアップされていませんでした。(config.xmlファイルを読み込めないというエラーが発生しました。1つあったとしても)
その後、 https: //rogerignazio.com/blog/scaling-jenkins-mesos-marathon/ をたどり、jenkins マスター (jenkin フレームワーク/スケジューラー) を実行できましたが、実行するスクリプトを定義すると、jenkins-slaves作成されていません。スレーブに関する設定が欠けていると思います。ジョブを実行するためにスレーブが作成されていない理由を教えてください。
ジェンキンスのビルドページで、私は得ています:
そして、jenkins-logs で、次のエラーが発生しています。
編集: コンテナー ポート マッピングを定義していないため、エラーが発生していると思います。誰でもその方法を教えてもらえますか?
更新 : 実際、0.7 バージョンの mesos プラグインには多くの問題がありました。だから、私は単に0.6バージョンにダウングレードしました。
jenkins - How Mesos Marathon handle application data persistence?
I have been exploring Mesos, Marathon framework to deploy applications. I have a doubt that how Marathon handle application files when an application is killed .
For example we are using Jenkins which is run through Marathon and if Jenkins server fails and it will be restarted again by Marathon but this time old jobs defined will be lost .
Now my question is how can I ensure that if a application restarts, those old application jobs should be available ?
Thanks.
docker - Mesos はプライベート Docker レジストリからコンテナをデプロイできません
https://docker.somedomain.com (5000 ではなく標準ポート 443 経由)でアクセスできるプライベート Docker レジストリがあります。私のインフラストラクチャには、docker コンテナー化が有効になっている Mesosphere のセットアップが含まれています。Marathon 経由で特定のコンテナーを Mesos スレーブにデプロイしようとしています。ただし、これは常に Mesos がそのサンドボックスの stderr と stdout にデータがなく、ほぼ即座にタスクを失敗させて失敗します。
標準の Docker レジストリのイメージからデプロイしようとしましたが、うまく動作しているようです。何が悪いのかわからなくて困っています。私のプライベート Docker レジストリはパスワード認証を必要としません (これをデバッグするためにオフにします)。また、Meso のスレーブ インスタンスにシェルでアクセスし、root として sudo su を実行すると、「docker pull docker.somedomain.com/services/myapp」を実行できます。毎回成功。
タスクを開始するためのマラソン投稿データは次のとおりです。
私はこれでほぼ1日立ち往生しており、私が試したすべてが同じ結果をもたらしているようです。これに関する洞察は大歓迎です。
私のバージョン: Mesos: 0.22.1 Marathon: 0.8.2 Docker: 1.6.2
constraints - マラソン制約の使用に関する問題
mesos + marathon クラスターを実行していますが、これまでのところすべて正常に動作しています。しかし、マラソンで制約を使用する方法がわかりません。
mesos スレーブに属性のタグを付けました
コンテナのマラソンの説明に追加しました
しかし、コンテナをデプロイすると、「INFO No matching offer for」のみが表示され、何が間違っていたのかわかりません。
不足しているものはありますか?