我正在尝试在 ubuntu 16.04 服务器上运行多个 lxc 容器。(libvirt 版本为 1.3.1)。我的团队使用这些容器的性质意味着它们不断启动然后被销毁,我们使用 python libvirt api 绑定来管理这个生命周期。我们的工具曾经在较旧的硬件上运行良好,使用较旧的 ubuntu(14.04)和较旧的 libvirt 版本(1.2.4)。
在升级后的硬件/软件设置中,一切开始正常工作:容器正常运行。但是随着服务器继续在配置的负载下运行,似乎容器并没有被完全销毁。我这样说是因为当我运行时,virsh list
我看到了预期的正在运行的容器数量——但是,当我使用 ps 和 grep 列出容器名称的进程时,我发现对于我已销毁的容器,仍有一大堆 libvirt 进程在运行——它们似乎已被 libvirt 泄露。我不知道为什么当我们使用 libvirt api 销毁它们时它们没有被销毁。以前有人见过这种行为吗?如果见过,你是怎么做的?我完全不知所措。