gpt4 book ai didi

kubernetes - Kubernetes pod -为什么有时会有多个过程?

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

我的理解是,如果将一个容器配置为具有一个容器,则该容器将以PID 1的形式运行其“主”进程,仅此而已。我的 pods 每个只有一个容器,而且它们经常有多个进程在运行(总是同一进程的副本)-为什么会发生这种情况?

在一个群集上,我有:

USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root 1 0.3 0.4 276668 76076 ? Ssl 16:50 0:48 python manage.py drive_consumer_worker
root 19 0.0 0.0 34432 2756 ? Rs 20:28 0:00 ps aux

在另一个集群(运行相同的 Deployment)上,我有:
USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root 1 1.2 0.3 1269420 104388 ? Ssl Mar16 240:12 python manage.py drive_consumer_worker
root 26 0.0 0.2 1044312 84160 ? S Mar16 0:01 python manage.py drive_consumer_worker
root 30 0.0 0.0 34440 2872 ? Rs 20:30 0:00 ps aux

如您所见,内存大小足够大,足以表明它是一个“实际”过程,但是我不知道该如何做才能继续调试。我没有看到定义了Pod副本数量和进程计数的任何模式。

部署定义的摘录:
      containers:
- args:
- newrelic-admin run-program python manage.py drive_consumer_worker
command:
- /bin/bash
- -c

这里发生了什么?

最佳答案

它实际上取决于父进程,如果它不产生任何子进程,那么1进程就是您将在容器中拥有的全部。在这种情况下,python manage.py drive_consumer_worker似乎正在生成子进程,因此,如果容器中有更多进程,则它应由应用程序来控制是否生成子进程。

关于kubernetes - Kubernetes pod -为什么有时会有多个过程?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55425153/

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