Memory CoreOS单容器高内存使用率
因此,我有一个简单的Go web应用程序,部署为Docker容器。我正在使用CoreosAMI在AWS上运行一个Memory CoreOS单容器高内存使用率,memory,docker,coreos,Memory,Docker,Coreos,因此,我有一个简单的Go web应用程序,部署为Docker容器。我正在使用CoreosAMI在AWS上运行一个t2.small实例 容器非常小,根据docker stat的数据,仅使用了大约10MB的内存: CONTAINER CPU % MEM USAGE / LIMIT MEM % NET I/O BLOCK I/O 8e230506e99a 0.00%
t2.small
实例
容器非常小,根据docker stat的数据,仅使用了大约10MB的内存:
CONTAINER CPU % MEM USAGE / LIMIT MEM % NET I/O BLOCK I/O
8e230506e99a 0.00% 11.11 MB / 2.101 GB 0.53% 49.01 MB / 16.39 MB 1.622 MB / 0 B
但是,CoreOS实例似乎占用了大量内存:
$ free
total used free shared buffers cached
Mem: 2051772 1686012 365760 25388 253096 1031836
-/+ buffers/cache: 401080 1650692
Swap: 0 0 0
正如您所看到的,它使用了2GB总内存中几乎1.7GB的内存,只剩下大约300MB。这种情况似乎正在慢慢恶化
我已经让这个实例运行了大约3天,在新启动并启动一个Docker容器后,可用内存大约为400MB
这是我应该担心的吗?或者,当我的容器中的little Go应用程序只使用极小的10MB时,CoreOS应该使用如此多的内存。因为大部分内存使用是缓冲区和缓存。更好的指标是Docker的应用程序(如果它是一个小型Go应用程序,则很可能接近),以及第二行的操作系统总使用量minux缓冲区和缓存(使用量接近400 MB) 请参阅,以获得合理的解释