Ansibleプレイブックを使用してスーパーバイザを再起動しようとしていますが、Ansibleのスーパーバイザモジュールの問題に遭遇しているようです。
私のスーパーバイザー構成で、プログラムを定義しました:
[program:process]
process_name=%(program_name)s_%(process_num)02d
command=/home/box1/workers/bin/process
numprocs=64
directory=/home/box1/workers/bin
autostart=true
autorestart=true
startretries=5
stderr_logfile=/tmp/%(program_name)s-err.log
stdout_logfile=/tmp/%(program_name)s-out.log
user=root
そして、これはうまくいきます。しかし、Ansibleを介してスーパーバイザを再起動しようとすると、次のエラーが発生します。
failed: [box1] => {"failed": true}
msg: program:process: ERROR (no such process)
program:process: ERROR (no such process)
私のAnsibleタスク構成は次のようになります。
- name: Restart Supervisor
sudo: yes
supervisorctl: name=program:process state=restarted config=/etc/supervisor/supervisord.conf
name
私が試してみましたパラメータprogram:process
、program
、program:
そしてprocess
どれも仕事に思えません。現在、Ansible 1.5.4を使用しています。
1
最初にすることは、Ansibleを更新することです。このような古いバージョンを使用する理由はほとんどありません。
—
マイケルハンプトン
これは、Ubuntu 14.04 LTSに付属している標準バージョンです。私はそれが少し古いことを理解していますが、スーパバイザモジュールに関するAnsibleマニュアルでは、更新する必要があることを何も示していません(グループの名前は関係ありません)。確かに、新しいバージョンにはバグ修正が含まれている可能性がありますが、私が試みていることは、最新バージョンでは対応できないはずのかなり初歩的なもののようです。
—
ルーク
アイムかなりグループのサポートが追加されたときにそれはだとあなたは、このためのAnsible 1.6以降が必要です。Red Hatでさえ最新の安定バージョン(現在1.9.4にあります)を追跡しているため、Ubuntuとの取り決めがここではわかりません。もちろんRed Hatでは、systemdを使用して、このすべてのスーパーバイザーのことを忘れることができます。
—
マイケルハンプトン
心配ない。これは、私が作成するドキュメントです:docs.ansible.com/ansible/supervisorctl_module.html
—
Luke
そう、これは1.6が必要だと言っているページと全く同じです!
—
マイケルハンプトン