【问题标题】:using 'supervisorctl' in ansible playbook; Error "Failed to find executable supervisorctl"在 ansible playbook 中使用“supervisorctl”;错误“未能找到可执行的 supervisorctl”
【发布时间】:2017-05-11 22:58:17
【问题描述】:

概述:我正在尝试在 ansible playbook 中安装主管并运行程序进程。

我可以安装supervisor等,但是当我尝试进入supervisorctl运行一个简单的程序时,它无法找到可执行的supervisorctl。

这是失败的代码部分:

- supervisorctl:
      name=program:CAT
      state=started
      config=/etc/supervisor/supervisord.conf

导致错误:

TASK [supervisorctl] ***********************************************************
fatal: [localhost]: FAILED! => {"changed": false, "failed": true, "msg": "Failed to find required executable supervisorctl"}

但是,当我在终端中运行简单命令时,它可以工作:

supervisord -c /etc/supervisord.conf

我可以通过进入终端中的“supervisorctl”并输入“status”来查看正在运行的程序:

$ supervisorctl
CAT                              STOPPED   Dec 27 04:12 PM
supervisor> 

谁能指出我的错误最有可能是什么/在哪里?

我猜错误消息表明我没有正确安装主管,但我可以在剧本之外做这些事情的事实让我觉得我可以。我尝试指定可执行文件“supervisorctl”的路径,但我认为这不是剧本中的合法语法,因为这会产生其他错误。

*值得注意的是,我在一个运行python2.7的virtualenv中

【问题讨论】:

    标签: ansible supervisord


    【解决方案1】:

    我意识到配置文档中有一个参数选项允许我指定 supervisorctl 可执行文件的路径,并且有效! (因为我现在有一个不同的错误)

    将上面的脚本修改为:

    - supervisorctl:
          name=program:CAT
          state=started
          config=/etc/supervisor/supervisord.conf
          supervisorctl_path=/usr/bin/supervisorctl
    

    【讨论】:

      猜你喜欢
      • 2019-02-08
      • 2019-05-03
      • 2021-12-27
      • 2017-09-16
      • 2017-07-15
      • 2012-07-07
      • 1970-01-01
      • 1970-01-01
      • 2017-01-29
      相关资源
      最近更新 更多