初心者エンジニアの歩み[パフォーマンステスト2]

  • このエントリーをはてなブックマークに追加

パフォーマンステスト1の記事の続きです。JMeterの使い方や基本的な設定の仕方は、ネットに溢れているため割愛します。
今回は
「JMeterサーバーをEC2のバッチサーバー上で動かし、EC2のウェブサーバーに接続した設定(リモート接続)」
の仕組みについて書きたいと思います。

Windows⇒Linuxで


いざ、ローカル環境のJMeterで負荷をかけられるようになっても、本番環境でテストできるようにするためにはJMeterのサーバーをウェブサーバーと接続しなければなりません。これをリモート接続といいます。よく説明にあるのは、ローカルから直接ウェブサーバーへ、、という設定なのですが、実際行うとセキュリティ面からも弊害が多いようです。
そのため、より負荷を減らして、簡単に行うため、ローカル環境をlinuxに移し全く動かしていないEC2のバッチサーバー上でJMeterを起動させるということになりました。
その為にはJMeterライブラリ内のファイル書き換えが必須ですが、ローカル環境に落としたJMeterで設定しても意味を成しません。環境を整える必要があります。そのため、ローカルのJMeterは今後一切使わない、、位のイメージでいると良いと思います。

画像の解説:見にくくて申し訳ありません。

  • linux環境上にjmeterをインストールします。このlinuxがWindows環境でjmeterを動かすのと同じローカルだとします。
  • windowsローカルで作ったJMeter実行ファイルや設定ファイルなどを全てコピペで移動します(WinSCPでサクッと出来ます)
  • JMeterサーバーを2台使ったので、JMeterを使うバッチサーバー上にもインストールorコピペします
  • ローカルのJMeterはバッチサーバーへ接続し(緑線)、バッチサーバー上のJMeterがウェブサーバーに接続し(虹色線)、処理が終わってレスポンスが返ってきたら(水色線)バッチサーバーからローカルのJMeterに返ってくる(水色線)という流れです。このバッチサーバーへ接続する部分がJMeterで設定するRMIサーバーのようです(確信は無いです。)
  • 接続のカギmasterとslave


    接続方法についてもたくさんの解説と記事があるのですが、自分の状態でどちらの設定をどうするかこんがらがってしまいました。
    masterは、実際にJMeterを動かす方なので、linux上のローカルです
    slaveは、バッチ上で動かす2台のJMeterです

    master側のjmeter.propertiesの設定をします。ここで指定するIPアドレスはJMeterサーバー2台のことです。

    slave側ではjmeter-serverの設定をします。勿論、2台あればそれぞれのjmeter-serverファイルを書き換える必要があります。IPアドレスは、最後に戻るべき所を指定しましょう。ここでは、Linuxローカルの方です

    そして、リモート(SLAVE)のサーバーを起動します。apache-jmeter5.0/bin内に入り、./jmeter-serverとコマンドを打つと、create remoteと出たら、JMeterサーバーが起動した印。endpointがrmi.serverで最後に返すサーバーになっているかの確認が必要。

    JMeterサーバーが起動したら、MASTER側でapache-jmeter5.0/bin内に入り、○○.jmxのテスト実行ファイルをコマンドで打つ。
    @bin$ ./jmeter -n -t ファイル名.jmx -l ログファイル名.jtl -r <<<-rはremoteを意味しています。必須

    また、もう一つの注意点として、.jmxの実行ファイルはMASTER側のbin内に格納しておくが、csvデータはSLAVE側に格納しないと読み込まれない。データはbin内でなくても良いがjmxのファイルでパスを指定しているはず。

    テストが終了したら、
    ./jmeter -g ログファイル名.jtl -o log  <<<最後のlogは格納するフォルダ名なので、bin内にlogフォルダを作っておく必要があります
    でhtml形式のレポートファイルが作られるのでとっても便利です!
    <注意点>
    ・jtlファイルはbin内に格納してあること。

    • このエントリーをはてなブックマークに追加

    フリーランスで高収入と安心を実現するなら

    テックブレインは、高単価・保障に強いIT/Webフリーランスエンジニアのための独立支援サービスです。

    常時5,000件以上の高単価案件が豊富にあるため収入を最大化できます。また、あなたの立場になって案件の紹介から企業との交渉をシステム開発経験があるコーディネーターがフルサポート。正社員並みの福利厚生も利用できます。


    高単価・正社員並み保障のフリーエンジニア求人案件へ