2016-04-18 33 views
0

AWS EC2インスタンスでJMeterを使用して分散負荷テストを実行しようとしています。JMeter - docker - java.net.connectexception

私は1つのマスターと2つのスレーブを持っています。すべてがubuntuインスタンスです。 これらはすべてjavaとjmeterがインストールされています。

私は、スレーブワット問題でテストを正常に実行することができました。 (私がドッカーを使用しないとき)(JMeterはRMIを使ってスレーブをコントロールします)

私は、スレーブでドッカーを使うことを考えています。私はいつもスレーブマシンをセットアップしたくありません。だからドッカーは良い選択だと思われる。

ドッカーコンテナでは、すべて正しいと思われ、必要なポートはすべて開いています。

問題:私は奴隷にJMeterのサーバを実行するために、ドッキングウィンドウコンテナを使用するたびに、私はマスターからそれに接続しようとした場合

、それはjava.net.connectexception connection refused connect <ip address>エラーがスローされます。

私はマスターからスレーブにtelnetすれば、正常に接続できます。

マイdockerfile:

FROM ubuntu 
RUN apt-get update 
RUN apt-get -y install wget 
RUN apt-get -y install default-jre 
RUN mkdir /jmeter 
RUN cd /jmeter/ ; wget http://www.us.apache.org/dist//jmeter/binaries/apache-jmeter-2.13.tgz ; tar -xzf apache-jmeter-2.13.tgz ; rm apache-jmeter-2.13.tgz 
ENV JMETER_HOME /jmeter/apache-jmeter-2.13/ 
ENV PATH $JMETER_HOME/bin:$PATH 
EXPOSE 1099 7000 50000 
ENTRYPOINT $JMETER_HOME/bin/jmeter-server -Djava.rmi.server.hostname=$LOCALIP 

これは、私がここで何が起こっているのか理解していない私は、コンテナ

sudo docker run -dit -e LOCALIP='10.11.12.13' -p 7000:7000 -p 1099:1099 -p 50000:50000 "mydockerimg" /bin/bash 

を作成する方法です!私はこれをどのように修正すべきですか?


UPDATE:enter image description here

+0

コンテナをどのようにリンクしていますか?コンテナのネットワーク化やポートのホストへの公開? – tddmonkey

+0

1つのホストには1つのコンテナしかありません。私はコンテナの作成に関する質問を更新しました。 – KitKarson

+1

- net = hostフラグを指定してポートを公開せずにコンテナを実行してみてください。それは動作するはずです。 sudo docker run - net = host -dit -e LOCALIP = 'localhost' "mydockerimg"/bin/bash – arcticless

答えて

1

フラグ--net =ホストとし、任意のポートを公開することなく、あなたのコンテナを実行してみてください@arcticless提案どおりにしようとしました。それは動作するはずです。 sudo docker run --net=host -dit -e LOCALIP='your_ip' "mydockerimg" /bin/bash

+0

私は質問を更新しました。チェックしてください。 – KitKarson