Улучшает ли виртуализация Docker стабильность?

Улучшает ли виртуализация Docker стабильность?

Где-то год назад я читал, что использование контейнеров Docker делает сервер более стабильным, поскольку из-за неисправного приложения рухнет именно контейнер, а не ОС хоста.

Насколько я знаю,приложения не могут сами по себе привести к сбою ОС, для этого им нужна какая-то ошибка ядра, драйвера или оборудования.

Предотвращает ли виртуализация Docker сбои ОС хоста?

решение1

Виртуализация не предотвращает сбои ОС хоста, но может помочь снизить фактор риска.

Docker — это не что иное, как интерфейс, который транслирует системные вызовы из виртуализированной программы в хостовую ОС. Поэтому один или комбинация вызовов все еще может вызвать ошибку ОС и привести к ее краху.

Таким образом, Docker более склонен вызывать такие проблемы, чем классические виртуальные машины, поскольку виртуализированная программа менее изолирована в Docker, хотя вероятность того, что это произойдет в Docker, может быть несколько меньше, чем при запуске непосредственно в ОС, поскольку вызовы проходят через два интерфейса, а не через один, и поэтому проверяются дважды.

Docker накладывает некоторые ограничения на виртуализированную программу, такие как максимальный объем оперативной памяти и процессора, что может помочь избежать сбоев системы из-за перегрузки и насыщения ресурсами. Он также скрывает файловую систему хоста от виртуализированной программы (исключения всегда возможны), тем самым избегая ее повреждения программой.

Связанный контент