2017-01-18 7 views
0

저는 내 openvz 컨테이너 중 하나에서 매우 이상한 문제가 있습니다. top, htop, free 및 openvz 도구에 의해보고 된 메모리 사용량은 할당 된 10GB 중 ~ 4GB 정도 인 것으로 보입니다.openvz 컨테이너에서 메모리 돼지를 찾을 수 없습니다.

내가 메모리 사용량에 따라 프로세스를 나열하거나 ps_mem.py 스크립트를 사용하면 메모리 사용량이 800MB 밖에되지 않습니다. 비슷하게, htop에서 프로세스 목록을 탐색 할 때, 나는 메모리 hogging 위반자를 정확히 찾아 낼 수 없다.

분명히 내 컨테이너에 램을 새는 프로세스가 있지만 중요한 레벨에 도달하고 해당 컨테이너 (ssh, init 및 셸 제외)의 모든 항목을 중지하더라도 램을 다시 회수 할 수는 없습니다. 컨테이너를 다시 시작하면 도움이됩니다. 그렇지 않으면 결국 OOM이 컨테이너에서 시작됩니다.

나는 누출 된 프로세스가 죽을 때 모든 RAM을 해제하고 상단 또는 유사한 도구를 통해 오작동을 볼 수 있다는 전제하에있었습니다.

누구나 이런 행동을 경험 한 적이 있다면 어떤 힌트에 감사 할 것입니다. 컨테이너는 icinga2를 실행 중입니다. (누출 램이 의심됩니다.) 대부분의 시간에 모니터링 프로세스가 유휴 상태에 있지만, 예정된 모든 검사를 적시에 수행 할 수 있기 때문에 - 램 사용량이 줄어들 것을 기대합니다. 그 시간. 그것은하지 않습니다.

답변

0

나는 과거에 비슷한 문제가 있었고 결국 openvz 컨테이너가있는 호스팅 회사에서 해결했습니다. 최선의 방법은 호스팅 티켓을 열어 문제점을 설명하고 조사하도록 요청하는 것입니다. 어쩌면 그들은 오래된 커널 버전을 사용하거나 ovz 컨테이너에 영향을주는 서버상의 변경을했을 수 있습니다.

+0

나는 그것을 알아 냈다. - openvz는 dcache라고 불리는 것을 가지고있다. 성장과 성장하지만 궁극적으로 많은 양의 숫양이 소요되어 OOM 살인자가 컨테이너 안에서 미쳐 버리기 시작합니다. 컨테이너를 고정 된 dcache 크기로 재구성했고 팬텀 메모리 사용을 전혀하지 않았습니다. 나는 이것이 왜 이렇게 잘못 될지 전혀 모른다. – kovalsky