Каждый моментальный снимок резервного копирования хранится в каталоге с меткой времени (например, YYYYMMDDTHHMMSS
) в целевом пути резервного копирования (например, /data/backup/data
). Моментальные снимки включают полный экспорт ключевых хранилищ данных. Репозитории Git, GitHub Pagesи другие компоненты хранятся с помощью жестких ссылок для оптимизации хранилища и обеспечения эффективного восстановления на определенный момент времени.
Примечание.
При архивации моментальных снимков резервного копирования необходимо сохранить символьные ссылки. Отмена ссылок или исключение символьных ссылок или хранение моментальных снимков в файловой системе, которая их не поддерживает, может привести к сбоям восстановления.
Симлинк current
всегда указывает на последний успешный каталог моментальных снимков.
Содержимое каталога моментальных снимков (<SNAPSHOT_TIMESTAMP>/
)
Каждый каталог моментальных снимков содержит файлы и папки для конфигурации экземпляра, хранилищ данных и операционных метаданных. Ниже приведена типичная структура.
Параметры и конфигурация
settings.json # Main appliance settings
manage-password # Management console password hash
uuid # Appliance UUID
version # GHES version at backup time
strategy # Backup strategy used (e.g., rsync, cluster)
cluster.conf # Cluster configuration (if applicable)
Экспорт хранилища данных
mysql.sql.gz # Logical database dump (default) OR
xtrabackup_checkpoints # Binary backup metadata (if binary backups used)
xtrabackup-export.log # Log snippet from binary backup
mysql-binary-backup-sentinel # Indicates binary backup type
# May include other files related to logical or binary MySQL backups
Redis
redis.rdb # Redis database dump
Elasticsearch
audit-log/ # Audit log indices (uses hard links)
elasticsearch/ # Search indices (if not skipped, uses hard links)
GitHub
repositories/ # Git repositories (uses hard links)
pages/ # GitHub Pages content (uses hard links)
storage/ # Alambic-managed storage: avatars, attachments, etc. (uses hard links)
GitHub Actions и CI/CD
actions/ # GitHub Actions blob storage (uses hard links)
mssql/ # MS SQL Server backups (.bak, .diff, .log) (uses hard links)
minio/ # MinIO object storage (if Actions or Packages enabled, uses hard links)
Секреты и учетные данные
authorized-keys.json # SSH keys authorized for administrative access
github-secrets.tar # Tarball of various exported instance secrets
saml-keys.tar # SAML IdP keys (if applicable)
ssh-host-keys.tar # SSH host keys
ssl-ca-certificates.tar # Custom CA certificates (if applicable)
# Includes other internal secrets and keys necessary for instance operation.
Перехватчики и данные доставки
git-hooks/ # Custom Git hooks (uses hard links)
hookshot/ # Webhook delivery data (uses hard links)
Прочие условия
enterprise.ghl # License file (often restored separately)
live-upgrade/ # Data for live upgrades or migrations (uses hard links)
benchmarks/ # Performance logs for backup steps
Резервное копирование содержимого корневого каталога (/data/backup/data/
)
Корневой каталог резервного копирования включает все папки моментальных снимков и метаданные, используемые для добавочного отслеживания резервного копирования и очистки:
YYYYMMDDTHHMMSS/ # Snapshot directory (one per backup)
... # Other snapshot directories
current # Symlink to the most recent successful snapshot
inc_full_backup # Tracks base for MySQL incremental backups
inc_snapshot_data # Tracks incremental MySQL snapshots
prune_* # Temporary directories marked for deletion
inc_previous_* # Renamed snapshot directories during pruning cycle