CentOS8に負荷試験ツールLocustを入れてのテスト その1 - 株式会社CoLabMix

CentOS8に負荷試験ツールLocustを入れてのテスト その1

Pythonの負荷試験ツールLocustの検証です。

「イナゴ」という意味のLocustでシナリオ試験などをpythonコードで書いて試験することができます。

また、WebUIを使って試験を行うことができます。

アタックに必要なノードなどを増やしていきながらの試験も実施できます。

今回はCentOS8に導入していました。

 

Locustのインストール

以下の手順でインストールを行います。
pipを最新にアップデートしておきます。

今回は1.6.0のものがインストールされております。

Firewalldを利用していて、WebUIを使用する場合は以下で停止しておきます。

 

Locustを使った負荷試験

まず利用方法としてドキュメントは以下にあります。

https://docs.locust.io/en/stable/

今回は非常に簡易なファイルとして以下を用意しました。

「locustfile.py」というファイル名で保存しています。

こちらを実行するとWebUIが起動します。

 

ブラウザで「http://xxx.xxx.xxx.xxx:8089/」(設定機器のIPにしてください)にアクセスすると以下のような画面になります。

こちらのWebUIを利用してテストを行います。

設定する内容は以下となります。

Number of total users to simulate
同時接続ユーザー数の最大値

Hatch rate
1秒毎に増加していくユーザーの数

Host
接続をを行うサーバのURL(負荷試験の対象)

 

こちらに値を入れるとテストが開始します。

以下の画面のようにテストを行います。(上から3、3、接続ホストの値を入れました。)

こちらでテストの結果を確認することができます。

サーバ側のアクセスログでは以下のような形で出ておりました。

非常に簡単なテストでしたがログインをしての試験や、item_idを複数用意してのシナリオの試験が実施可能となります。

今回はこの辺で。

 

 

このブログは株式会社CoLabMixによる技術ブログです。

GCP、AWSなどでのインフラ構築・運用や、クローリング・分析・検索などを主体とした開発を行なっています。

Ruby on RailsやDjango、Pythonなどの開発依頼などお気軽にお声がけください。

開発パートナーを増やしたいという企業と積極的に繋がっていきたいです。

お問い合わせやご依頼・ご相談など

     

     

    関連記事

    1. AWSのCloudFrontに署名付きURLを使って有効期限付きのWe…

    2. kibana と Beats (metricbeat)を使ってサーバの…

    3. Django2.1.1 を使ってログインを実装する

    4. AWS Lambda でS3にファイルがアップロードされたら、加工して…

    5. python-twitterのライブラリを使用して、pythonでtw…

    6. CentOS7のPython3でJUMAN++のインストールと利用