#java #docker #memory #containers
Вопрос:
У меня есть подчиненное устройство конфигурации master — worker в centos Vapp с 6 исполнителями на каждом подчиненном устройстве .Он имеет 16 процессоров и 27 ГБ оперативной памяти. Поверх него запускаются тестовые примеры Java, на полный запуск которых требуется около 50 минут . Я ограничивал пространство кучи внутри каждого подчиненного контейнера, установив значение MaxRamFraction равным 27 . Кроме того, у меня есть задание cron, выполняемое каждые 10 минут для очистки данных кэша . Проблема : Есть определенный случай, например, 1/25, когда главный контейнер завершает работу, и при проверке журналов отладки обнаруживается следующая трассировка стека
kernel: 20349 total pagecache pages
kernel: 17331 pages in swap cache
kernel: Swap cache stats: add 1219511, delete 1202180, find 10194505/10306288
kernel: Free swap = 0kB
kernel: Total swap = 2097148kB
kernel: 7077758 pages RAM
kernel: 0 pages HighMem/MovableOnly
kernel: 131463 pages reserved
Я вижу, что память подкачки составляет 0 КБ, поэтому это приводит к выходу контейнеров .Если да, то как мне решить эту проблему ? Нужно ли мне увеличивать объем памяти подкачки в файле yml ? Это сработает ?
Это лучшая практика или мне нужно очищать пространство подкачки каждый раз, когда набор тестов завершает выполнение ? Как это сделать ?
Любая помощь будет признательна