CentOS8にaraをインストールしてみた


CentOS8にAnsibleの実行結果を専用のコールバックプラグインを使ってデータベースへ格納する ara をインストールしてみます。

ara

ドキュメント

araとは

一言で言うと、Ansibleの実行結果を専用のコールバックプラグインを使用してデータベースに格納し記録された結果をWebAPI経由で取得できるインターフェース(Django製)を提供してくれるツールです。
ara単体では、あくまでも結果の格納とWebAPIによる結果の提供までなのでWebでの可視化まではしてくれません。
ちなみに ara-web と言うaraから取得したデータを可視化してくれるインターフェースもあるのでインストールして使ってみます。
ara-webでは物足りなかったら自分で可視化用のWebアプリケーションを自作することも可能です。

環境

項目 バージョン 備考
CentOS 8.0 IP: 192.168.0.125
Python 3.6.8
Ansible 2.8.6
ara 1.1.0
ara-web 1.0.0

インストール・起動

必要なパッケージのインストール

必要なパッケージをインストールします。

venv作成

venvを作成します。

Ansibleインストール

Ansibleをインストールします。

araインストール

araをインストールします。

araサーバ設定

araの設定ファイルを生成します。
ara-manage コマンドを実行すれば自動で生成されます。
ara-manageコマンド単体を実行するだけでも作成されますが、ここではtestを引数で実行しています

settings.yaml を修正します。

全ての接続元からのアクセス許可とCORSを許可します。

araデータベース作成

Playbookを実行してDBを作成しないとaraサーバが起動しないので、一先ず簡単なPlaybookを実行します。
コールバックプラグインの設定が必要なので、ここでは環境変数に設定します。

以下のPlaybookを作成して実行します。

araサーバ起動

araサーバを起動して、問題なくアクセスできるか確認します。
以下のコマンドで IP:Port の引数を渡さない場合、127.0.0.0:8000でListenします。

http://192.168.0.125:8000 にアクセスできれば問題ありません。

ara-webインストール

ara-webのリポジトリをクローンします。

外部アクセス用の設定に書き換えます。

インストールします。

ara-web起動

ara-webを起動します。

http://192.168.0.125:3000 ヘアクスして画面が表示されるか確認します。

デモ

以下はApacheをインストールするPlaybookを実行したデモです。

最後に

今回は、ほぼデフォルト状態で簡単にaraとara-webを使ってみました。
araのDBは標準だとSQliteですが、MySQLやPostgreSQLも使えるようです。
実行した時間や処理時間、結果が記録されるので、それを後から確認したい場合などには使えそうです。
オンラインデモでは、もう少し詳細に記録が取れているので、設定を変えれば出来そうです。
araはコマンドラインのAnsibleを実行した記録を管理するにはいいかもしれません 🙂

Leave a Reply

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください