ansible查看进程是否启动

在 Ansible 中,您可以使用
shell
或
command
模块来执行命令并检查进程是否启动。以下是一个简单的示例,展示如何检查特定进程是否正在运行:
– name: Check if the process is running
shell: “ps -ef | grep {{ process_name }} | grep -v grep | wc -l”
register: process_check
ignore_errors: true

– name: Process is running
debug:
msg: “The process is running”
when: process_check.stdout | int > 0
在这个示例中,
process_name
是您想要检查的进程名称。该任务首先执行
ps -ef
命令来获取所有正在运行的进程,然后通过
grep
过滤出包含
process_name
的行。再次使用
grep -v grep
来排除包含
grep
命令本身的行。最后,使用
wc -l
来计算行数,即进程的实例数量。
register
关键词用于存储命令的输出,
ignore_errors: true
允许任务即使命令执行失败也继续执行。
when
关键词用于条件判断,如果
process_check.stdout
的内容转换为整数大于 0,则表示进程正在运行。
您可以根据需要调整这个示例,以适应您的具体场景。