Перейти к содержимому

Proxmox Backup Server

Сервер резервного копирования: тридцатидневный календарь копий по каждой машине, неудавшиеся задачи с их журналами, плановые задания (синхронизация, проверка, очистка по сроку хранения, сборка мусора), хранилища данных, диски и пулы ZFS, ожидающие обновления, службы и версии пакетов самого сервера, а также ленточный уровень, если он есть.

Монитор PBS: сбои, 30-дневный календарь копий, задания и состояние

Помимо универсальных графиков, монитор PBS показывает шесть панелей, считываемых из того, что сохранил опрос — открытие страницы никогда не обращается к самому PBS:

  • Сбои — каждая задача, завершившаяся ошибкой за последние 30 дней (копирование, синхронизация, проверка, очистка, GC), сначала новые, с её типом, целью, временем начала и собственным сообщением об ошибке PBS. Show log по требованию запрашивает у PBS последние строки журнала задачи (/nodes/localhost/tasks/{upid}/log).
  • Календарь копий — одна строка на каждую машину с копиями (хранилище данных, пространство имён, type/id и имя гостя, если PVE записал его в заметки снимка), одна точка на день: бирюзовая, если в этот день копирование удалось (задача завершилась OK или снимок существует — у синхронизированных групп локальной задачи нет), красная, если задача копирования завершилась ошибкой и ни одна не удалась, янтарная, если копия есть, но её проверка не удалась, синяя, пока идёт копирование, серая, если ничего не происходило. Подсказка каждой точки показывает время, размер, длительность и фрагмент ошибки; строка сообщает, когда были последний успех и последний сбой, число снимков, размер последнего снимка и срок хранения применяемого задания очистки. Машина, все копии которой неудачны, не имеет ни одного снимка, но всё равно отображается — по её задачам.
  • Задания — каждое задание синхронизации, проверки и очистки и GC каждого хранилища данных, с расписанием, последним запуском, результатом, следующим запуском; последний неудачный запуск получает красную плашку и текст ошибки, сбои сортируются первыми.
  • Лента — только когда у сервера есть ленточный уровень. Задания ленточного копирования с их пулом, накопителем, меткой ожидаемой следующей ленты, последним запуском и его ошибкой; пулы носителей с политиками выделения и хранения, числом лент в них, числом истёкших и признаком шифрования; накопители и чейнджеры; и сами ленты с их состоянием, набором носителей, расположением и объёмом записанных байтов.
  • Хранилища данных и диски — полоса заполнения, собственный прогноз заполнения PBS, коэффициент дедупликации, последний GC; пулы ZFS с их состоянием; физические диски с вердиктом SMART и износом SSD и полная таблица SMART по требованию (/nodes/localhost/disks/smart). Для каждого хранилища данных также показываются плашка обслуживания или «Not mounted», плашка «Busy: n writes, n reads», рост, измеренный в день, и за сколько дней истории, сколько машин каждого типа в нём хранится, сколько длился последний GC, и предупреждающая строка, если этот GC нашёл нечитаемые чанки.
  • Сервер — юниты systemd, причём те, без которых сервер не может обойтись, выделены; версии пакетов Proxmox (установлена, доступна, запущена), с плашкой «Restart pending», если демон отстаёт от своего пакета; сертификат и срок его действия; и правила управления трафиком с их ограничениями и тем, что через них проходит.

Календарь разделяет дни по локальной полночи браузера. Его история берётся из списка задач: первый опрос после запуска читает последние 30 дней (/nodes/localhost/tasks?since=…&limit=5000), последующие опросы — только окно задач, а сервер хранит объединение в SQLite (pbs_task_history, 35 дней, не более 10 000 задач на монитор), чтобы календарь переживал перезапуски.

Все метрики имеют префикс dumbmonit_pbs_.

