gpt4 book ai didi

ansible - 使用 ansible 在远程主机上启动长时间运行的进程

转载 作者:行者123 更新时间:2023-12-02 12:16:54 25 4
gpt4 key购买 nike

我是 Ansible 新手。我正在尝试使用非常简单的 Ansible Playbook 在远程主机上启动一个进程。

这是我的剧本的样子

-
hosts: somehost
gather_facts: no
user: ubuntu
tasks:
- name: change directory and run jetty server
shell: cd /home/ubuntu/code; nohup ./run.sh
async: 45

run.sh 使用一些参数调用 java 服务器进程。我的理解是,使用异步,即使剧本完成后,我在远程计算机上的进程也会继续运行(这应该在大约 45 秒后发生。)

但是,一旦我的剧本退出,远程主机终端上的 run.sh 也会启动该进程。

谁能解释一下发生了什么以及我在这里缺少什么。

谢谢。

最佳答案

我有 ansible playbook 来部署我的 Play 应用程序。我使用 shell 的命令替换来实现这一点,它对我来说很有效。我认为这是因为命令替换生成了一个新的子 shell 实例来执行命令。

-
hosts: somehost
gather_facts: no
user: ubuntu
tasks:
- name: change directory and run jetty server
shell: dummy=$(nohup /run.sh &) chdir={{/home/ubuntu/code}}

关于ansible - 使用 ansible 在远程主机上启动长时间运行的进程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19212983/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com