如何获取容器上特定进程的RAM、CPU和网络使用情况



我正在看一些运行在Centos7虚拟机上的Docker容器。每个容器将运行多个进程。对于每个进程,我希望能够看到CPU网络和RAM使用情况,以确定容器何时开始过载。获得容器的CPU和RAM是不够的,因为CPU可以分配100%的RAM,但在进程中实际上有空闲的RAM。我已经使用Sysdig凿子来获得单独进程的CPU使用情况,但不包括网络和RAM使用情况。特别是对于网络统计,我希望能够知道网络数据包丢失的任何其他相关统计。理想情况下,我将能够使用类似sysdig的工具从主机检索统计数据,而不必使用容器内的资源来运行单独的日志生成器。

我相信您可以使用docker top <container id>查看容器中运行的所有进程,但这不会显示内存和cpu使用情况等。

您可以使用docker stats <container id>查看整个容器的总内存使用情况、cpu使用情况、i/o等。

或者,您可以登录到您的容器,只是通过使用docker exec -it <container id> bash来查看自己,但请注意,您可能没有bash可用,这取决于您的基础,因此您可能必须使用sh

相关内容

  • 没有找到相关文章

最新更新