СемействоМетрикиМетки
Узелnode_cpu_percent, node_cpu_count, node_iowait_percent (время CPU в ожидании ввода-вывода — на сервере резервного копирования именно оно говорит о насыщении дисков), node_load1/5/15, node_memory_used/total/free_bytes, node_memory_used_percent, node_swap_used/total_bytes, node_rootfs_used/total/avail_bytes, node_rootfs_percent, node_uptime_seconds, node_kernel_info, version_info
Хранилища данныхdatastore_available, datastore_bytes_used/total/avail, datastore_used_percent, datastore_estimated_full_seconds (собственная оценка PBS; отсутствует, пока не хватает данных или использование уменьшается), datastore_dedup_factor, datastore_removable_unmounted (1, когда съёмное хранилище имеет статус notmounted — это не ошибка, оно просто не подключено; метка mount_status), datastore_backend_info (метка backend, filesystem или s3), datastore_maintenance (1, когда хранилище переведено на обслуживание; метка mode, offline, read-only…), datastore_groups и datastore_snapshots (метка type, vm/ct/host/other), datastore_active_reads, datastore_active_writes (что удерживает хранилище прямо сейчас — это объясняет сборку мусора, которая не завершается), datastore_growth_percent_per_day, datastore_growth_bytes_per_day, datastore_history_daysdatastore
Сборка мусораgc_last_removed_bytes, gc_last_pending_bytes, gc_last_run_ok (PBS 3.3+), gc_last_success_age_seconds, gc_last_duration_seconds, gc_disk_chunks, gc_last_pending_chunks, gc_last_removed_chunks, gc_bad_chunks (чанки, которые GC нашёл нечитаемыми и оставил на месте — это повреждение, а не место для освобождения: копию, которая на них ссылается, больше нельзя восстановить), verify_last_success_age_seconds, sync_last_success_age_secondsdatastore
Группы копийbackup_count, backup_last_timestamp_seconds, backup_last_age_seconds, backup_last_size_bytes, backup_last_verified (1 проверено, 0 неудача, отсутствует, если никогда не проверялось)datastore, namespace, backup_type, group
Пространства имёнnamespace_groups, namespace_snapshots (корневое пространство имён — namespace="")datastore, namespace
Задачи в окнеtasks_running, tasks_ok, tasks_failedworktype (backup, verificationjob, garbage_collection, prune, syncjob…)
Заданияjob_enabled, job_last_ok (1 для OK или WARNINGS: n, иначе 0, отсутствует, если задание никогда не запускалось), job_never_run (1, когда задание включено, имеет расписание и ни разу не запускалось — у него нет ни сбоя, ни успеха, поэтому в других местах оно не видно), job_last_run_age_seconds, job_next_run_seconds (отрицательное при просрочке), sync_jobs_total, verify_jobs_total, prune_jobs_total; псевдоним sync_job_last_ok для правилаjob, datastore, kind (sync, verify, prune); remote (remote:remote-store или local) у заданий синхронизации — псевдоним несёт job, datastore, remote
Лента (параметр tape, по умолчанию выкл., пять вызовов)tape_backup_job_last_ok, tape_backup_job_never_run, tape_backup_job_last_run_age_seconds, tape_backup_job_next_run_seconds, tape_backup_jobs_total; tape_drive_info (серия присутствия), tape_drives_total, tape_changers_total, tape_media_pools_total; tape_media_total, tape_media_writable, tape_media_expired, tape_media_bytes_usedjob, datastore, pool, drive у заданий; drive, vendor, model, changer у tape_drive_info; pool у счётчиков носителей
Диски (те же имена, что в Proxmox VE)node_disk_size_bytes, node_disk_smart_failed (0 passed, 1 failed; отсутствует, если SMART не дал вердикта), node_disk_health_info (серия присутствия; метки health, serial, used), node_disk_wearout_percent (использованный ресурс, только SSD, как его показывает PBS: 100 − wearout)disk (/dev/sda), model, type
Пулы ZFS (те же имена, что в Proxmox VE)node_zfs_pool_degraded (0 ONLINE, иначе 1), node_zfs_pool_health_info (метка health), node_zfs_pool_size_bytes, node_zfs_pool_alloc_bytes, node_zfs_pool_free_bytes, node_zfs_pool_used_percent, node_zfs_pool_fragmentation_percentpool
Обновленияnode_updates_pending (число пакетов, для которых доступно обновление)
Версии (параметр updates, из /nodes/localhost/apt/versions)node_package_upgradable (1/0), node_package_info (серия присутствия; метки installed, available, running), node_running_version_stale (1, когда установленный пакет proxmox-backup-server больше не соответствует запущенному демону — пакет обновили, а службы не перезапустили)package, ограничено proxmox-backup, proxmox-backup-server, proxmox-backup-client, proxmox-kernel-helper
Службы (параметр services, один вызов)node_service_active (1 работает, 0 нет), node_service_enabled (отсутствует для юнита static, который подтягивается другим юнитом и поэтому не включён и не выключен), node_services_totalservice, expected ("1" для proxmox-backup, proxmox-backup-proxy и proxmox-backup-banner — юнитов, без которых сервер не может обойтись; у каждого другого юнита серия всё равно есть, с expected="0", и тревоги он никогда не вызывает)
Сертификат (параметр certificates, по умолчанию выкл.)node_certificate_expires_seconds, отрицательное после истеченияcertificate (имя файла), issuer
Управление трафиком (параметр traffic_control)traffic_rate_in_bytes, traffic_rate_out_bytes (измеряется в момент опроса), traffic_limit_in_bytes, traffic_limit_out_bytes (настроенный предел, разобранный из десятичных строк PBS вроде 100 MB; отсутствует, когда в этом направлении предела нет, вместо нуля, который читался бы как «всё заблокировано»), traffic_rules_totalrule
Лимиты и сборbackup_groups_total, backup_groups_dropped, up, scrape_errors, scrape_duration_seconds

