Ответ 1
Я не эксперт о ядре докера, но я постараюсь ответить на некоторые из этих вопросов.
- Я полагаю, что сохранение состояния файловой системы означает, что контейнер все еще занимает некоторое место в файле хоста система?
Да. Докер сохраняет все данные контейнера и изображения в /var/lib/docker
. По умолчанию для сохранения данных контейнера и изображения используется aufs. Данные каждого слоя сохраняются в /var/lib/docker/aufs/diff
. Когда создается новый контейнер, создается новый слой с папкой, и там сохраняются изменения со слоев исходного изображения.
- Есть ли поражение производительности (кроме потребления дискового пространства на хосте), связанное с тем, что 10 или 100 столов остановлено контейнеров в системе? Например, делает ли это труднее для Docker для запуска и управления новыми контейнерами?
Насколько я знаю, это не должно быть никакого удара. Когда вы останавливаете контейнер, демон докеров отправляет SIGTERM и SIGKILL ко всему процессу этого контейнера, как описано в документации docker CLI:
Использование: остановка докера [ОПЦИИ] КОНТЕЙНЕР [КОНТЕЙНЕР...]
Остановите запущенный контейнер, отправив SIGTERM, а затем SIGKILL после льготный период
-t, --time = 10 Количество секунд, чтобы дождаться, пока контейнер остановитесь, прежде чем убить его. Значение по умолчанию - 10 секунд.
3. Наконец, если приостановленные контейнеры сохраняют свое состояние памяти, когда Unpaused - как продемонстрировано их умение запоминать memcached ключи - оказывают ли они различное влияние на процессор и память?
Как сказал @Usman, докер реализует паузу/остановку, используя морозильник cgroup. Если я не ошибаюсь, когда вы помещаете процесс в морозильник (или его группу), вы блокируете выполнение новой задачи этого процесса из планировщика задач ядра (то есть: он останавливает процесс), но вы не выполняете убить их, и они продолжают потреблять память, которую они используют (хотя ядро может переместить эту память для замены или сплошной диск). И ресурсы ЦП, используемые приостановленным контейнером, я считаю незначительными. Для получения дополнительной информации об этом я бы проверил запрос на тягу этой функции, Проблема докеры # 5948