В даному посібнику, я розпишу як ми можем поєднати різні типи сховища для резервування бекапів
Proxmox пропонує численні функції та інструменти для розширення та додавання сховища, наприклад NFS та CIFS.
Це чудові варіанти не лише для розширення пам’яті, але й для додавання місць резервного копіювання.
Активуйте NFS на Synology
Щоб додати Synology NAS до Proxmox за допомогою NFS, службу NFS потрібно спочатку активувати в самій Synology, оскільки NFS вимкнено за замовчуванням.
Спочатку запустіть панель керування, звідти перейдіть до спільних служб.
Параметр SMB знаходиться у вкладці « SMB/NFS ». Ви можете знайти службу NFS прямо внизу на першій вкладці.
Далі створюєм спільну папку для зберігання, користувача та права доступ до цієї папки
Зберегти і на цьому налаштування на стороні Synology - завершені.
Переходим до самого Proxmox Datacenter -> Storage -> Add -> NFS
Готово, аналогічно можна і спробувати додати CIFS
Access with SSH/rsync/BorgBackup
1. Реєструємось, та купуємо Storage Box - відповідно до ваших вимог та розміру середовища
2. Вмикаємо ті пункти які нам будуть потрібні для роботи зі сховищем (SMB/CIFS, SSH) на ресурсі є чудовий посібник користувача (man)
Спочатку я розпишу, як налаштувати вивантеження бекапів з робочого серверу PVE на HSB.
Access with SSH/rsync/BorgBackup
Storage Box надає розширену службу SSH на порту 23. За допомогою цієї служби можна використовувати rsync, BorgBackup і деякі додаткові інструменти командного рядка.
ssh -p23 Ця електронна адреса захищена від спам-ботів. Вам необхідно увімкнути JavaScript, щоб побачити її.
де uXXXXX - це ваш унікальний ІД користувача
Є можливість отримати інтерактивний доступ SSH, але цей доступ обмежений. Повної оболонки немає. Наприклад, неможливо використовувати канали або перенаправлення. Також неможливо виконати завантажені сценарії.
Ви також можете безпосередньо виконувати команди через SSH, як це:
ssh -p23 Ця електронна адреса захищена від спам-ботів. Вам необхідно увімкнути JavaScript, щоб побачити її. mkdir MyBackup
Якщо ви використовуєте дочірній обліковий запис, використовуйте ім’я користувача дочірнього облікового запису для з’єднання SSH.
Для того щоб автоматизувати процес та не вводити паролі потрібно згенерувати ключі SSH
pveserver# ssh-keygen Generating public/private rsa key pair. Enter file in which to save the key (/root/.ssh/id_rsa): hetzner Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in hetzner Your public key has been saved in hetzner.pub The key fingerprint is: SHA256:Jxxg1woJN5WX4rb9/pEQB5ah83Z70LlULoUHWVYGUxD [email protected] The key's randomart image is: +---[RSA 3072]----+ | .... . +o*=E| | .o o . =.= +.| | * B o +.+| | . + o @ o ++| | . S O B +oo| | . + + o.+.| | . ...| | . | | | +----[SHA256]-----+
Завантажуємо ключ на Storage Box у Robot
Створюжмо папку на HSB
ssh -p 23 Ця електронна адреса захищена від спам-ботів. Вам необхідно увімкнути JavaScript, щоб побачити її. mkdir .ssh
Перевіряжм чи все ок
ssh -p 23 Ця електронна адреса захищена від спам-ботів. Вам необхідно увімкнути JavaScript, щоб побачити її. ls -la Ця електронна адреса захищена від спам-ботів. Вам необхідно увімкнути JavaScript, щоб побачити її.'s password: total 152 drwxr-xr-x 4 u312144 u312144 5 Aug 1 07:11 . dr-x--x--x 10 root wheel 10 Jul 28 14:27 .. -rw-r--r-- 1 u312144 u312144 54 Jul 28 15:18 .hsh_history drwxr-xr-x 2 u312144 u312144 2 Aug 1 07:11 .ssh
Завантажити:
pveserver# cat ~/.ssh/id_rsa.pub | ssh -p23 Ця електронна адреса захищена від спам-ботів. Вам необхідно увімкнути JavaScript, щоб побачити її. install-ssh-key Ця електронна адреса захищена від спам-ботів. Вам необхідно увімкнути JavaScript, щоб побачити її.'s password: Key No. 1 (ssh-rsa [email protected]) was installed in RFC4716 format Key No. 1 (ssh-rsa [email protected]) was installed in OpenSSH format
Після цього ви можете використовувати публічний ключ SSH для входу без пароля
rsync
Ви можете використовувати rsync, щоб завантажити поточний стан ваших каталогів файлів у ваш Storage Box. Наприклад, щоб завантажити локальний каталог до Storage Box, ви можете використати rsync таким чином:
rsync --progress -e 'ssh -p23' --recursive /var/lib/vz/dump/ Ця електронна адреса захищена від спам-ботів. Вам необхідно увімкнути JavaScript, щоб побачити її.:MyBackup
далі без пароля у вас повинно з*явитись прогрес копіювання файлів з директорії бекапів на віддалений HSB
vzdump-qemu-151-2022_07_24-16_11_23.vma.zst 15,393,882,715 100% 132.22MB/s 0:01:51 (xfr#7, to-chk=22/30)
Автоматизуєм процес копіювання з PVE на HSB
Створити файл nano /home/hsb.sh
#!/bin/bash
#autodelete old files after 5 days
find /var/lib/vz/dump/ -mtime +5 -type f -delete
# sync dump files to Hetzner Storage Box
rsync --progress -e 'ssh -p23' --recursive /var/lib/vz/dump/ Ця електронна адреса захищена від спам-ботів. Вам необхідно увімкнути JavaScript, щоб побачити її.:MyBackups
chmod +x /home/hsb.sh
!ВАЖЛИВО!
Планувальник створюєм після того як ваш PVE сервер створить бакап ваших ВМ
Створюєм cron планувальник crontab -e (від користувача який буде ранити цей скрипт)
додаєм вміст запуск кожної суботи о 01:00, та запис в лог файл:
0 1 * * 6 root /home/hsb.sh >> /var/log/hsb.log 2>&1
Алгоритм додавання samba/cifs - мав б бути дуже простим з врахуванням на скільки добре працює система гіпервізора proxmox
1. Авторизуємовсь у PVE -> Dashboard -> Storage -> Add -> SAMBA/CIFS
2. Заповнюєм всі пункти і отримуєм помилку 500.
Якщо ми до цього свторили окремого користувача і пробуєм підключатись, то вже помилка буде іншою:
Та помилка в PVE: dmesg
CIFS: VFS: cifs_mount failed w/return code = -112
Отже пробуєм з PVEserver перевіряти чи є доступ по smb протоколу
smbclient //uXXXXX.your-storagebox.de/uXXXXX-sub1 -d 0 -m smb3 -U uXXXXX-sub1 -c 'l' Enter WORKGROUP\uXXXXX-sub1's password: . D 0 Mon Aug 1 12:50:36 2022 .. D 0 Mon Aug 1 12:50:36 2022 5368709120 blocks of size 1024. 4416901816 blocks available
перевіряєм чи є підтримка версій smb 1, 2, 3
WARNING: Ignoring invalid value 'smb1' for parameter 'client max protocol' Enter WORKGROUP\uXXXXX-sub1's password: . D 0 Mon Aug 1 12:50:36 2022 .. D 0 Mon Aug 1 12:50:36 2022 5368709120 blocks of size 1024. 4399381340 blocks available
Отже свариться тільки на smb1.
Ось мій обхідний шлях:
увійдіть за допомогою основного облікового запису в StorageBox через sftp, наприклад, FileZilla, і створіть нову папку, наприклад HSB
Створіть новий суб-обліковий запис (uXXXXXX-subX) у Hetzner Robot - Storage Box і призначте його до папки HSB
увійдіть @ Proxmox Terminal і створіть папку
mkdir /mnt/HSB
створіть новий каталог у Proxmox->Storage
ID:
папка Hetzner-BX: /mnt/HSB
nano /etc/fstab #mount hetzner Storage Box //uXXXXXX -subX.your-storagebox.de/uXXXXXX-subX /mnt/HSB cifs iocharset=utf8,rw,credentials=/etc/HSB-credentials.txt,file_mode=0660,dir_mode=0770 0 0
nano /etc/HZ-BX-credentials.txt користувач =uXXXXXX-subX
пароль=xxxxxxxxxxxxxxx
вихід
chmod 0600 /etc/HSB-credentials.txt
перезавантажте Proxmox
@ Proxmox Terminal df -H вказує на успішне підключення до сховища
//uXXXXXX.your-storagebox.de/uXXXXXX-sub1 5.0T 895G 4.2T 18% /mnt/HSB
Щоб не перезавантажувати сервер можем виконати команду:
mount.cifs //uXXXXXX.your-storagebox.de/uXXXXXX-sub1 /mnt/HSB -o user=uXXXXXX-sub1,pass=mypassword,vers=1.0 --verbose
Швидкість завантаження буде залеєати від вашого місцезназодження та стабільності роботи інет з*єднання
Ви можете використовувати SFTP-сервер у Rclone для доступу до Storage Box.
Встановлюєм rclone
apt install rclone
Щоб налаштувати Rclone, виконайте команду rclone config та дотримуйтеся вказівок помічника.
Крім того, ви також можете налаштувати його вручну. Мінімальна конфігурація (шлях за замовчуванням ~/.config/rclone/rclone.conf) виглядає так:
[HSB] type = sftp host = uXXXXX.your-storagebox.de user = uXXXXX port = 23 pass = obscured-password
Щоб приховати пароль, виконайте команду rclone obscure .
Замість пароля у passзмінній ви також можете вказати ключ SSH зі змінною конфігурації key_file = .
Потім ви можете отримати доступ до Storage Box таким чином:
rclone ls HSB: