Velero е софтуер за backup/restore на приложения в kubernetes. В лабораторната среда с която си играя се оказа, че има инсталиран Minio(разбира се има и nooba, но не ми се иска да цапам въпросният клъстер). Та целта на това занятие е да направя кратко backup/restore на проект в един от openshift клъстерите.
Текущо версията на velero е 1.9. Сваля се въпросният софтуер, след което се разархивира и го местя в /usr/local/bin/.
Втора стъпка, вписвам се с oc в някой от openshift клъстерите.
Трето, в произволна директория създавам файл с гръмкото име credentials-velero, съдържащ в себе си данни за вход във minio конзолата. Изглежда ето така:
[default]
aws_access_key_id = "minioadmin"
aws_secret_access_key = "minioadmin"
За да конфигурирам velero в openshift трябва да се изпълни инсталация, като това е моят пример. Посочвам име на файл с данните за вход, както и името на bucket-a, също и адресът за достъп до самото minio.
velero install \
--provider aws \
--plugins velero/velero-plugin-for-aws:v1.2.1 \
--bucket nn-proba \
--secret-file ./credentials-velero \
--use-volume-snapshots=false \
--backup-location-config region=minio,s3ForcePathStyle="true",s3Url=http://minio.dev.lablocal:9000
Дават се малко права за да се вдигне velero pod:
oc adm policy add-scc-to-user privileged -z velero -n velero
Използвам namespace proba-ssd в openshift за backup/restore. Разигравам сценарии на backup, унищожение на namespace, възстановяване.
velero backup create proba-bk --include-namespaces proba-ssd
Проверка в minio, както и в самото velero за грешки:
velero backup get
Триеме нещата в openshift и правим възстановяване.
oc delete namespace proba-ssd
Проверка!
velero restore create --from-backup proba01
Проверка! И в този проект се вижда, че имах един mysql с pv.
Полезни параметри за velero:
velero restore get
velero restore describe IME
velero backup delete BACKUP_NAME