Задача, завершившаяся WARNINGS: n, считается успешной. Вызовы по каждому хранилищу данных ограничены четырьмя параллельными: перечисление снимков читает индексы хранилища, и всплеск замедлил бы выполняющееся копирование.

Списки заданий не ограничены окном задач: задание синхронизации, которое падает три недели, по-прежнему отображается как падающее. У задания, которое ни разу не запускалось, нет серии job_last_ok, но есть job_never_run, и правило «PBS job never ran» срабатывает именно в этом случае.

Сборка мусора читается одним вызовом /admin/gc, охватывающим сразу все хранилища данных, тогда как раньше требовался один вызов /admin/datastore/{store}/gc на хранилище; этот вызов по хранилищу остаётся запасным вариантом, когда /admin/gc недоступен — старый PBS или нехватка прав — и не считается ошибкой. /admin/gc также содержит длительность запуска и счётчики чанков, которых нет в вызове по хранилищу. gc_last_run_ok берётся из last-run-state в PBS 3.3 и новее; в более старых версиях используется самая недавняя задача сборки мусора в окне. Счётчики по типам берутся из /admin/datastore/{store}/status?verbose=1: без verbose PBS возвращает только размеры, которые уже дал /status/datastore-usage. /admin/datastore/{store}/namespace возвращает всё дерево пространств имён, поэтому во вложенных пространствах ничего не теряется — pve/site-a/rack1 считается так же, как корневое. Диски и пулы берутся из /nodes/localhost/disks/list и /nodes/localhost/disks/zfs (параметр disks; 403 допускается, как и 400, которым отвечает сервер без ZFS: нет серий пулов, нет ошибки сбора).

datastore_growth_percent_per_day — аппроксимация методом наименьших квадратов по истории использования, которую сам PBS возвращает через /status/datastore-usage: доля использования от 0 до 1, одна точка каждые тридцать минут за последний месяц, с пропусками null, которые пропускаются, а не заполняются — сервер, который был выключен, не рос, пока был выключен. Это те же числа, что стоят за собственным прогнозом PBS «full in N days». Нужно не менее восьми измеренных точек, прежде чем что-либо будет опубликовано, а datastore_history_days показывает, какую историю охватывает наклон. Отрицательное значение — не неисправность: очистка освобождает больше, чем добавляют копии.

