CommentsTweetPocketさて、前回StackStormのインストールを行ったので、今回は実際に何らかの処理を行わせてみる。StackStormにはブラウザ経由での管理が行えるWebUI管理画面があるのだが、今回はCUIでの設定・操作をする。StackStormには以下の4つの要素がある。Action→トリガーを受けて、対象のホストに対して処理を行うTrigger→何かしらの操作やエラー、フラグをトリガーとし、アクションを実行するSensor→トリガーを検知するセンサーRule→トリガーとアクションを組み合わせたものつまり、TriggerとActionをうまく組み合わせて処理を自動化させればいいということか。これらはPack(プラグイン)として提供されているので、必要なTriggerやActionについては随時導入してやればいい。ActionとTriggerはインストール時からいくつか用意されている。以下のコマンドで確認できる。Links目次ローカルサーバでアクションを単体で実行するリモートサーバでアクションを実行するトリガーとアクションを関連づけてルールを作成し自動化してみるセンサーの設定ルールの作成ローカルサーバでアクションを単体で実行するとりあえず、アクションを単体で実行してみよう。ローカルで任意のコマンドを実行するアクションは「core.local(root権限での実行はcore.local_sudo)」になるので、このコマンドを実行する。trueリモートサーバでアクションを実行する当然、リモートサーバに対してもアクションを実行できる。trueなお、実行時は以下のようにパスワード認証でも実行させることができる。trueトリガーとアクションを関連づけてルールを作成し自動化してみるセンサーの設定さて、それではStackStormの本来の使い方といってもいい、特定の事象をトリガーとしたアクションの自動実行処理を設定してみよう。デフォルトでは「linux.FileWatchSensor(ファイルの変動を検知するセンサー)」が入っているので、今回はこれを使ってみよう。/opt/stackstorm/packs/linux/config.yamlfile_watch_sensor:file_paths:「/opt/stackstorm/packs/linux/config.yaml」へ監視対象となるファイルPATHを以下のように記述し、reloadする。今回は、テスト用に作った「/work」というディレクトリ配下のファイルを対象にする。"/work/st2_test.txt"設定ファイルを編集したら、以下のコマンドでreloadする。reloadルールの作成センサーの設定が完了したら、ルールを作成する。ルールの作成は、内容を記述したyamlファイルを読み込ませることで行える。そこで、以下のようなyamlファイルを作成した。/work/test_output2.txt"上記yamlファイルを読み込んでRuleを作成する。|+-------------+--------------------------------------------------------------+これで、「/work/st2_test.txt」というファイルに「abc」というキーワードを含む行が挿入されたら、「/work/test_output.txt」ファイルに書き込みが行われるようになった。うまく動かない場合は、Sensorの動きがおかしい可能性があるので、以下のコマンドで再度Sensorのみリロードしてみるといいだろう。blacknonインフラエンジニア(...のつもり)。仕事で使うならクライアントはWindowsよりはUNIXの方が好き。Commentコメントをキャンセルメールアドレスが公開されることはありません。