0x0i.phoronix
<p><img src="https://code.benco.io/icon-collection/logos/ansible.svg" alt="ansible ロゴ" title="ansible" align="left" height="60" /></p>
<p><img src="https://i.imgur.com/mA5dAPk.png" alt="pts ロゴ" title="phoronix" align="right" height="60" /></p>
Ansible ロール :bar_chart: :boom: Phoronix
=========
[](https://galaxy.ansible.com/0x0I/phoronix)

[](https://opensource.org/licenses/MIT)
**内容目次**
- [サポートされているプラットフォーム](#supported-platforms)
- [要件](#requirements)
- [ロール変数](#role-variables)
- [インストール](#install)
- [設定](#config)
- [起動](#launch)
- [アンインストール](#uninstall)
- [依存関係](#dependencies)
- [例のプレイブック](#example-playbook)
- [ライセンス](#license)
- [著者情報](#author-information)
Ansible ロールは、Phoronix-Test-Suite (PTS) をインストールし、設定するためのものです。これは、さまざまなハードウェアと機械サブシステムのための包括的かつ拡張可能なテストおよびベンチマークプラットフォームです。
##### サポートされているプラットフォーム:
- Redhat(CentOS/Fedora)
- Ubuntu
要件
------------
ターゲットホストに `unzip/gtar` ユーティリティがインストールされている必要があります。詳細はAnsibleの `unarchive` モジュールの [ノート](https://docs.ansible.com/ansible/latest/modules/unarchive_module.html#notes) を参照してください。
ロール変数
--------------
変数は以下のソフトウェアと機械プロビジョニングの段階に従って整理されています:
* _install_
* _config_
* _launch_
* _uninstall_
#### インストール
_次の変数は、パッケージのバージョンやダウンロードしてインストールするアーカイブ、ターゲットホストのシステム情報や能力の収集など、インストールプロセスのさまざまな側面を制御するためにカスタマイズできます。_
`install_type: <package | archive>` (**デフォルト**: archive)
- **package**: DebianおよびRedhatディストリビューションでサポートされ、*PTS*のパッケージインストールは、指定されたパッケージを各パッケージ管理リポジトリから引き出します。
`package_name: <package-name-and-version>`(**デフォルト**: *phoronix-test-suite*[-latest])
- ダウンロードしてインストールする *phoronix-test-suite* パッケージの名前とバージョン。 [参考](http://fr2.rpmfind.net/linux/rpm2html/search.php?query=phoronix&submit=Search+...&system=&arch=) またはターミナルで `dnf --showduplicates list phoronix-test-suite` を実行して、プラットフォームに対する利用可能なパッケージの一覧を表示します。
- インストールディレクトリはパッケージ管理システムによって決定され、現在すべてのディストロで `/usr/bin` の下にデフォルト設定されています。
- **archive**: **tarとzip**両方のフォーマットに適合し、アーカイブされたインストールバイナリは公式の [リリースインデックス](https://github.com/phoronix-test-suite/phoronix-test-suite/releases) からか、開発/カスタムソースから生成された圧縮アーカイブから取得できます。
`install_dir: </path/to/installation/dir>` (**デフォルト**: `/opt/phoronix`)
- `PTS` バイナリを抽出するターゲットホストのパス。これは`install_type` が **archive** に設定されている場合にのみ関連します。
`archive_url: <path-or-url-to-archive>` (**デフォルト**: `defaults/main.yml` を参照)
- `ansible` バイナリを含む圧縮 **tarまたはzip** アーカイブのアドレス。この方法は、実際には利用可能な任意のバージョンの `phoronix-test-suite` のインストールをサポートします。公式バージョンへのリンクは [ここ](https://github.com/phoronix-test-suite/phoronix-test-suite/releases) で見つけられます。これは`install_type` が **archive** に設定されている場合にのみ関連します。
`inspect_system: <true | false>` (**デフォルト**: *true*)
* ターゲットホストについてのシステム情報を *PTS* で取得します。情報には以下が含まれます:
* 一般的なシステム詳細と診断情報
* 接続されているセンサーの能力
* ネットワーキングの設定
#### 設定
...*設定に関連する変数の説明*...
#### 起動
`autopilot` モードで**のみ**実行する場合、*PTS* テストスイートや個別またはグループのテストを実行するために [systemd](https://www.freedesktop.org/wiki/Software/systemd/) サービス管理ツールを使用します。各テスト実行は、特定の実行要件やオペレーターの仕様に応じて環境内で実行でき、並行または順次に定義された順序に従って操作できます。
以下の変数は、これらの実行ポリシーを管理するために調整できます。
`default_run_asynchronous: <true | false>` (**デフォルト**: *false*)
- 特定のホストで設定されたテストをデフォルトで非同期に、並行して実行するか、各テストが終了するまで待ってから次のテストを開始するために同期的に実行するかを指定します。*そうでない場合は、実行の好みに従います。*
`default_autopilot: <true | false>` (**デフォルト**: *false*)
- デフォルトでインストールから結果報告まで、提供されたオペレーター設定を使用してテスト/ベンチマーク実行を自動的に実行するかを指定します。*そうでない場合は、実行の好みに従います。*
`[user_configs: <config-entry>: test_runs: <test-entry>:] unit_properties: <hash>` (**デフォルト**: `{}`)
- `test run` **systemd** サービスの `[Service]` ユニット設定と実行環境をカスタマイズするために使用される設定のハッシュ。
###### 例
```yaml
user_configs:
- user: devops
config:
BatchMode:
SaveResults: true
test_runs:
- name: pts/compress-gzip
runtime_config:
test_results_name: test-compress-results
unit_properties:
# 障害時にテストを自動再起動する - *注*: 上で定義された `test_results_name` を再利用
Restart: on-failure
ExecReload: phoronix-test-suite finish-run test-compress-results
# テスト結果をjsonに変換し、アップロード用にファイルに保存するヘルパースクリプトを実行
ExecStopPre: /usr/bin/test_post_exec.sh test-compress-results
ExecStopPost: "aws s3 cp /opt/phoronix/test-compress-results.results.json s3://benchmark_results/"
アンインストール
アンインストールおよびプロビジョニングに必要なアーティファクトを削除するサポートにより、ユーザー/オペレーターはターゲットホストをこのロールの適用前の設定状態に戻すことができます。これは、ノードやロールを再利用する場合や、ツールのアップグレード間でのよりスムーズな移行を提供するのに役立ちます。
次の変数は、このアンインストールプロセスを管理するためにカスタマイズできます:
perform_uninstall: <true | false>
(デフォルト: false
)
- ターゲットホスト上でこの
phoronix-test-suite
インストールのすべてのアーティファクトと残骸をアンインストールおよび削除するかを指定します(詳細は:handlers/main.yml
を参照)。
依存関係
0x0i.systemd
例のプレイブック
デフォルトの例:
- hosts: benchmark-nodes
roles:
- role: 0x0I.phoronix
ライセンス
MIT
著者情報
このロールは2019年にO1.IOによって作成されました。 ```