Перед настройкой службы резервного копирования убедитесь, что у вас есть:
- GitHub Enterprise Server Экземпляр с версией 3.17 или выше.
- Выделенный том хранилища, подготовленный и управляемый для использования в качестве целевого объекта резервного копирования.
Требования к системе хранения данных
Чтобы обеспечить надежную и производительность резервных копий, хранилище должно соответствовать следующим требованиям:
-
Вместимость: Выделяйте как минимум в пять раз больше памяти, используемой для вашего основного GitHub диска с данными устройства. Это учитывает исторические моментальные снимки и будущий рост.
-
Поддержка файловой системы: Служба резервного копирования использует жёсткие ссылки для эффективного хранения, а ваш GitHub экземпляр — символические ссылки. Целевой объект резервного копирования должен поддерживать символьные и жесткие ссылки, и он должен использовать файловую систему с учетом регистра, чтобы предотвратить конфликты.
Вы можете проверить, поддерживает ли файловая система символьные ссылки жесткой связи, выполнив следующие действия:
cd /data/backup sudo touch file sudo ln -s file symlink sudo ln symlink hardlink ls -la
ln symlink hardlink Если команда успешно завершится, файловая система поддерживается.
- Производительность. Используйте высокопроизводительный хранилище с низкой задержкой и высоким числом операций ввода-вывода в секунду, чтобы избежать медленных резервных копий и восстановления.
- NFS. Избегайте использования подключения NFS для каталога резервного копирования (обычно
/data/backup), так как это может привести к истечении времени ожидания и снижению производительности.
Настройка службы резервного копирования
Можно настроить GitHub Enterprise Server Backup Service через Консоль управления.
Настройка целевого объекта резервного копирования
Перед настройкой службы необходимо подготовить том хранилища, в котором будут храниться резервные копии.
Использование нового блочного устройства
Если вы используете выделенное блокирующее устройство в качестве резервной цели, вам нужно инициализировать его через SSH перед переходом к Консоль управления. Этот процесс будет форматировать устройство и удалять все существующие данные.
-
Подключитесь к экземпляру
adminчерез SSH от имени пользователя. См . раздел AUTOTITLE. -
Подключите устройство резервного копирования к экземпляру.
-
Определите имя устройства, используя
lsblkдля перечисления доступных блочных устройств. Убедитесь, что выбрано правильное устройство, чтобы избежать потери данных.lsblk -
Выполните команду инициализации, заменив
YOUR_DEVICE_NAMEфактическое имя устройства, определенное на предыдущем шаге.Предупреждение
Эта команда будет окончательно удалять все данные на указанном устройстве. Перед продолжением дважды проверьте имя устройства и создайте резервную копию всех важных данных.
ghe-storage-init-backup /dev/YOUR_DEVICE_NAMEЭта команда:
-
Форматирует устройство (удаляет все данные).
-
Подготавливает его к использованию службой резервного копирования.
-
Устанавливает автоматическое крепление при
/data/backupзагрузке.
-
Отсоединить резервный диск
Предупреждение
Перед отсоединением резервного диска убедитесь, что в настоящее время не происходит резервное копирование или восстановление. Отсоединение диска во время его работы может привести к потере данных или перерыву сервиса.
Если вам нужно отсоединить резервный диск , GitHub Enterprise Serverпожалуйста, выполните следующие шаги
-
Перечислите блокировку устройств и отключите
/data/backup.sudo lsblk sudo umount /data/backup -
Перечислите логические тома и отключите логический том.
sudo lvs sudo lvchange -an <backup_VG>/<backup_LV> -
Отсоединение диска с помощью консоли или CLI, предоставленного облачным провайдером или гипервизором.
-
Уберите точку крепления.
sudo rmdir /data/backup
Повторное использованием ранее инициализированного диска
Если устройство уже инициализировано с помощью ghe-storage-init-backup, его можно повторно использовать без переформатирования:
-
Подключитесь к экземпляру
adminчерез SSH от имени пользователя. -
Подключите диск к экземпляру.
-
Создайте точку подключения, если она не существует.
sudo mkdir -p /data/backup -
Включите и запустите службу подключения.
sudo systemctl enable ghe-backup-disk.service sudo systemctl start ghe-backup-disk.serviceЭто приведет к подключению устройства
/data/backupи гарантирует автоматическое подключение устройства в будущем.
Настройка параметров резервного копирования
После того как цель резервного копирования будет установлена, страница службы резервного копирования станет доступна в Консоль управления разделе «Резервное копирование».
Примечание.
Страница настроек появится, пока резервное хранилище не будет смонтировано /data/backup после выполнения вышеуказанных шагов инициализации или крепления.
Если вы переходите с GitHub Enterprise Server Backup Utilities, вы можете перенести конфигурацию одним из двух способов:
-
Ручная настройка: Воссоздайте настройки напрямую в Консоль управления.
-
Миграция командной строки: SSH в экземпляр, скопируйте
backup.configфайл из backup-utils и выполните следующую команду:ghe-migrate-backup-config /path/to/your/backup.configИспользуйте флаг для предварительного
--dry-runпросмотра изменений, не применяя их.
Планирование автоматических резервных копий
После настройки службы можно определить расписание резервного копирования.
- В Консоль управления, откройте вкладку «Резервные копии» в верхнем меню.
- В разделе "Расписание резервного копирования" выберите предопределенное расписание (например, Daily) или введите настраиваемое выражение cron.
- Нажмите Сохранить , чтобы применить изменения.
Первый запуск будет полной резервной копией. Будущие запуски будут добавочными. Если новая попытка резервного копирования начинается во время выполнения предыдущей, она может быть пропущена или не выполнена. В этом случае настройте расписание, чтобы избежать перекрытия.