Перейти к содержанию

Поиск

Показаны результаты для тегов 'pbs'.

  • Поиск по тегам

    Введите теги через запятую.
  • Поиск по автору

Тип контента


Форумы

  • OpeNode
    • Новости
    • Общение
  • Статьи и обсуждения
    • Docker Контейнеры
    • Прокси и Виртуальный Частные Сети
    • Сетевое оборудование
    • 3D-моделирование и 3D-печать
    • WEB технологии и их применение
    • Операционные системы и Софт
    • Домашняя инфраструктура
    • Программирование и архитектура
    • Искусственный интеллект
    • OSINT
  • Клуб DWG Проблемы сборок
  • Клуб DWG Сборки DWG
  • Zero Trust Network Темы
  • Zero Trust Network OpenZITI
  • Marzban Инструкции
  • Marzban Продвинутые инструкции
  • Marzban Вопросы и проблемы
  • Marzban Общение
  • BookWorm Общение
  • BookWorm Поиск материалов
  • Общий клуб - ОБЩЕНИЕ Предложения по КЛУБАМ
  • Панели управления VPN и Proxy 3x-UI/X-ui
  • Панели управления VPN и Proxy Другие решения
  • Marzneshin (Форк Marzban) Инструкции

Категории

  • Полезные файлы
    • CMS
  • Книги - общий раздел
    • Хакинг и безопасность [FILES]
    • СУБД [FILES]
    • Сети / VoIP [FILES]
    • Веб-дизайн и программирование [FILES]
    • Mac OS; Linux, FreeBSD и прочие *NIX [FILES]
  • 3D-модели для печати
  • Marzban Файлы
  • BookWorm Книги

Поиск результатов в...

Поиск контента, содержащего...


Дата создания

  • Начало

    Конец


Дата обновления

  • Начало

    Конец


Фильтр по количеству...

Регистрация

  • Начало

    Конец


Группа


Обо мне


Пол

