Co warto wiedzieć o kopii bezpieczeństwa klastra Kubernetes?
Tradycyjnie podejście oparte o wykonywanie backupu pojedynczych całych serwerów/węzłów niekoniecznie sprawdzi się w odniesieniu do klastrów Kubernetes, w których wszystkie uruchomione aplikacje działają jako kontenery. W przypadku klastra K8s powinniśmy utworzyć kopie zapasowe następujących jego elementów:
- danych zapisanych na wolumenach (StatefulSets),
- konfiguracji klastra i jego zasobów (np. obiekty dodane do klastra, jak Deployments, Secrets etc.).
Nie zapominajmy też, że klastry Kubernetes są jedną z wielu części naszej infrastruktury. Dlatego powinniśmy tworzyć kopie zapasowe wszystkich narzędzi/serwisów, które komunikują się z klastrem lub są przez niego używane:
- narzędzia CD/CI,
- bazy danych klucz-wartość,
- relacyjne bazy danych,
- obrazy kontenerów (rejestry kontenerów).
Dostawcy usług cloudowych oferują nam usługi, które pozwalają wykonywać kopie zapasowe klastrów Kubernetes, lecz najczęściej wymagają one stworzenia wielu dedykowanych skryptów/narzędzi, które zajmą się całym procesem. Dlatego też na rynku możemy znaleźć wiele organizacji tworzących oprogramowanie, które pozwala na kompleksowe podejście do wykonywania kopii zapasowych. Do najpopularniejszych należą m.in.:
- Velero,
- Kasten K10,
- Rancher.