apache - Kubernetes Apache2被杀

标签 apache kubernetes

我有一个kubernetes集群,并且cgroup内存不足。我在YAML中声明了资源,但是我不知道哪个apache2需要更多的内存。它给了我一个进程ID,但是我如何知道哪个Pod被杀死了?

谢谢。

最佳答案

就是这样。您的Apache进程使用的内存超出了pod /容器定义所允许的内存。

它可能需要更多内存的原因:

  • 您的交通和 session 正在增加
  • Apache正在 fork 更多容器内的进程,而这些进程将进入内存限制。
  • 由于配置问题,Apache无法获得一些持久的 session 。

  • 如果您正在为容器运行Docker(大多数人都这样做),则可以ssh进入集群中的节点并运行:
    docker ps -a
    

    您应该看到运行Apache进程的Exited容器。然后,您可以运行:
    docker logs <container-id>
    

    您可能会得到有关Apache被杀死之前为什么这样做的详细信息。如果您只看到很少的信息,建议您增加Apache日志的详细程度。

    希望能帮助到你。

    关于apache - Kubernetes Apache2被杀,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52470615/

    相关文章:

    kubernetes - 如何在 Kubernetes 中的容器之间共享源自容器的目录?

    kubernetes mountPath 与 hostPath

    php - 创建一个自定义 docker 容器以匹配我的服务器

    kubernetes - Ceph libRBD缓存控制

    php - .htaccess 301 重定向不起作用?

    apache - 使用现有 Apache 安装 Subversion Edge

    kubernetes - Terraform:使用一个应用启动 GKE 集群和 Ingress 应用程序

    Kubernetes : Cluster-Autoscaler: How to verify autoscaling is working

    wordpress - 如何编写 Mod Rewrite 来排除 Shibboleth url?

    regex - 使用 Apache 的 LocationMatch 规则