运行Puppet代理时获取“无法分配内存”

时间:2012-11-26 15:08:08

标签: linux automation puppet

当我运行“puppet agent -t”时,我收到以下错误:

Cannot allocate memory - /bin/uname -s
...
Cannot allocate memory - /sbin/arp -an
...
Cannot allocate memory - /bin/uname -s
...
Could not retrieve kernelversion: private method `split' called for nil:NilClass
Could not retrieve kernelmajversion: private method `split' called for nil:NilClass
...

完整错误在于:http://pastebin.com/fhjqrgBn

当我手动运行命令/bin/uname -s时,我得到的结果没有任何错误。

免费命令显示:

             total       used       free     shared    buffers     cached
Mem:        609600     160688     448912          0       5716      35432
-/+ buffers/cache:     119540     490060
Swap:            0          0          0

木偶虫?你觉得怎么样?

1 个答案:

答案 0 :(得分:1)

听起来你的系统内存不足。使用free,-m显示值以MB为单位检查内存使用情况:

$ free -m
             total       used       free     shared    buffers     cached
Mem:           590        412        177          0         22        314
-/+ buffers/cache:         75        514
Swap:            0          0          0

从另一个shell中,您可以在puppet代理程序运行时使用free检查内存使用情况,或者使用top或dstat等其他实用程序。

尝试查看您的服务状态,确保没有运行您不需要的服务:

service --status-all