見出し画像

Jmeterでお手軽負荷診断

最近徳井さんが脱税容疑で色々言われてますが、周りがそんなチマチマ言わなくていいやろ。と思う24才です。

さてこの記事では、業務で負荷診断をしないといけなくなった人向け
簡単ツールの紹介です。※AWSを使ってる案件のみ有効

gitはこちら:https://github.com/yuyu1023/qiita_jmeter

ツール構成

まず始めに今回紹介するツール構成はこちらです。

.
├── Makefile 
├── hoge.pem
├── init.sh
├── log
└── tests
   ├── hoge_live.jmx
   ├── hoge_preview.jmx
   └── hoge_staging.jmx

./Makefile
必要なコマンド類をまとめ、簡単に実行できるようにしてます。

./home.pem
指定サーバーに接続する為に必要な鍵です。それぞれの環境に合わせて名前は変わると思うので、良きようにしてください。

./init.sh
jmeterを実行する上で必要な設定を諸々まとめてます。このファイルは指定サーバー内で実行されます。

./log
指定サーバー内にあるlogを格納する場所です。

./test
シナリオを格納する場所。予めローカルでも挙動確認はしておいた方がいいです。

◆   ◆   ◆

事前準備

EC2でCentOSを立ち上げる。(ぽちぽちで行けます)

接続に必要な鍵を生成して保管。(./hoge.pemとの入れ替え想定)

jmeterシナリオを./test/に格納。

./Makefile内の下記項目に今回利用するhost名と鍵名を設定。

# 構築対象のIPセット
HOSTNAME1 = ec2-xxx-xxx-xxx-xxx
# 鍵設定
KEY = hoge.pem

◆   ◆   ◆

利用方法(基本的にコマンドぽちぽちしていくだけです)

①初期構築 make all/setup
指定サーバーにjmeterを動かすために必要な諸々をインストールして、 jmeterのシナリオをコピーしています。 

②負荷診断実行 make jmx-exe time=`date +%Y%m%d-%H%M%S`
指定サーバー内に予めコピーしたシナリオをjmeterで実行します。実行結果は指定サーバー内 "/home/centos/log"配下に格納されます。

③ログデータ取得 make jmx-get
指定サーバー内の"/home/centos/log"をローカルの"./log"にコピーする。

④シナリオ再アップ make jmx-up
条件を変えたシナリオを指定サーバーにコピーします。またこの時コピーするシナリオはMakefile内で指定してるので良きようにして下さい。

基本的には①〜④をグルグル回すだけでの作業になります。

◆   ◆   ◆

まとめ

急に負荷診断をやらないといけなくなった…。けどやり方が分からない…。
みたいな人の為に書いてみました。

また今回はサーバー1台想定でやりましたが、複数台でもこの構成使えます!(私は3台構成で実施しました)

Makefile周りを変更すれば実現可能ですので、是非触ってみて下さい。

※もし動かないよー!って人がいたらコメントください

参考リンク集


この記事が気に入ったらサポートをしてみませんか?