Для ленты не публикуется ничего, когда у сервера нет ни накопителя, ни чейнджера, ни пула, ни ленточного задания — установка без ленты не должна обзаводиться десятком нулевых серий, которые выглядят как ленточный уровень в беде. Лента, не входящая ни в один пул, чистый носитель или носитель, выведенный из пула, не входит ни в один счётчик пулов.

Каждая машина с копиями — хост, ВМ или контейнер — также публикуется в общем семействе, которое используют все интеграции DumbMonit, отслеживающие защищаемые устройства, — dumbmonit_client_device_*, с префиксом без pbs, полностью описанном в разделе Client devices. У PBS не запрашивается ничего нового: это та же дата последнего снимка, что стоит за backup_last_timestamp_seconds, повторно опубликованная в общем семействе, чтобы одно правило и одна таблица обслуживали PBS наравне со всеми другими интеграциями, которые защищают устройство.

МетрикаЧтоМетки
last_backup_timestamp_secondsТот же момент, что и backup_last_timestamp_seconds для этой группыdevice, type, os, user, kind
stale_secondsПоложительное, когда группа превысила device_stale_days (по умолчанию 3) без нового снимка; управляет правилом Client device staledevice, type, os, user, kind, signal (всегда backup)

Ограничение, о котором стоит знать: PBS не записывает отдельное «подключение» для машины с копиями, только копии — last_seen_timestamp_seconds и сигнал connection здесь никогда не публикуются; в таблице на странице монитора last_connection отображается как «—». Устройство, названное в тревоге, — это имя гостя из заметок снимка, если его записал PVE, иначе type/id, как и в календаре копий.

Применяемые встроенные правила: Monitor unreachable, PBS datastore almost full, PBS datastore filling up, PBS backup too old (по группе копий: нет нового снимка два дня — измените порог правила для более длинного окна), PBS backup verification failed, PBS task failed, PBS garbage collection too old, PBS garbage collection failed, PBS corrupt chunks found, PBS sync job failed, PBS prune job failed, PBS verification job failed, PBS job never ran, PBS datastore not mounted, PBS service down, PBS restart pending after upgrade, PBS certificate expiring, PBS tape backup failed, PBS disk SMART failure, PBS SSD worn out, PBS ZFS pool degraded, PBS updates pending, Client device stale. Уведомления называют соответствующее задание, хранилище данных или группу копий.