Найдено 2 результата

  1. Вступление, или очередная проблема из неоткуда Система бэкапов Proxmox (PBS) является достаточно мощным и удобным инструментом для создания резервных копий виртуальных машин Proxmox, но она имеет одну проблему, которая мешала мне для организации задуманной мной системы домашнего сервера. PBS не может делать синхронизацию с удаленным каталогом по протоколу SAMBA. Синхронизация бэкапов в PBS доступна только между несколькими экземплярами самого сервера бэкапов, то есть для переноса бэкапов на другое устройство там должен быть установлен Debian с пакетом PBS. Альтернативой может являться создание хранилища данных в удаленной папке, созданной по протоколу NFS. В моем случае стояла задача восстановить исходную схему резервирования бэкапов, которая была реализована до перехода на создание бэкапы с помощью PBS, когда резервные копии также переносились на мой основной компьютер, откуда отправлялись на внешний диск. Так как основной компьютер работает под управлением Windows, возникли неожиданные сложности. NFS не поддерживается не серверными версиями Windows, остаются только сторонние варианты реализации. Но и в такой ситуации есть ряд подводных камней, фактически NFS будет являться просто сетевой папкой, куда складываются бэкапы, следовательно для резервного копирования в момент выполнения задачи компьютер с данной папкой должен быть включен. В результате моих поисков было найдено два основных варианта для решения поставленной задачи: 1. Запустить виртуальную машину с PBS 2. Запустить PBS в Docker-контейнере В дальнейшем я выбрал вариант запуска через Docker-контейнер, так как он для меня оказался более удобным и менее прожорливым по ресурсам (вся система Docker с запущенным PBS потребляет до 700 Мб ОЗУ). Также мне было откровенно лень разбираться с пробросом портов из виртуальной машины и еще пачкой ненужных задач. Для виртуальных машин Proxmox - ван лав. Так же данный способ подойдет для запуска на NAS. Установка и запуск PBS в докере Данный способ является не рекомендуемым и явно не поддерживаемым, для большей стабильности рекомендую использовать вариант запуска через виртуальную машину. Настройка синхронизации между двумя экземплярами PBS будет описана в следующем разделе. Для установки PBS на Debian в виртуалке приведен на оффициально сайте: https://pbs.proxmox.com/docs/installation.html#install-proxmox-backup-server-on-debian Для запуска докер в Windows необходимо установить docker desktop с официального сайта https://www.docker.com/products/docker-desktop/ для полноценной работы потребуется регистрация на докер хаб. После установки и первого запуска попадаем в стартовое окно docker desktop которое на самом деле очень бесполезное, в дальнейшем он нам понадобиться только для администрирования контейнера. В принципе этой установки должно быть достаточно, но лучше так же установить WSL если не был установлен ранее. Идем в Microsoft Store (да на удивление он все еще живой, сам в шоке) и находим там Windows Subsystem for Linux. Данная подсистема предназначена для запуска Linux системы прямо в Windows без использования стороннего софта для виртуализации, а так же его использует докер. Переходим в настройки докера и включаем запуск при старте Windows и включаем WSL2/ В принципе данных настроек должно быть достаточно для запуска необходимого нам контейнера. Но дополнительно настроим что бы докер не съедал наши ресурсы до бесконечности, по умолчанию потребление. Идем в основную папку пользователя: C:\Users\UserName И создаем там файлик со следующим именем: .wslconfig Открываем файл через любой текстовый редактор (рекомендую Notepad ++) И вставляем следующий конфиг: [wsl2] memory=1GB processors=1 Данная настройка вступит в силу после перезагрузки компьютера. Таким образом мы ограничиваем работу докера что бы он мог использовать не более 1Гб озу и не более одного виртуального ядра, чего для наших задач достаточно. Отдельно отмечу что минимальный объем может быть 1Гб так как происходит округление до целых значений. Данное ограничение действует на весь WSl в целом. Подробней о данном конфиг файле можно почитать тут: https://learn.microsoft.com/ru-ru/windows/wsl/wsl-config На этом предварительный этап закончен, приступаем непосредственно к запуску PBS. Сам проект задумывался для того что бы запускать PBS на NAS с поддержкой докера что в принципе является не плохим решением. Подробней с ним можете ознакомиться по ссылке: https://github.com/ayufan/pve-backup-server-dockerfiles Приступаем к запуску, для этого создадим папку в которой будет храниться конфиги и все данные нашего PBS (при желании можно развести их по разным папкам путем модификации docker compose). Нам потребуется вот такая структура папок: Создаем в корнейвой папке новый файл с именем docker-compose.yml и вставляем следующий конфиг: version: '2.1' services: pbs: image: ayufan/proxmox-backup-server:latest container_name: pbs hostname: hostName mem_limit: 128Mb environment: - TZ=Europe/Moscow volumes: - D:\Proxmox Backup Server\etc:/etc/proxmox-backup - D:\Proxmox Backup Server\logs:/var/log/proxmox-backup - D:\Proxmox Backup Server\lib:/var/lib/proxmox-backup - D:\Proxmox Backup Server\backups:/backups ports: - 8007:8007 tmpfs: - /run restart: unless-stopped stop_signal: SIGHUP Изменяем параметры volumes на свои а так же устанавливаем hostname для адекватного отображения имени хоста в интерфейсе PBS. Сохраняем файл и открываем консоль windows. Вводим стандартную команду запуска docker compose docker compose up -d В моем случае произошёл перезапуск контейнера, при первом запуске будет вывод о загрузке и сборке image. Возвращаемся в окно docker desktop и видим появившийся новый контейнер и потребление выделенных ресурсов. Фактическое потребление (зарезервировано) для системы в моем случае: На это этап запуска PBS в докере закончен, приступаем к непосредственной настройке синхронизации. Настройка нового экземпляра PBS Заходим в веб морду нашего нового экземпляра PBS по адресу: https://<Ip-pc>:8007/ По умолчанию доступен один пользователь: admin с паролем pbspbs Заходим в систему и приступаем к настройке. Нам необходимо создать хранилище данных, для этого нажимаем «Добавить хранилище данных». Путь к хранилищу указываем на папку, которую прокинули из компьютера для хранения бэкапов. Тут же настроим задание проверки резервных копий на целостность. Следующим шагом необходимо настроить права для работы с полученным хранилищем. Идем в радел управление доступом и создаем нового пользователя: Нам необходимо создать нового пользователя и сменить пароль для существующего. Так же выдаем права пользователю: В моем примере хранилище данных называется deniom-pc. В хранилище данных должно быть так: Настройка синхронизации между экземплярами PBS Основные настройки будут происходить на вторичном PBS который будет вытягивать бэкапы из PBS на хосте proxmox. Данные настройки выполняем под пользователем admin так как могут быть проблемы с правами. Подключаться мы так же будет через root пользователя к основному серверу. В идеале необходимо разграничивать права и использовать ограниченного пользователя. Переходим в удаленные хранилища, и добавляем новое подключение Заполняем данные для авторизации на основном сервере PBS. Отдельно надо отметить поле отпечаток, он нужен для установки ssl соединения между нашими системами. Что бы его получить возвращаемся в интерфейс PBS основного сервера PBSи на вкладке панелью мониторинга нажимаем показать отпечаток. Переходим в хранилище данных и настроим синхронизацию В данной настройке будет выполняться попытка синхронизации каждых два часа. Заключение На этом настройка фактически завершена, на самом деле мы имеем практически полноценный экземпляр PBS. Так же мы можем подключить данный экземпляр PBS напрямую к proxmox и делать бэкапы прямо в него, данное решение будет удобно для установки на NAS. Спасибо за внимание.
  2. Вступление, или от простых бэкапов к отдельной системе Proxmox VE имеет встроенную поддержку создания резервных копий и снимков виртуальных машин, однако базовая реализация подвержена определенным ограничениям. Одной из таких проблем, с которой я столкнулся, является следующая: В моей схеме домашней инфраструктуры резервные копии виртуальных машин создавались каждую ночь в 4 часа утра. Полученные архивы сохранялись на жестком диске, подключенном к тому же мини-ПК. Это позволяло хранить до 7 копий виртуальных машин на диске, что было приемлемо, пока я не развернул отдельный контейнер с Nextcloud. Для меня важным стало резервное копирование жесткого диска, на котором хранятся пользовательские файлы Nextcloud. Это привело к увеличению суммарного размера ежедневной резервной копии с 5 ГБ до 30 ГБ и более. Такая ситуация оказалась неприятной и требовала поиска решения. Кроме того, я передавал полученные резервные копии из Nextcloud на основной компьютер для дополнительного резервного копирования, так как я не хотел рисковать потерей данных в случае отказа жесткого диска. Однако передача такого объема данных ежедневно по сети вызывала определенные неудобства, особенно учитывая тенденцию к увеличению объема данных. Попытка обсудить эту проблему в профильных чатах привела меня к изучению нового инструмента - Proxmox Backup Server (PBS). Зачем это все и что нам это дает? Основное отличие PBS заключается в том, что он не хранит полные копии бэкапов, а осуществляет запись только изменений в файлах. Этот процесс часто описывается термином 'инкрементальное резервное копирование' или 'дифференциальное резервное копирование'. Также имеется возможность настройки синхронизации с удаленным хранилищем, используя NFS. PBS автоматически проверяет целостность бэкапов, предоставляя также ряд других полезных функций. В моем случае, я хранил бэкапы за 3 дня (после добавления Nextcloud пришлось сократить историю с 7 до 3 дней), что в сумме занимало около 90-110 Гб на жестких дисках сервера и основного компьютера. Размер каждой виртуальной машины в архиве составлял от 5 до 10 Гб, а Nextcloud занимал около 20 Гб. После перехода на использование PBS, я теперь храню 30 резервных копий каждой виртуальной машины, занимающих примерно 65 Гб. Стоит отметить, что эти значения ситуативны и зависят от степени изменений данных. Если в вашем случае много изменений в больших файлах, то и объемы будут увеличиваться соответственно. Например, если вы решите создавать резервные копии фильмов (хотя зачем это нужно - другой вопрос). Фактически, PBS создает полную копию на первом этапе, а затем сохраняет только изменения по сравнению с предыдущей версией, что позволяет создавать некую 'машина времени' для данных. Особенности использования, или не все так радужно как хотелось бы... В отличие от бэкапов, создаваемых в виде архива, в данном случае мы получаем служебные файлы, которые кроме Proxmox никто прочитать не сможет. Это может быть серьезной проблемой, если надо вручную что-то вытащить, но всегда можно открыть и скачать архив через веб-интерфейс сервиса. Также для душевного спокойствия я оставил формирование классических бэкапов Proxmox в архив, но только раз в неделю, которые Nextcloud перекладывает на основной компьютер, а я уже руками забираю на внешний жесткий диск. Еще одной проблемой является то, что PBS не может делать синхронизацию через Samba для переноса бэкапов на тот же компьютер под Windows. Сам PBS поддерживает только NFS, который Microsoft не предоставляет на не серверных версиях Windows. Перенести файлы в ручном режиме или через WebDAV тоже не особо поможет, так как они являются скрытыми и частично зашифрованными. Для решения этой проблемы я испробовал много разных способов: от создания NFS сторонним софтом и в WSL до запуска отдельной виртуальной машины. Но самым оптимальным у меня получилось решение по запуску через Docker, о котором я расскажу отдельно. Также сам PBS можно поставить несколькими способами. Рекомендуемым вариантом является развертывание отдельной машины с образом ISO PBS, альтернативой может быть установка в Debian как пакет. Не рекомендуемым, но допустимым является установка в PVE, не рекомендуется из-за того, что данные могут быть потеряны, если возникнут проблемы с хостом. Еще один не очевидный, не заявленный и точно не рекомендуемый (но кого это остановит ) способ - это установка как Docker-контейнер. Основная часть, или хватит лирики В моем случае у меня был мини-ПК с жестким диском, на котором хранились бэкапы, так что вариант с установкой в PVE мне показался достаточно оптимальным, так как не требовал отдельной железки и вообще это домашний тестовый стенд (ака подопытный кролик). С этим делом все достаточно просто, можем обратиться к официальной инструкции: [https://pbs.proxmox.com/docs/installation.html#install-proxmox-backup-server-on-proxmox-ve] Но я вынес сюда основные шаги, на самом деле их будет всего 2. Подключаемся по SSH к хосту Proxmox и приступаем. 1. Добавляем репозиторий с PBS в источники для PVE nano /etc/apt/sources.list И добавляем запись deb http://download.proxmox.com/debian/pbs bookworm pbs-no-subscription Внимание!!! Я предполагаю, что лишние репозитории у вас были заранее выключены и используется бесплатная версия. Для этого можно воспользоваться скриптом для настройки Proxmox (применять после чистой установки, иначе на свой страх может ломать источники и бог знает что еще) bash -c "$(wget -qLO - https://github.com/tteck/Proxmox/raw/main/misc/post-pve-install.sh)" Все скрипты: [https://tteck.github.io/Proxmox/] 2. Обновляем список пакетов и устанавливаем PBS apt update apt install proxmox-backup-server Собственно на этом все, у нас есть PBS на нашем основном хосте, заходим на него по адресу: [https://<ip-or-dns-name>:8007] Нас встречает стандартный интерфейс proxmox и полное непонимание что с этим всем делать, но где наши не пропадали велики методом тыка идем в раздел хранилище данных, и создаем новое хранилище данных. Фактически мы указываем путь, где будут лежать наши файлы бэкапов в разбиении на служебные файлы proxmox. После инициализации получаем обзорную информацию о нашем диске, тут можно оценить и прогноз по заполнению и фактор дедукции (то на сколько наши бэкапы повторяют себя) а также посмотреть статусы по регламентным заданиям. Тут же настроим задание проверки резервных копий на целостность. Следующим шагом необходимо настроить права для работы с полученным хранилищем. Идем в радел управление доступом и создаем нового пользователя: На вкладке разрешения настраиваем доступ к самому хранилищу, я в общем виде выдаю права администратора так как не вижу угрозы для своей системы, но данный вопрос можно подробно почитать в справке. Добавляем примерно так: В итоге должно получиться В интерфейсе хранилища данных так же должны быть такие записи !!! Внимание !!! Дополнительный раздел и не обязательные действия. Если у вас есть свой домен и отдельный пунктик на предупреждения браузера о само подписанных сертификатах можно выпустить новый сертификат с помощью dns chelenge если или закинуть свой сертификат. Это надо если не используете прокси сервер или для обеспечения стабильности когда npm лежит. Данная инструкция так же актуальна для Proxmox VE. Переходим в раздел сертификаты, вкладка учетные записи: Создаем новую учетную запись, и новую запись модуля. На вкладке сертификаты добавляем новую запись ACME и выполняем запрос сертификата Данные действия обязательно делать до подключения так как получение сертификата изменяет подпись вашего сервера PBS. Подключение PBS к proxmox VE, или когда это уже закончиться… Заходим в веб интерфейс proxmox VE, идем в раздел хранилаща и добавляем наш PBS В моем случае настройки выглядят так: Сервер указываем IP вашего хоста, отдельно обращаю внимание что соединение происходит по 8007 порту, отдельностоит обратить внимание при настройки прокси сервера. Настройки по хранению резервных копий делать не надо за это будет отвечать сам PBS. Отдельно надо отметить поле отпечаток, он нужен для установки ssl соединения между нашими системами. Что бы его получить возвращаемся в интерфейс PBS и на вкладке понель мониторинга нажимаем показать отпечаток. После завершения настройки у вас появиться новое хранилище в вашем интерфейсе Proxmox VE Настроим резервное копирование. Переходим в раздел корня – «Резервное копирование» и создаем новую запись. Дополнительных настроек не надо. Отдельно надо отметить, что вариант сжатия мы не выбираем за это, отвечает сам PBS. Так же не маловажная особенность по режимам, которая, может быть, и при обычном создании бэкапов, но при использовании PBS она возникает гарантировано. Если выбирать режим «Снимок», которые делает бэкапы без остановки виртуальных машин, в процессе бэкапа создается копия виртуальной машины со всеми подключенными (и указанными для бэкапа) дисками. Эта копия создается в директории /var основного хоста, и если в процессе не хватит места, то возникнет ошибка типа такой: ERROR: Backup of VM 101 failed - command 'rsync --stats -h -X -A --numeric-ids -aH --delete --no-whole-file --sparse --one-file-system --relative '--exclude=/tmp/?*' '--exclude=/var/tmp/?*' '--exclude=/var/run/?*.pid' /proc/1632/root//./ /proc/1632/root//./mnt/nextcloud /var/tmp/vzdumptmp128654_101' failed: exit code 11 Для исправления ее есть несколько способов я использовал два: 1. Та виртуалка которая не помещается во временные файлы бэкапиться в режиме «Остановка» 2. Увеличение пространства lvm root для того что бы поместились данные. При этом не надо что бы туда влазил весь выделенный диск, достаточно что бы в свободное пространство помещались все сохраняемые данные. Так же есть способы с переопределением директории /var но данные методы мне показались запутанными и пока для моей ситуации не востребованы. Так же у меня осталось регламентное копирование в архивы раз в неделю для переноса на внешний диск как я и писал в начале статьи. Фактически на этом настройка PBS закончена, вы можете создавать более правильные и оптимальные бэкапы. В отдельном материале я расскажу как настроить синхронизацию PBS с компьютером для создание дополнительного хранилища бэкапов. Всем спасибо за внимание, желаю вам удачных бэкапов которы не когда вам не понадобяться.
×
×
  • Создать...

Важная информация

Вы принимаете наши Условия использования, Политика конфиденциальности, Правила. А также использование Мы разместили cookie-файлы на ваше устройство, чтобы помочь сделать этот сайт лучше. Вы можете изменить свои настройки cookie-файлов, или продолжить без изменения настроек.

Яндекс.Метрика