[unix] ATOP은 vmcom과 vmlim의 빨간 줄을 보여줍니다. 무슨 뜻인가요?

유틸리티는 다음을 보여줍니다.

ATOP - MyServer         2013/01/07  00:03:57               10 seconds elapsed
PRC | sys   2.18s | user   8.33s | #proc    141 | #zombie    0 | #exit      0 |
CPU | sys     21% | user    139% | irq       0% | idle    228% | wait     11% |
cpu | sys      5% | user     40% | irq       0% | idle     51% | cpu002 w  3% |
cpu | sys      5% | user     35% | irq       0% | idle     56% | cpu001 w  3% |
cpu | sys      7% | user     30% | irq       0% | idle     61% | cpu000 w  2% |
cpu | sys      4% | user     34% | irq       0% | idle     61% | cpu003 w  1% |
CPL | avg1   1.00 | avg5    1.12 | avg15   1.25 | csw   389208 | intr  223367 |
MEM | tot   23.6G | free  136.3M | cache   6.7G | buff   66.5M | slab  205.1M |
SWP | tot    0.0M | free    0.0M |              | vmcom  21.8G | vmlim  11.8G |
DSK |         sdc | busy     12% | read      70 | write    109 | avio    6 ms |
DSK |         sde | busy      4% | read      37 | write    131 | avio    2 ms |
DSK |         sdd | busy      3% | read      38 | write    144 | avio    1 ms |
NET | transport   | tcpi     160 | tcpo     171 | udpi       0 | udpo       0 |
NET | network     | ipi      188 | ipo      172 | ipfrw      0 | deliv    160 |
NET | vnet1    0% | pcki     510 | pcko     442 | si   60 Kbps | so   26 Kbps |
NET | eth0     0% | pcki     449 | pcko     527 | si   27 Kbps | so   65 Kbps |
NET | vnet0    0% | pcki       0 | pcko      44 | si    0 Kbps | so    3 Kbps |
NET | vnet7    0% | pcki       1 | pcko      44 | si    0 Kbps | so    3 Kbps |
NET | vnet2    0% | pcki       0 | pcko      43 | si    0 Kbps | so    3 Kbps |
NET | vnet3    0% | pcki       0 | pcko      43 | si    0 Kbps | so    3 Kbps |
NET | vnet6    0% | pcki       0 | pcko      43 | si    0 Kbps | so    3 Kbps |
NET | vnet5    0% | pcki       0 | pcko       5 | si    0 Kbps | so    0 Kbps |
NET | vnet4    0% | pcki       0 | pcko       5 | si    0 Kbps | so    0 Kbps |
NET | vnet8    0% | pcki       0 | pcko       5 | si    0 Kbps | so    0 Kbps |
NET | bond0  ---- | pcki     449 | pcko     527 | si   27 Kbps | so   65 Kbps |
NET | br0    ---- | pcki     157 | pcko     126 | si   12 Kbps | so   17 Kbps |
NET | lo     ---- | pcki      46 | pcko      46 | si    3 Kbps | so    3 Kbps |

내 질문은 다음과 같습니다 : 1) 모두 흰색이며 SWP가있는 줄은 빨간색입니다. RAM이 24GB이고 스왑을 사용하지 않습니다. 이 문제를 어떻게 해결할 수 있습니까? 큰 문제입니까? 나는 문제없이 일하고 있지만 누가 나쁜지 아는 사람은 누구입니까?

2) vmcom과 vmlim의 의미는 무엇입니까?

CPU는 쿼드 코어입니다. RAID5의 3HDD. 데비안 스퀴즈 x64가 있고 KVM과 MySQL을 사용하고 있습니다.

답변 주셔서 감사합니다



답변

주요 질문에 대한 답변은 아래에 있습니다-그러나 먼저 Mirra의 제안에 관한 경고 :

이 점에주의하십시오 :

: / proc / sys / vm / overcommit_memory에 2를 넣어보십시오.

이 경우 실제 메모리를 사용할 수있는 경우에도 vmlim보다 큰 vmcom이있을 때 OS에서 메모리를 요청하는 모든 프로세스는 오류를 수신합니다 (많은 오류가 있고 compiz와 같은 기본 시스템 응용 프로그램에서는 실패합니다). 그리고 때문에 :

vmlim = SWAP_size + 0.5 * RAM_size.

여기서 0.5 (50 %)는 / proc / sys / vm / overcommit_ratio 매개 변수의 기본값이며, 나와 같은 많은 오류를 쉽게 얻을 수 있습니다.


답변 주요 질문 : 기본 값으로 overcommit_memory에 매개 변수 다시 변경 되 돌리는 것이 낫다 (나를 위해 0 (우분투 12.04 LTS)를하지만, 다른 OS`es 1 일 수있다). 위대한 기사 에 따르면 프로세스에서 실제로 사용하는 메모리를 계산할 수 있습니다.

MemoryUsed ~ tot-(캐시 + 버프 + 프리) ~ 23.6G-(6.7G + 0.067G + 0.136G) ~ 16.7G

따라서 실제로는 16.7G 만 (23.6G 설치된 RAM에서) 프로세스에서 사용되며 출력 상단의 빨간색 선은 무시 될 수 있습니다.


답변

atop매뉴얼 페이지 숫자가 실제로 나타냅니다 무엇인지 설명하는 데 도움이됩니다.

기억

커밋 된 가상 메모리가 한계 (SWP 라인의 ‘vmcom’및 ‘vmlim’)를 초과하면 시스템 오버 커밋으로 인해 SWP 라인이 색상으로 표시됩니다.

SWP

직업을 교환하고 정보를 과도하게 사용하십시오.

이 줄에는 디스크의 총 스왑 공간 크기 ( ‘tot’)와 사용 가능한 스왑 공간 크기 ( ‘free’)가 포함됩니다.

또한 커밋 된 가상 메모리 공간 ( ‘vmcom’)과 커밋 된 공간의 최대 제한 ( ‘vmlim’, 기본적으로 스왑 크기에 메모리 크기의 50 %)이 표시됩니다. 커밋 된 공간은 프로세스를위한 모든 개인용 메모리 공간 할당을위한 예약 된 가상 공간입니다. 커널은 엄격한 오버 커밋 처리가 구성된 경우 커밋 된 공간이 제한을 초과하는지 여부 만 확인합니다 (vm.overcommit_memory는 2).

https://linux.die.net/man/1/atop


답변

당신 atop이 말하는 것은 다음과 같이 시스템이 메모리를 초과 커밋하고 있다는 것입니다.

http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=blob;f=Documentation/vm/overcommit-accounting;hb=HEAD

초과 커밋을 방지하기 위해을 /proc/sys/vm/overcommit_memory설정할 수 있습니다 2.


답변