Приведённые ниже шаги совпадают с теми, что показывает примечание рядом с формой. Принцип: пользователь, выделенный для мониторинга, токен с ролью только для чтения — никогда не учётная запись, под которой вы входите.

  1. Откройте оболочку на сервере резервного копирования (в веб-интерфейсе: Administration → Shell; или SSH) и создайте пользователя, выделенного для мониторинга. Пароль ему не нужен: входит токен.

    proxmox-backup-manager user create dumbmonit@pbs --comment "DumbMonit monitoring"
  2. Создайте API-токен пользователя. Команда выводит идентификатор токена и его секрет: скопируйте оба сейчас, PBS больше никогда не покажет секрет.

    proxmox-backup-manager user generate-token dumbmonit@pbs monitor
  3. Выдайте минимум для чтения, по каждому пути — токену и пользователю, которому он принадлежит. Эффективные привилегии токена — это пересечение его собственного ACL и ACL его пользователя: выданные одному токену, они не дают ровно ничего, и PBS нигде об этом не сообщает. Поэтому каждая строка записывается дважды. DatastoreAudit на /datastore (Datastore.Audit) читает хранилища данных, снимки, задания проверки и очистки и GC; Audit на /system (Sys.Audit) читает состояние узла, список задач и журналы задач, службы, правила управления трафиком, диски и пулы ZFS.

    proxmox-backup-manager acl update /datastore DatastoreAudit --auth-id 'dumbmonit@pbs'
    proxmox-backup-manager acl update /datastore DatastoreAudit --auth-id 'dumbmonit@pbs!monitor'
    proxmox-backup-manager acl update /system Audit --auth-id 'dumbmonit@pbs'
    proxmox-backup-manager acl update /system Audit --auth-id 'dumbmonit@pbs!monitor'

    Необязательно, и тоже дважды. RemoteAudit на /remote (Remote.Audit) показывает задания синхронизации, которые забирают данные с удалённого узла: встроенная роль Audit охватывает только Sys.Audit и Datastore.Audit, и без Remote.Audit такое задание не отклоняется, оно просто отсутствует в списке заданий. TapeAudit на /tape (Tape.Audit) читает ленточный уровень. Audit на / (Sys.Audit на верхнем уровне) перечисляет ожидающие обновления пакетов, а также охватывает /datastore и /system, если вы предпочитаете меньше строк. Без них эти элементы молча пропускаются, остальное не меняется. Здесь ничего не может записывать: сборщик выполняет только GET.

    proxmox-backup-manager acl update /remote RemoteAudit --auth-id 'dumbmonit@pbs'
    proxmox-backup-manager acl update /remote RemoteAudit --auth-id 'dumbmonit@pbs!monitor'
    proxmox-backup-manager acl update /tape TapeAudit --auth-id 'dumbmonit@pbs'
    proxmox-backup-manager acl update /tape TapeAudit --auth-id 'dumbmonit@pbs!monitor'
    proxmox-backup-manager acl update / Audit --auth-id 'dumbmonit@pbs'
    proxmox-backup-manager acl update / Audit --auth-id 'dumbmonit@pbs!monitor'
  4. Прежде чем покинуть оболочку, проверьте, что токен действительно может читать. Команда выводит его эффективные привилегии по путям; пустой результат означает, что у пользователя нет ACL, который есть у токена, — случай, когда монитор выглядит совершенно живым и ничего не сообщает.

    proxmox-backup-manager user permissions 'dumbmonit@pbs!monitor'
  5. Скопируйте идентификатор токена в поле Token ID DumbMonit, а секрет — в поле Secret.

    dumbmonit@pbs!monitor
  6. Предпочитаете веб-интерфейс? Configuration → Access Control: Users → Add, затем API Tokens → Add, затем Permissions → Add. Добавляйте каждое разрешение дважды: один раз как User Permission для dumbmonit@pbs и один раз как API Token Permission для dumbmonit@pbs!monitor: с путём /datastore и ролью DatastoreAudit, затем снова с путём /system и ролью Audit. Разрешение одного токена само по себе ничего не даёт.

  7. В DumbMonit введите адрес сервера, например “pbs.lan” или “pbs.lan:8007”.

Документация производителя: PBS API tokens.

Учётные данныеПоля
API-токен (рекомендуется)Token ID: пользователь, realm и имя токена так, как их показывает PBS, dumbmonit@pbs!monitor. Secret: UUID, показанный один раз при создании токена. DumbMonit отправляет их в заголовке PBSAPIToken=user@pbs!name:secret, которого ожидает PBS.
Имя пользователя / парольuser@pbs (или @pam) и пароль. Тикет получается, кэшируется и обновляется за десять минут до истечения его двухчасового срока.

API принимает токен в двух частях (token_id + secret) или, как в более старых версиях, одной строкой token = user@pbs!name=secret; оба варианта хранятся одинаково. Целый токен, вставленный в Token ID, разделяется формой.

