Почему файловая система облачного приложения эфемерна
"Приложение Beyond 12 factor APP" и "Рекомендации по проектированию и запуску приложения в облаке" ( https://docs.cloudfoundry.org/devguide/deploy-apps/prepare-to-deploy.html) указывают на то, что файловая система эфемерна, Однако я получил другой результат при тестировании с openstack:
создать виртуальную машину с помощью сервера openstack создать с изображением centos qcow2, без внешнего хранилища
ssh к виртуальной машине, создайте файл в /home/centos
перезагрузить ВМ
после запуска виртуальной машины файл все еще там.
Я понял что-то не так?
цитата из книги:
дружественные к облаку приложения не просто работают в облаке, они охватывают эластичную масштабируемость, эфемерные файловые системы
в главе "Журналы": облачные приложения не могут делать никаких предположений о файловой системе, в которой они работают, кроме того, что она эфемерна.
цитата из "Соображения по проектированию и запуску приложения в облаке": "Избегайте записи в локальную файловую систему": "Хранилище локальной файловой системы недолговечно."... "Когда происходит сбой или остановка экземпляра приложения, ресурсы назначенные этому экземпляру, возвращаются платформой, включая любые изменения локального диска, сделанные с момента запуска приложения. После перезапуска экземпляра приложение запустится с новым образом диска. Хотя ваше приложение может записывать локальные файлы во время работы, файлы исчезнет после перезапуска приложения. "
2 ответа
Смысл в том, что при запуске контейнерных приложений нельзя доверять, что файловая система будет долго храниться между перезапусками, так как она может быть очищена или в следующий раз вы можете работать в другом экземпляре.
Это не означает, что данные гарантированно исчезнут - просто они не гарантированно останутся - очень похоже на временную папку на обычном сервере
Эфемерное (непостоянное) хранилище по умолчанию предоставляется гостям, если для приложений требуется постоянное хранилище, можно использовать Cinder.