我正在查看在Centos7 VM上运行的许多Docker容器。每个容器都将运行许多进程。对于每个进程,我希望能够看到CPU网络和RAM使用情况,以确定容器何时开始过载。获取容器的CPU和RAM是不够的,因为CPU可以分配100%的RAM,但在进程中实际上有RAM备用。我使用Sysdig凿子来获取不同进程的CPU使用率,但是没有使用网络和RAM。特别是对于网络统计,我希望能够知道丢弃任何其他相关统计信息的网络数据包。理想情况下,我可以使用类似Sysdig的工具从主机检索统计信息,而不必使用容器内的资源来运行单独的日志生成器。
答案 0 :(得分:0)
我相信您可以使用docker top <container id>
查看容器中运行的所有进程,但这不会显示内存和CPU使用情况等。
您可以按照评论中的建议查看使用docker stats <container id>
的整个容器的总内存使用量,CPU使用率,i / o等。
或者您也可以使用docker exec -it <container id> bash
登录自己的容器,但请注意,根据您的情况,您可能没有可用的bash,因此您可能必须使用sh
。