服务无法从剧本或临时命令启动



我有一个从Ansible剧本启动服务的问题,这是的任务

- name: Start Jira Service 
shell: /etc/init.d/jira start
become_user: jira

- name: Start Jira Service 
systemd:
name: jira
state: started

用于故障排除:

  1. 我试着如下运行特别命令ansible -i hosts mig3 -m shell -a "systemctl start jira" --become-user=jira
  2. 使用相同的用户在服务器上以/etc/init.d/jira start命令的形式运行Jira服务-它可以毫无问题地运行
  3. 服务成功停止使用ansible -i hosts mig3 -m shell -a "/etc/init.d/jira stop" --become-user=jira
  4. 我注意到{{ jira_app_folder }}/work/上的文件catalina.pid已在服务器上成功创建,但Jira服务不可用
  5. 没有日志写入{{ jira_app_folder }}/logs/catalina.out
  6. 我将Jira用户添加为sudoer用户并运行ansible -i hosts mig3 -m shell -a "/etc/init.d/jira start" --become-user=jira -K
  7. 群集中其他Jira节点上存在相同问题

Jira启动-VVV输出

我们通过/etc/init.d管理Jira服务。

你知道根本原因是什么吗?

(注意,不是答案。(

让我们退一步,重新解决一些可以帮助您(以及StackOverflow社区(更好地帮助您解决问题的事情。

您首先列出了两个Ansible任务("shell:"one_answers"systemd:"调用(,但您既没有提到运行Ansible的机器的操作系统类型或版本,也没有提到您试图在其上配置Jira的目标系统,也没有提及"shell"的版本和包名(rpm/deb/etc(;Jira";可执行文件。屏幕截图显示了Ansible 2.10.9,这将有助于解决问题。我建议您添加这些详细信息,还包括Ansible的版本和您环境中的其他信息。

你提到你可以运行它"作为使用相同用户的服务器上的CCD_ 9命令;所以这应该会给你一个线索,也许这是最好的开始你的剧本的方式,而不考虑其他。

提供的屏幕截图显示剧本成功地执行了命令——我假设输出来自";外壳:";命令但事实上,Ansible的执行显示了";CHANGED";黄色表示Ansible认为命令运行成功(它退出时带有一个非错误代码(,但如果您使用";外壳:";任何时候都是一样的结果。

在这一点上,我不认为这是一个可以回答的问题——它看起来像是";外壳:";命令显示/etc/init.d/jira start执行的成功输出,所以在您期望的地方没有显示Jira日志,这更多地指向Jira配置问题,而不是Ansible问题。

不要消极,只是试着给你一些关于如何排除故障的提示,并给社区其他人提供可操作的细节。

最新更新