アトラシアン パフォーマンス テスト フレームワーク
パフォーマンス テスト フレームワークは以前 Elastic Experiment Executor (E3) と呼ばれていました。これは、Atlassian Server および Data Center 製品のインスタンスをセットアップ、実行し、負荷状態でのパフォーマンスを分析するためのフレームワークです。
アトラシアンでは、社内のパフォーマンス テストでのアトラシアン パフォーマンス テスト フレームワークの使用を終了しました。お客様は引き続きフレームワークを使用できますが、結果の解釈についてのサポートを受けることはできません。
On this page:
異なるバージョン、ソフトウェア構成、およびハードウェア インフラ セットアップの製品のパフォーマンスを異なるサイズや形状のワークロードで比較する際に、実験を活用できます。
実験の実行中は、collectd
サービスを利用し、関係するすべてのマシンのシステムおよびアプリケーション レベルの両方のメトリックが監視されます。この情報を、クライアント / サーバー側のログ ファイルから収集された応答時間やスループットに関するデータとともに、さまざまなグラフやビジュアルにまとめることができます。
現在、パフォーマンス テスト フレームワークのテストを次の環境で実行できます。
- Bitbucket Server
- Bitbucket Data Center
- Confluence Data Center
すべてのコンピューティング インフラストラクチャは、Amazon Web Services (AWS) クラウドで自動的にプロビジョニングしたり、独自の外部インフラストラクチャで実行できます。
注: インフラストラクチャが AWS でホストされていても、パフォーマンス テスト フレームワークでプロビジョニングされていない場合は、外部インフラストラクチャとみなされます。上記のセットアップや後述の構成の概要に加えて、「独自のインフラストラクチャを使用する」セクションで、フレームワークを目的に合わせるためのさらに具体的な方法について、各製品固有のガイドを参照してください。
フレームワークへのアクセス
パフォーマンス テスト フレームワークでの実験に必要なものはすべて、次のリポジトリに含まれています。
前提条件
ソフトウェア
フレームワークを使用する場合、多数のオープン ソース ソフトウェア パッケージをインストール済みの Linux または MacOS マシンから実験を実行する必要があります。これらの前提条件をインストールする最も簡単な方法は、オペレーティング システムのパッケージ マネージャーを使用することです。たとえば、パフォーマンス テスト フレームワークの実験に使用するマシンから、次のいずれかを実行できます。
MacOS と homebrew
$ brew install gnuplot --with-cairo
$ brew install imagemagick python rrdtool
Linux Ubuntu、Debian、...
$ apt-get install gnuplot imagemagick python rrdtool librrd-dev
Linux Red Hat、CentOS...
$ yum install gnuplot imagemagick python rrdtool
他のシステムの場合は、これらの前提条件のインストール方法に関するシステム ドキュメントを参照してください。
AWS
パフォーマンス テスト フレームワークは、AWS クラウドでマシンを簡単にプロビジョニングできる機能を提供します。
boto3
が参照する任意の場所で AWS アカウントの資格情報を指定できます。Boto3 ドキュメントの「Configuring credentials」を参照してください。
組織が AWS での認証に IAM ロールを使用している場合、フレームワークには AWS 資格情報を自動取得するための機能も含まれます。実装例については、Confluence パフォーマンス テスト フレームワークと Bitbucket パフォーマンス テスト フレームワークの両方のリポジトリ内にある AtlassianAwsSecurity.py
を参照してください。
AWS インフラストラクチャのプロビジョニングを行うことで、Amazon から高額なサービス請求が発生することがあります。パフォーマンス テスト フレームワークを使用することで発生するすべての Amazon サービス請求に対して、Atlassian では責任を負いません。お客様は、テスト マシンで占有データを保護する責任を負います。
ライセンス
Confluence Data Center で実験を実行する場合は、開発者ライセンスが必要です。すでにプロダクション ライセンスを持っている場合は、「Confluence 開発者ライセンスの取得方法」を参照してください。ライセンスを取得したら、実験ファイルで confluence.license.key
プロパティを探し、<confluence_license_key>
を自身のライセンスで置き換えます。実験はライセンスでサポートされるユーザー数 (本番環境のライセンスにより決定) に応じて制限されることにご注意ください。
インストール
パフォーマンス テスト フレームワークの多くは Python で作成されており、多数の Python ライブラリを必要とします。これらの要件は標準の requirements.txt
ファイルに記載されており、標準の Python pip
および virtualenv
ツールを使用して次のようにインストールできます。
elastic-experiment-executor
リポジトリのホームから以下を実行します。
$ sudo pip install virtualenv
$ virtualenv .ve
$ source .ve/bin/activate
$ cd e3; pip install -r requirements.txt
Quick Start
すべての前提条件をインストールした後、Orchestrate.py
スクリプトを実験サンプルのいずれか (関連リポジトリの e3-home/experiments
ディレクトリで確認) で実行すると、クラスタとクライアント ノードを備えたマシンの AWS 内でのプロビジョニング、指定したワークロードの実行、データの収集、および結果の分析が行われます。以下は、cluster-scaling-ssh
実験の実行例です。この実験は、SSH を介した多数の並列 Git ホスティング オペレーションにより、さまざまなインスタンスに負荷を与えるように設計されています。
$ ./Orchestrate.py -e cluster-scaling-ssh
実験を実行する
実験の実行方法を見つけるには、製品固有のガイドを参照してください。
サポート
パフォーマンス テスト フレームワークは現状のまま提供され、アトラシアンのサポート対象外となります。アトラシアンのサポート チームは、テスト結果の解釈を支援できません。
アトラシアン コミュニティの「パフォーマンス テスト フレームワーク」トピックへ移動し、他のユーザーがどのようにフレームワークを使用しているかを確認したり、体験を共有したり、コミュニティで支援を依頼したりできます。