web-dev-qa-db-ja.com

トランスポートエンドポイントが接続されていません-Mesosスレーブ/マスター

Mesosスレーブをそのマスターに接続しようとしています。スレーブがマスターに接続しようとするたびに、次のメッセージが表示されます。

I0806 16:39:59.090845   935 hierarchical.hpp:528] Added slave 20150806-163941-1027506442-5050-921-S3 (debian) with cpus(*):1; mem(*):1938; disk(*):3777; ports(*):[31000-32000] (allocated: )
E0806 16:39:59.091384   940 socket.hpp:107] Shutdown failed on fd=25: Transport endpoint is not connected [107]
I0806 16:39:59.091508   940 master.cpp:3395] Registered slave 20150806-163941-1027506442-5050-921-S3 at slave(1)@127.0.1.1:5051 (debian) with cpus(*):1; mem(*):1938; disk(*):3777; ports(*):[31000-32000]
I0806 16:39:59.091747   940 master.cpp:1006] Slave 20150806-163941-1027506442-5050-921-S3 at slave(1)@127.0.1.1:5051 (debian) disconnected
I0806 16:39:59.091868   940 master.cpp:2203] Disconnecting slave 20150806-163941-1027506442-5050-921-S3 at slave(1)@127.0.1.1:5051 (debian)
I0806 16:39:59.092031   940 master.cpp:2222] Deactivating slave 20150806-163941-1027506442-5050-921-S3 at slave(1)@127.0.1.1:5051 (debian)
I0806 16:39:59.092248   939 hierarchical.hpp:621] Slave 20150806-163941-1027506442-5050-921-S3 deactivated

エラーは次のようです:

E0806 16:39:59.091384 940 socket.hpp:107]シャットダウンがfd = 25で失敗しました:トランスポートエンドポイントが接続されていません[107]

ホストは以下を使用して開始されました:

./mesos-master.sh --ip=10.129.62.61 --work_dir=~/Mesos/mesos-0.23.0/workdir/ --zk=zk://10.129.62.61:2181/mesos --quorum=1

そして奴隷

./mesos-slave.sh --master=zk://10.129.62.61:2181/mesos

ホストと同じVM=でスレーブを実行すると、問題なく動作します。

私はインターネットで多くの情報を見つけることができませんでした。 VirtualBox 5で2つの仮想ボックス(Debian 8.1)を実行しています。ホストはWindows 7です。

編集1:

マスターとスレーブはどちらも専用VMで実行されます。

両方のVMのネクストワークは、ブリッジネットワークを使用して構成されます。

マスターからのifconfig:

eth0      Link encap:Ethernet  HWaddr 08:00:27:cc:6c:6e
          inet addr:10.129.62.61  Bcast:10.129.255.255  Mask:255.255.0.0
          inet6 addr: fe80::a00:27ff:fecc:6c6e/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:5335953 errors:0 dropped:0 overruns:0 frame:0
          TX packets:1422428 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:595886271 (568.2 MiB)  TX bytes:362423868 (345.6 MiB)

スレーブからのifconfig:

eth0      Link encap:Ethernet  HWaddr 08:00:27:56:83:20
          inet addr:10.129.62.49  Bcast:10.129.255.255  Mask:255.255.0.0
          inet6 addr: fe80::a00:27ff:fe56:8320/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:4358561 errors:0 dropped:0 overruns:0 frame:0
          TX packets:3825 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:397126834 (378.7 MiB)  TX bytes:354116 (345.8 KiB)

編集2:

スレーブログは http://Pastebin.com/CXZUBHKr にあります。

マスターログは http://Pastebin.com/thYR1par にあります。

19
benjamin.d

同様の問題がありました。私のスレーブのログはいっぱいになります

    E0812 15:58:04.017990  2193 socket.hpp:107] Shutdown failed on fd=13: Transport endpoint is not connected [107]

私のマスターは

    F0120 20:45:48.025610 12116 master.cpp:1083] Recovery failed: Failed to recover registrar: Failed to perform fetch within 1mins

そしてマスターは死に、新しい選挙が起こり、殺されたマスターはupstart(私はCentos 6ボックスにいます)によって再起動され、潜在的なマスターのプールに追加されます。したがって、選出されたマスターは、マスターノードの周りにデイジーチェーン接続します。マスターとスレーブを何度も再起動しても、マスターの選択から1分以内に問題が再発することはありませんでした。

私の解決策は、このスタックオーバーフローの質問(ありがとう)とgithubのヒント Gist note から来ました。

その要点は/etc/default/mesos-masterであり、クォーラム番号を指定する必要があります(私の場合は、メソマスターの数に対して正しい必要があります3)

    MESOS_QUORUM=2

ファイル/etc/mesos-master/quorumに同じ情報があるので、これは奇妙に思えます

しかし、それを/etc/default/mesos-masterに追加すると、mesos-mastersとslavesが再起動され、問題は再発しませんでした。

これがお役に立てば幸いです。

12

メソスバージョンをアップグレードするときに、ログでこのエラーに遭遇しました(例:0.20.0-> 0.27.0)。以前のバージョンのデータが他のバージョンと互換性がない場合があります。

ここに私がそれを直した方法があります:

まず、すべてのノードでmesos-masterサービスが停止していることを確認します。

Sudo service mesos-master stop

次に、潜在的な古いデータをすべて消去します。

  1. 削除する $MESOS_WORK_DIR/var/mesos 私の場合):

    Sudo rm -rf /var/mesos
    
  2. ZooKeeperでメソデータを消去します。

    $ zkCli.sh
    WatchedEvent state:SyncConnected type:None path:null
    [zk: localhost:2181(CONNECTED) 0] rmr /mesos
    [zk: localhost:2181(CONNECTED) 0] quit
    Quitting...
    

これらの手順を実行した後、すべてのノードでmesos-masterサービスを開始し、オンラインに戻りました。

2
Jay Taylor
I0806 16:39:59.091747   940 master.cpp:1006] Slave 20150806-163941-1027506442-5050-921-S3 at slave(1)@127.0.1.1:5051 (debian) disconnected

これがエラーのヒントです。

スレーブが間違ったIPを公開しています。

追加--ip=10.129.62.49をスレーブコマンドに追加すると機能します。

2
noob

代わりに--ip=10.129.62.49を使用してスレーブを実行します

0
hartem