KVM虚拟化内存分配

来源:互联网 发布:美工外包 编辑:程序博客网 时间:2024/06/07 23:43


日记


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


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

原创粉丝点击