您的位置:首页 > 其它

KVM虚拟化内存分配

2013-11-16 03:07 369 查看

日记

记录一次实验中发生的错误 

KVM:以示警告!!!

宿主主机的messages如下:

Nov 16 10:41:16 CWG kernel: Out of memory: Kill process 31674 (qemu-kvm) score 477 or sacrifice child

Nov 16 10:41:16 CWG kernel: Killed process 31674, UID 107, (qemu-kvm) total-vm:4329848kB, anon-rss:3789216kB, file-rss:96kB

Nov 16 10:41:16 CWG kernel: plugin-containe invoked oom-killer: gfp_mask=0x201da, order=0, oom_adj=0, oom_score_adj=0

Nov 16 10:41:16 CWG kernel: plugin-containe cpuset=/ mems_allowed=0

Nov 16 10:41:16 CWG kernel: Pid: 22880, comm: plugin-containe Tainted: G        W  ---------------    2.6.32-358.el6.x86_64 #1

Nov 16 10:41:16 CWG kernel: Call Trace:

Nov 16 10:41:16 CWG kernel: [<ffffffff810cb5d1>] ? cpuset_print_task_mems_allowed+0x91/0xb0

Nov 16 10:41:16 CWG kernel: [<ffffffff8111cd10>] ? dump_header+0x90/0x1b0

Nov 16 10:41:16 CWG kernel: [<ffffffff810e91ee>] ? __delayacct_freepages_end+0x2e/0x30

Nov 16 10:41:16 CWG kernel: [<ffffffff8121d0bc>] ? security_real_capable_noaudit+0x3c/0x70

Nov 16 10:41:16 CWG kernel: [<ffffffff8111d192>] ? oom_kill_process+0x82/0x2a0

Nov 16 10:41:16 CWG kernel: [<ffffffff8111d0d1>] ? select_bad_process+0xe1/0x120

Nov 16 10:41:16 CWG kernel: [<ffffffff8111d5d0>] ? out_of_memory+0x220/0x3c0

Nov 16 10:41:16 CWG kernel: [<ffffffff8112c27c>] ? __alloc_pages_nodemask+0x8ac/0x8d0

Nov 16 10:41:16 CWG kernel: [<ffffffff8116087a>] ? alloc_pages_current+0xaa/0x110

Nov 16 10:41:16 CWG kernel: [<ffffffff8111a0f7>] ? __page_cache_alloc+0x87/0x90

Nov 16 10:41:16 CWG kernel: [<ffffffff81119ade>] ? find_get_page+0x1e/0xa0

Nov 16 10:41:16 CWG kernel: [<ffffffff8111b0b7>] ? filemap_fault+0x1a7/0x500

Nov 16 10:41:16 CWG kernel: [<ffffffff811430b4>] ? __do_fault+0x54/0x530

Nov 16 10:41:16 CWG kernel: [<ffffffff81143687>] ? handle_pte_fault+0xf7/0xb50

Nov 16 10:41:16 CWG kernel: [<ffffffff8118b7da>] ? pipe_write+0x31a/0x6a0

Nov 16 10:41:16 CWG kernel: [<ffffffff8114431a>] ? handle_mm_fault+0x23a/0x310

Nov 16 10:41:16 CWG kernel: [<ffffffff810474c9>] ? __do_page_fault+0x139/0x480

Nov 16 10:41:16 CWG kernel: [<ffffffff8151311e>] ? do_page_fault+0x3e/0xa0

Nov 16 10:41:16 CWG kernel: [<ffffffff815104d5>] ? page_fault+0x25/0x30

事情是这样的,我在本配置是8G的内存。

用kvm开了三台虚拟机一台256M,其他两台3.8G,这样加起来8G左右,但是宿主机还将用掉一部分。

一下情况是我将3.8G的两台分别降到3.5G的时候看到的情况:

             total       used       free     shared    buffers     cached

Mem:          7773       7192        581          0          4        178

可见cache和buffers占用并不多,已经使用了7192了,剩余581M这时候还实验还没到使用资源最高的时候。

这个问题告诉我们KVM在设置内存的时候没有检测机制,设置的时候必须按所有的机器业务最大的时候占用资源的情况来分析分配,

否则虚拟机会神不知鬼不觉的down机。

####################################

迷途小运维原创

作者:john
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: