В этой статье мы разберем очень важную концепцию в Kubernetes — хранение данных — и рассмотрим ее работу.
Тома
Итак, в нашей прошлой статье мы использовали в качестве примера Node с двумя pods, my-app и базой данных. В этой статье мы будем использовать тот же пример.
Итак, у нас есть подсистема базы данных, которую использует наше приложение, и она создает некоторые данные. Если контейнер базы данных или подкад перезапускается, данные теряются, что, безусловно, вызывает беспокойство и раздражение, поскольку вы хотите, чтобы данные базы данных или журнальные данные постоянно сохранялись во времени.
Для решения этой проблемы у нас есть другой компонент Kubernetes, известный как тома.
Как он работает?
Том в основном присоединяет физическое хранилище на жестком диске к вашему модулю, и это хранилище может находиться на вашей локальной машине, то есть на том же серверном узле, где запущен модуль, или на удаленном хранилище, то есть вне кластера Kubernetes, например, в облачном хранилище или в вашем собственном хранилище, которое не является частью кластера Kubernetes, поэтому у вас просто есть внешняя ссылка на него.
Таким образом, теперь, при перезапуске Database Pod или Container, все данные сохраняются.
Важно понимать различие между кластером Kubernetes и хранилищем, независимо от того, является ли оно локальным или удаленным. Считайте, что хранилище — это внешний жесткий диск, вставленный в кластер Kubernetes, потому что кластер Kubernetes не занимается явным сохранением данных, что означает, что вы, как пользователь или администратор Kubernetes, несете ответственность за резервное копирование данных, их дублирование, обслуживание и обеспечение их хранения на надлежащем оборудовании, среди прочего.
В следующей статье мы рассмотрим еще два компонента Kubernetes — Deployment и StatefulSet.
Спасибо, что прочитали этот блог; следите за мной, чтобы узнать больше.