2017-03-28 10 views
0

サービスがminionで実行されていることを確認するSaltstackスケジュールを設定しようとしています。しかし、service.runningはスケジュール上の機能として動作しているようには見えません。ここでSaltstack - サービスが動作していないことを確認するスケジュール

は私のrun.slsファイルです:

test-service-sched: 
    schedule.present: 
     - name: test-service-sched 
     - function: service.running 
     - seconds: 60 
     - job_kwargs: 
      name: test-service 
     - persist: True 
     - enabled: True 
     - run_on_start: True 

そして私は、次のコマンドを実行します。salt 'service*' state.apply run

これは手先に次のエラーで終了:私は見ていない

2017-03-28 02:47:11,493 [salt.utils.schedule           ][ERROR ][6172] Unhandled exception running service.running 
Traceback (most recent call last): 
    File "/usr/lib/python2.6/site-packages/salt/utils/schedule.py", line 826, in handle_func 
    message=self.functions.missing_fun_string(func)) 
    File "/usr/lib/python2.6/site-packages/salt/utils/error.py", line 36, in raise_error 
    raise ex(message) 
Exception: 'service.running' is not available. 

私はservice.runningをスケジュールから実行することができないと書かれている文書のもの。それは塩の既知の限界ですか?それとも間違っているのですか?

私はcmd.runを使用できますが、サービスが既に実行されている場合は、エラーでログにスパムを送信してしまいます。

答えて

0

私はSalt Google Groupの正しい方向を指していました。実行モジュールと状態モジュールには違いがあります。 service.runningは実行モジュールであり、スケジュールは状態モジュールのみをサポートしているので、間接的に参照する必要がありました。 salt 'service*' state.apply scheduleが、私はそれが欲しかった正確に何をしたランニング、今

service_running: 
    service.running: 
    - name: test_service 

schedule.sls:

service_schedule: 
    schedule.present: 
    - function: state.apply 
    - minutes: 1 
    - job_args: 
     - running 

running.sls私は2つのファイルを使用していました。

関連する問題