首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何使用ansible杀死正在运行的进程?

如何使用ansible杀死正在运行的进程?
EN

Stack Overflow用户
提问于 2017-10-01 18:48:02
回答 4查看 53.8K关注 0票数 23

我有一个ansible剧本来杀死正在运行的进程,并且大部分时间工作得很好!然而,我们不时地发现无法被杀死的进程,因此,"wait_for“到达超时,抛出一个错误并停止该进程。

目前的解决办法是手动进入盒子,使用“杀死-9”,然后再次运行“ansible剧本”,所以我想知道是否有任何方法可以从ansible本身处理这个场景?我的意思是,我不想从一开始就使用杀死-9,但我可能有一种方法来处理超时?,甚至使用杀死-9,只有在300秒内进程还没有被杀死的情况下?但是怎样才是最好的方法呢?

以下是我目前的任务:

代码语言:javascript
运行
复制
- name: Get running processes
  shell: "ps -ef | grep -v grep | grep -w {{ PROCESS }} | awk '{print $2}'"
  register: running_processes

- name: Kill running processes
  shell: "kill {{ item }}"
  with_items: "{{ running_processes.stdout_lines }}"

- name: Waiting until all running processes are killed
  wait_for:
    path: "/proc/{{ item }}/status"
    state: absent
  with_items: "{{ running_processes.stdout_lines }}"

谢谢!

EN

Stack Overflow用户

发布于 2020-04-07 05:42:34

使用(1)而不是grep+kill

票数 6
EN
查看全部 4 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46515704

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档