Права — только чтение, и выдаются дважды: эффективные привилегии токена — это пересечение его собственного ACL и ACL его пользователя, поэтому каждую роль ниже нужно выдать dumbmonit@pbs, а также dumbmonit@pbs!monitor. Проще всего: встроенная роль Audit на /, плюс RemoteAudit на /remote для заданий синхронизации и TapeAudit на /tape для ленточного уровня — Audit охватывает только Sys.Audit и Datastore.Audit, и эти две роли существуют именно потому, что это не так. По конечным точкам:

Конечная точкаТребуется
GET /versionлюбой аутентифицированный пользователь
GET /nodes/localhost/status, GET /nodes/localhost/tasks, GET /nodes/localhost/tasks/{upid}/logSys.Audit на /system (Audit на /system)
GET /nodes/localhost/disks/list, …/disks/smart, …/disks/zfsSys.Audit на /system (Audit на /system); 403 допускается: нет серий дисков, нет ошибки сбора. …/disks/zfs отвечает 400 на сервере без ZFS, это допускается так же
GET /nodes/localhost/services, GET /admin/traffic-controlSys.Audit на /system (Audit на /system); 403 допускается: нет серий, нет ошибки сбора
GET /nodes/localhost/certificates/infoSys.Modify на /system — привилегия на запись, поэтому параметр certificates по умолчанию выключен и поэтому токен мониторинга не должен её иметь
GET /status/datastore-usage, GET /admin/gc, GET /config/datastore, GET /admin/datastore/{store}/gc, …/status, …/active-operations, …/namespace, …/snapshotsDatastore.Audit на /datastore/{store} (DatastoreAudit на /datastore)
GET /admin/verify, GET /admin/pruneперечисляются для хранилищ данных, где у токена есть Datastore.Audit; остальные задания молча опускаются
GET /admin/syncDatastore.Audit на хранилище данных и Remote.Audit на /remote/{remote} (RemoteAudit на /remote); остальные задания молча опускаются
GET /nodes/localhost/apt/update, …/apt/versionsSys.Audit на / (Audit на /); 403 допускается: нет серий обновлений или версий, нет ошибки сбора
GET /tape/backup, /tape/drive, /tape/changer, /config/media-pool, /tape/media/listTape.Audit на /tape (TapeAudit на /tape); допускается любой сбой, в том числе PBS без поддержки ленты: нет серий ленты, нет ошибки сбора

Обратите внимание, что одного Audit на /system недостаточно для списка обновлений, который PBS проверяет по корневому пути. 403 на списках заданий или списке обновлений трактуется как необязательная привилегия: ничего не производится и ничего не учитывается в scrape_errors. А отсутствие роли у пользователя хуже, чем 403: вызов успешен и возвращает пустой список, поэтому ничего не производится и ничто не сигнализирует.

Адрес: 10.0.0.20, pbs.lan, pbs.lan:8007, [fd00::2] или полный URL. Схема https и порт 8007 добавляются, если отсутствуют.

