Створення резервних копій та відновлення екземпляра реєстру вручну

🌐 Цей документ доступний українською та англійською мовами. Використовуйте перемикач у правому верхньому куті, щоб змінити версію.

Після успішного розгортання реєстру та регламенту адміністратор Платформи може вручну створити резервну копію (backup) реєстру. Ця копія зберігається у захищеному сховищі MinIO, яке розгорнуто поза межами OpenShift-кластера для додаткової безпеки.

За потреби ви можете відновити реєстр (restore) із цієї резервної копії.

1. Створення резервної копії реєстру

Плануйте створення резервних копій на періоди з найменшим навантаженням на систему. Найкраще запускати бекапи вночі — це допоможе уникнути збоїв і не вплине на роботу користувачів.

Виконайте наступні кроки, щоб створити бекап реєстру:

  1. Увійдіть до Control Plane, використовуючи створені попередньо логін і пароль.

  2. Перейдіть до розділу Реєстри та оберіть реєстр для резервного копіювання.

  3. Відкрийте секцію Конфігурація на сторінці Перегляд конфігурації створеного реєстру, натисніть посилання до Jenkins Платформи (поле CI) та на вкладці All знайдіть пайплайн із назвою Create-registry-backup-<registry-name>, де <registry-name> — назва вашого реєстру.

    Детальніше про пайплайни — див. Перевірка відомостей про розгортання реєстру.

    control plane create backup job

  4. Відкрийте папку та натисніть Build with parameters, щоб запустити пайплайн Create-registry-backup.

    control plane create backup 01

  5. Натисніть Build.

    control plane create backup 02

    control plane create backup 03

    У разі успішного виконання job, створюється резервна копія реєстру з регламентом та завантажується до відповідної директорії сховища бекапів MinIO.

Реплікація даних об’єктних бакетів Ceph

Пайплайн Create-registry-backup одночасно запускає два процеси: створення резервної копії реєстру та реплікацію об’єктних бакетів Ceph OBC.

За замовчуванням реплікація виконується о 19:30 UTC. Якщо потрібно змінити цей час, ви можете вручну оновити розклад у конфігурації:

  1. Відкрийте вебінтерфейс керування кластером OpenShift.

  2. У верхньому правому куті натисніть Copy login command  Display Token.

  3. У полі Log in with this token скопіюйте токен для входу в OpenShift через термінал. Він може виглядати так:

    Приклад oc login
    oc login --token=sha256~gQa0bxg_aaabbbcccd_D88470E-aabBcQuCn9keIM4I --server=https://api.env.dev.registry.eua.gov.ua:1234
  4. Відкрийте OpenShift CLI та виконайте скопійований рядок.

  5. Запустіть процес реплікації з тим розкладом, який потрібний користувачу. Для цього виконайте наступну команду:

    namespace="abc-02";schedule='19 12 * * *'; for cronJob in `oc get cronjob -n velero -o custom-columns="NAME:.metadata.name" --no-headers | grep "${namespace}"`;do oc -n velero patch cronjob/$cronJob -p '{"spec":{"schedule":"'$schedule'"}}'; echo 1;done
    Замініть значення namespace="abc-02" назвою вашого реєстру. Наприклад, namespace="test-registry".

➡️ Детальніше про механізм реплікації див. Керування розкладом резервного копіювання реєстру.

2. Відновлення реєстру

Виконайте наступні кроки, щоб відновити реєстр зі створеної резервної копії:

  1. Увійдіть до Control Plane, використовуючи створені попередньо логін і пароль.

  2. Перейдіть до розділу Реєстри та оберіть реєстр, який необхідно відновити.

  3. Відкрийте секцію Конфігурація на сторінці Перегляд конфігурації створеного реєстру, натисніть посилання до Jenkins Платформи (поле CI) та на вкладці All знайдіть пайплайн із назвою Restore-registry-<registry-name>, де <registry-name> — назва вашого реєстру.

    control plane create restore

  4. Відкрийте папку та натисніть Build with parameters, щоб запустити пайплайн Restore-registry.

    control plane create restore 01

  5. Натисніть Build.

    control plane create restore 02

  6. На кроці введення параметрів, оберіть версію резервної копії для відновлення. Для цього відкрийте Console Output на панелі ліворуч та натисніть Input requested.

    control plane create restore 03

  7. Оберіть версію резервної копії зі списку та натисніть Proceed.

    control plane create restore 04

    У разі успішного виконання пайплайну Restore-registry, реєстр буде відновлено до стану обраної версії резервної копії.

    control plane create restore 05