Update collectors/veeam/README.md

This commit is contained in:
2026-10-07 21:02:46 +00:00
parent 960839ed76
commit 10bfc7a3aa
+4 -12
View File
@@ -5,20 +5,16 @@ It covers jobs returned by `Get-VBRJob`: VM backup, replication and backup copy
## Install (on the VBR server, as an administrator) ## Install (on the VBR server, as an administrator)
=======
Requires PowerShell 7 installed machine-wide (`winget install Microsoft.PowerShell` or the MSI), Requires PowerShell 7 installed machine-wide (`winget install Microsoft.PowerShell` or the MSI),
which VBR 13's Veeam module expects. The Microsoft Store version won't work, because the SYSTEM which VBR 13's Veeam module expects. The Microsoft Store version won't work, because the SYSTEM
account can't run it. The installer checks for this before changing anything. account can't run it. The installer checks for this before changing anything.
>>>>>>> add-backend-api
1. On the dashboard host, create a key for this server: 1. On the dashboard host, create a key for this server:
```bash ```bash
python manage.py create-key veeam-acme python manage.py create-key veeam-acme
``` ```
2. Copy this folder to the VBR server and run: 2. Copy this folder to the VBR server and run:
======= 3. Copy this folder to the VBR server and run, from PowerShell 7 (`pwsh`):
2. Copy this folder to the VBR server and run, from PowerShell 7 (`pwsh`):
>>>>>>> add-backend-api
```powershell ```powershell
.\Install-VeeamCollector.ps1 -ApiUrl https://backups.example.com -Tenant "Acme Corp" .\Install-VeeamCollector.ps1 -ApiUrl https://backups.example.com -Tenant "Acme Corp"
``` ```
@@ -26,13 +22,11 @@ account can't run it. The installer checks for this before changing anything.
- writes `C:\ProgramData\BackupDashboard\veeam-collector.json` (readable only by SYSTEM and Administrators) - writes `C:\ProgramData\BackupDashboard\veeam-collector.json` (readable only by SYSTEM and Administrators)
- copies the script to `C:\Program Files\BackupDashboard\` - copies the script to `C:\Program Files\BackupDashboard\`
- registers the scheduled task **Backup Dashboard - Veeam collector** (SYSTEM, every 15 minutes) - registers the scheduled task **Backup Dashboard - Veeam collector** (SYSTEM, every 15 minutes)
3. Preview the payloads, then backfill 30 days so the history view is populated straight away: 4. Preview the payloads, then backfill 30 days so the history view is populated straight away:
=======
- registers the scheduled task **Backup Dashboard - Veeam collector** (SYSTEM, every 15 minutes, - registers the scheduled task **Backup Dashboard - Veeam collector** (SYSTEM, every 15 minutes,
run by `C:\Program Files\PowerShell\7\pwsh.exe`; use `-PwshPath` if it's installed elsewhere) run by `C:\Program Files\PowerShell\7\pwsh.exe`; use `-PwshPath` if it's installed elsewhere)
3. Preview the payloads, then backfill 30 days so the history view is populated straight away 5. Preview the payloads, then backfill 30 days so the history view is populated straight away
(from `pwsh`): (from `pwsh`):
>>>>>>> add-backend-api
```powershell ```powershell
& 'C:\Program Files\BackupDashboard\Send-VeeamBackupStatus.ps1' -DryRun & 'C:\Program Files\BackupDashboard\Send-VeeamBackupStatus.ps1' -DryRun
& 'C:\Program Files\BackupDashboard\Send-VeeamBackupStatus.ps1' -LookbackHours 720 & 'C:\Program Files\BackupDashboard\Send-VeeamBackupStatus.ps1' -LookbackHours 720
@@ -57,8 +51,7 @@ delete the scheduled task and both `BackupDashboard` folders.
**Backup copy jobs (VBR 12+):** Veeam records their sessions under hidden per-source "worker" jobs. **Backup copy jobs (VBR 12+):** Veeam records their sessions under hidden per-source "worker" jobs.
The collector files each worker session under its copy job (via the worker's `PolicyJobId`), so a The collector files each worker session under its copy job (via the worker's `PolicyJobId`), so a
copy job gets one run per source job it copies, with the source in `copied_from`. copy job gets one run per source job it copies, with the source in `copied_from`.
i
>>>>>>> add-backend-api
Each run covers the last 48 hours (`LookbackHours`), so a few missed runs (server rebooting, API Each run covers the last 48 hours (`LookbackHours`), so a few missed runs (server rebooting, API
down) fill in automatically. Sessions already delivered are recorded in down) fill in automatically. Sessions already delivered are recorded in
`veeam-collector.state.json`. Running sessions are re-sent until they finish. `veeam-collector.state.json`. Running sessions are re-sent until they finish.
@@ -73,7 +66,6 @@ down) fill in automatically. Sessions already delivered are recorded in
- A job shows **Unknown** on the dashboard: the collector sent the job but matched no sessions to it. - A job shows **Unknown** on the dashboard: the collector sent the job but matched no sessions to it.
Run `.\Get-VeeamCollectorDiagnostics.ps1` (read-only). It lists sessions whose job ID matches no Run `.\Get-VeeamCollectorDiagnostics.ps1` (read-only). It lists sessions whose job ID matches no
job, plus the type and link properties of the jobs left without sessions. job, plus the type and link properties of the jobs left without sessions.
>>>>>>> add-backend-api
- `Get-VBRBackupSession` loads every session in the VBR database. On a server with years of history, - `Get-VBRBackupSession` loads every session in the VBR database. On a server with years of history,
this can make each run take a minute or more. The task's 30-minute limit and "don't start if this can make each run take a minute or more. The task's 30-minute limit and "don't start if
already running" setting keep that safe. already running" setting keep that safe.