КлючНазваниеПо умолчаниюСправка
portПорт API8007Используется, если адрес не содержит порта.
insecure_tlsПринимать непроверяемый сертификатfalseProxmox Backup Server по умолчанию поставляется с самоподписанным сертификатом: включите это, если соединение отклоняется по этой причине.
request_timeout_secondsТайм-аут на запрос (секунды)15Время, отводимое на каждый вызов API, от 1 до 120. Перечисление снимков большого хранилища данных может занять несколько секунд.
task_lookback_hoursОкно задач (часы)24Более старые задачи не учитываются среди сбоев, от 1 до 8760.
datastoresОтслеживаемые хранилища данных(пусто)Имена хранилищ данных для мониторинга, через запятую. Пусто: все хранилища данных.
max_groupsЛимит групп копий500Максимальное число машин с копиями, создающих серии; сверх него самые старые игнорируются. От 1 до 100000.
jobsСледить за плановыми заданиямиtrueПеречисляет задания синхронизации, проверки и очистки и их последний запуск (/admin/sync, /admin/verify, /admin/prune).
updatesСледить за ожидающими обновлениямиtrueСчитает пакеты, для которых доступно обновление (/nodes/localhost/apt/update).
disksСледить за дисками и пулами ZFStrueЧитает физические диски (вердикт SMART, износ SSD) и пулы ZFS (/nodes/localhost/disks).
servicesСледить за службами сервераtrueЧитает юниты systemd и сообщает, работают ли те, без которых сервер не может обойтись. Требует Sys.Audit на /system; иначе молча пропускается.
datastore_detailsЧитать подробности хранилища данныхtrueЕщё два вызова на хранилище данных: сколько машин и снимков в нём хранится, что читает или пишет его прямо сейчас и переведено ли оно на обслуживание.
traffic_controlСледить за ограничениями трафикаtrueЧитает ограничения скорости и то, что через них проходит прямо сейчас. Требует Sys.Audit; иначе молча пропускается.
certificatesСледить за сроком сертификатаfalseВыключено по умолчанию: PBS защищает этот вызов привилегией Sys.Modify, привилегией на запись, которую не следует выдавать токену мониторинга.
tapeСледить за ленточным копированиемfalseЧитает ленточный уровень. Выключено по умолчанию, так как у большинства установок нет ленточного оборудования. Требует Tape.Audit на /tape.
device_stale_daysУстаревание устройства (дни)3Машина с копиями, не имеющая нового снимка дольше этого срока, считается устаревшей. От 1 до 90.
СимптомВероятная причина
Ошибка сертификатаСамоподписанный сертификат: установите доверенный (ACME встроен в PBS) или включите insecure_tls.
Ошибка аутентификацииСекрет вставлен в Token ID (или наоборот), либо у токена нет разрешения Audit — чаще всего потому, что роль выдана токену, но не пользователю, которому он принадлежит, что не вызывает ошибки: вызовы успешны и возвращают пустые списки. Только сбой GET /version ставит крест на всём опросе; сбой любого другого вызова учитывается в scrape_errors.
Всё пусто, но монитор работаетУ пользователя нет ACL, который есть у токена, а PBS пересекает их: proxmox-backup-manager user permissions 'dumbmonit@pbs!monitor' ничего не выводит. Выдайте каждую роль и dumbmonit@pbs.
Нет серии node_updates_pendingУ токена нет Sys.Audit на /: выдайте ему роль Audit на / или установите updates в false, чтобы перестать запрашивать.
Отсутствует задание синхронизацииУ токена нет Remote.Audit на удалённом узле задания: добавьте роль RemoteAudit на /remote. Задание не отклоняется, оно просто отсутствует в списке.
Нет срока действия сертификатаПараметр certificates выключен, это значение по умолчанию: PBS требует Sys.Modify для этого вызова, привилегию на запись.
Панель ленты никогда не появляетсяПараметр tape выключен, это значение по умолчанию, либо у сервера нет накопителя, чейнджера, пула или ленточного задания. Когда ничего нет, ничего не публикуется.
Нет показателя роста у хранилища данныхВ истории использования PBS меньше восьми измеренных точек; она заполняется в первые дни.
«PBS datastore filling up» никогда не срабатываетdatastore_estimated_full_seconds вычисляется PBS по месяцу измерений и до тех пор отсутствует.
Отсутствуют группыБольше max_groups машин с копиями: backup_groups_dropped показывает, сколько оставлено без внимания.
Календарь пуст или коротокОн заполняется из списка задач при первом опросе после запуска (последние 30 дней); у PBS с очищенным архивом задач показывается только то, что осталось. У машины, которая никогда не копировалась на этот сервер и ни разу не имела задачи, строки нет.
Машина отображается как vm/104 без имениPVE записывает имя гостя в заметки снимка только при шаблоне заметок по умолчанию ({{guestname}}); пользовательский шаблон или более старый PVE оставляет заметки пустыми.
«Show log» не работаетУ токена нет Sys.Audit на /system для журнала задачи, либо PBS уже ротировал журнал старой задачи.