Velero – это средство бекапа ресурсов и томов Кубернетис. Есть и плагин к Microk8s.
Основная проблема Velero в том, что он потворствует админам, пытающимся перенести практики работы с виртуалками в кубер.
В самой идее нет ничего плохого, просто это не работает:
- в распределенной системе невозможно одномоментно сделать снимки всех томов даже в теории
- даже если сделать такие снимки, то не факт, что приложения запустятся с такими данными, т.к. в этот момент приложение могло записать только часть данных
- бекапы ресурсов кубернетис (то, что мы обычно видим в ямл-файлах) тоже особого смысла не имеют: оно все равно автоматическии без ручных правок на новом кластере скорее всего не запустится
В принципе, Velero можно использовать как инструмент контроля изменений в кластере для бедных (если бекапить только ресурсы и потом смотреть по разным бекапам какие изменения когда произошли вручную), но это все равно хуже нормального CI/CD и каких-нибудь средств аудита (не интересовался этим вопросом).
Правильный подход:
- автоматическое развертывание всего кластера, например, через ArgoCD
- бекап каждого stateful приложения по отдельности в S3-совместимое внешнее хранилище
В этом случае, все заявленные на сайте цели будут выполнены (Disaster Recovery, Data Migration, Data protection). Только, в отличие от Velero, будут действительно выполнены, а не для галочки.