Creazione di un server Veeam Linux gestito
Questa fase descrive un caso d'uso in cui un cyberadmin utilizza l'API di integrazione dati di Veeam® per accedere al cyberbackup.
Creare un server Veeam Linux® gestito da un server Linux esistente. Quando il server viene gestito da Veeam, Veeam può accedere al server. Per questo caso d'uso, utilizzare l'API di integrazione dei dati di Veeam.
L'API di integrazione dei dati di Veeam consente di montare i file di backup su un server Microsoft® Windows® o Linux. Si designa un punto di ripristino del file di backup, lo si monta come cartella Windows o come punto di montaggio Linux e si accede ai file del file di backup. Per montare il file system di una macchina virtuale (VM) su server con sistema operativo Microsoft Windows, Veeam utilizza il protocollo iSCSI. Per montare il file system di una macchina virtuale su server con sistema operativo Linux, Veeam utilizza FUSE (File system in User space). FUSE è una semplice interfaccia per i programmi dello spazio utente per esportare un file system virtuale nel kernel Linux.
Linux supporta uno speciale dispositivo a blocchi, chiamato loop device, che mappa un normale file su un dispositivo a blocchi virtuale. Consente di utilizzare il file come file system virtuale all'interno di un altro file.
Questo caso d'uso ha i seguenti compiti:
- Aggiungere le credenziali del server Linux all'archivio credenziali di Veeam.
- Pubblicare il contenuto del backup che monta l'ultimo punto di ripristino delle macchine virtuali richieste sul server Linux.
- Non pubblicare.
Aggiunta di credenziali VBR
I seguenti comandi PowerShell aggiungono un utente sul Linux Managed Server all'archivio delle credenziali Veeam. Sostituire username
e password
con le credenziali del server Linux da gestire.
$LinuxManagedServerUser = "<username>"
$LinuxManagedServerPassword = "<password>"
$LinuxManagedServerDescription = "Service Account for Linux Managed Server"
$LinuxManagedServerSSHPort = "22"
Add-VBRCredentials -User $LinuxManagedServerUser -Password $LinuxManagedServerPassword -Description $LinuxManagedServerDescription -Type Linux -SshPort $LinuxManagedServerSSHPort -ElevateToRoot -AddToSudoers
Pubblicazione
Nei seguenti comandi PowerShell, sostituire managed_linux_server_ip_or_fqdn
, username
e backup_job_name
con i valori richiesti.
$TargetServer = "<managed_linux_server_ip_or_fqdn>"
$CredsName = "<username>"
$TargetServerCreds = Get-VBRCredentials -Name $CredsName
$BackupJobName = "<backup_job_name>"
# Build objects
$BackupJobObjects = Get-VBRJobObject -Job $BackupJobName
# Mount last restore point for each VM in the backup job
Foreach ($Job in $BackupJobObjects) { $RestorePoint = $Job | Get-VBRRestorePoint -Name *$($Job.Name)* | Sort-Object –Property CreationTime –Descending | Select-Object -First 1; $Session = Publish-VBRBackupContent -RestorePoint $Restorepoint -TargetServerName $TargetServer -TargetServerCredentials $TargetServerCreds -EnableFUSEProtocol -RunAsync }
# Show mounted disk location
$SessionArray = Get-VBRPublishedBackupContentSession
Foreach ($Session in $SessionArray) { $ContentInfo = Get-VBRPublishedBackupContentInfo -Session $Session; Foreach ($Disk in $ContentInfo.Disks.DiskName) { Write-Host $Disk } }
Per comprendere gli esempi di file system montati e le connessioni di rete sottostanti, vedere Esempi.
Annulla pubblicazione
Quando non si ha più bisogno di accedere al backup pubblicato, è possibile utilizzare i seguenti comandi PowerShell per disinstallare la pubblicazione:
$SessionArray = Get-VBRPublishedBackupContentSession
Foreach ($Session in $SessionArray) { Unpublish-VBRBackupContent -Session $Session -RunAsync }
Esempi
Sul server gestito Linux non sono presenti connessioni a nessun componente Veeam.
sudo netstat -nutlp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 136174/sshd
tcp 0 0 0.0.0.0:6162 0.0.0.0:* LISTEN 13716/veeamtranspor
tcp6 0 0 :::22 :::* LISTEN 136174/sshd
udp 0 0 127.0.0.1:323 0.0.0.0:* 1663/chronyd
udp6 0 0 ::1:323 :::* 1663/chronyd
Sul server Linux gestito, il veeamagent
ha aperto le porte TCP 2500 - 2502
:
sudo netstat -nutlp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 136174/sshd
tcp 0 0 0.0.0.0:6162 0.0.0.0:* LISTEN 13716/veeamtranspor
tcp 0 0 0.0.0.0:2500 0.0.0.0:* LISTEN 710143/veeamagent
tcp 0 0 0.0.0.0:2501 0.0.0.0:* LISTEN 711191/veeamagent
tcp 0 0 0.0.0.0:2502 0.0.0.0:* LISTEN 712309/veeamagent
tcp6 0 0 :::22 :::* LISTEN 136174/sshd
udp 0 0 127.0.0.1:323 0.0.0.0:* 1663/chronyd
udp6 0 0 ::1:323 :::* 1663/chronyd
Sul server Linux gestito, il mount punta ai file pubblicati, come mostrato nell'esempio seguente.
lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
loop0 7:0 0 600M 0 loop /tmp/Veeam.Mount.FS.b2811b87-5bf4-4056-8134-21ce9555dca7/centos01-flat.vmdk_0
loop1 7:1 0 67.2M 1 loop /snap/lxd/21835
loop2 7:2 0 61.9M 1 loop /snap/core20/1242
loop3 7:3 0 55.5M 1 loop /snap/core18/2246
loop4 7:4 0 32.5M 1 loop /snap/snapd/13640
loop5 7:5 0 61.9M 1 loop /snap/core20/1169
loop6 7:6 0 42.2M 1 loop /snap/snapd/13831
loop7 7:7 0 67.2M 1 loop /snap/lxd/21803
loop8 7:8 0 55.5M 1 loop /snap/core18/2253
loop9 7:9 0 1G 0 loop /tmp/Veeam.Mount.FS.b2811b87-5bf4-4056-8134-21ce9555dca7/centos01-flat.vmdk_1
loop10 7:10 0 1.6G 0 loop
loop11 7:11 0 12.8G 0 loop /tmp/Veeam.Mount.FS.b2811b87-5bf4-4056-8134-21ce9555dca7/cl-root
loop12 7:12 0 600M 0 loop /tmp/Veeam.Mount.FS.5f9917d0-cd25-4497-9c36-de21d5c93e23/centos02-flat.vmdk_0
loop13 7:13 0 1G 0 loop /tmp/Veeam.Mount.FS.5f9917d0-cd25-4497-9c36-de21d5c93e23/centos02-flat.vmdk_1
loop14 7:14 0 1.6G 0 loop
loop15 7:15 0 12.8G 0 loop /tmp/Veeam.Mount.FS.5f9917d0-cd25-4497-9c36-de21d5c93e23/cl-root
loop16 7:16 0 1M 0 loop
loop17 7:17 0 1G 0 loop /tmp/Veeam.Mount.FS.3b386d5e-9906-47ec-b8bd-7e17131f68a3/moss-web02-flat.vmdk_1
loop18 7:18 0 29.5G 0 loop /tmp/Veeam.Mount.FS.3b386d5e-9906-47ec-b8bd-7e17131f68a3/ubuntu-vg-ubuntu-lv
sda 8:0 0 931G 0 disk
├─sda1 8:1 0 1G 0 part /boot
├─sda2 8:2 0 1G 0 part [SWAP]
└─sda3 8:3 0 929G 0 part /
sdb 8:16 0 10.9T 0 disk
└─sdb1 8:17 0 10.9T 0 part /mnt/veeamrepo01
Sul server di backup Veeam sono visibili le seguenti connessioni, dove:
10.38.207.157
è il server di backup Veeam.10.38.207.142
è il server gestito da Veeam Linux utilizzato per montare i file pubblicati.10.38.207.178
è il server di backup di Veeam Linux.
netstat -nt
Active Internet connections (w/o servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 10.38.207.137:22 10.38.207.142:58912 ESTABLISHED
tcp 0 0 10.38.207.157:2500 10.38.207.142:37784 ESTABLISHED
tcp 0 0 10.38.207.157:2500 10.38.207.142:37786 ESTABLISHED
tcp 0 0 10.38.207.157:2500 10.38.207.142:37788 ESTABLISHED
tcp 0 0 10.38.207.157:2500 10.38.207.142:37790 ESTABLISHED
tcp 0 0 10.38.207.157:2500 10.38.207.142:37792 ESTABLISHED
tcp 0 0 10.38.207.157:2500 10.38.207.142:37794 ESTABLISHED
tcp 0 0 10.38.207.157:2500 10.38.207.142:37796 ESTABLISHED
tcp 0 0 10.38.207.157:2500 10.38.207.142:37798 ESTABLISHED
tcp 0 0 10.38.207.157:2501 10.38.207.142:57486 ESTABLISHED
tcp 0 0 10.38.207.157:2501 10.38.207.142:57488 ESTABLISHED
tcp 0 0 10.38.207.157:2501 10.38.207.142:57490 ESTABLISHED
tcp 0 0 10.38.207.157:2501 10.38.207.142:57492 ESTABLISHED
tcp 0 0 10.38.207.157:2501 10.38.207.142:57494 ESTABLISHED
tcp 0 0 10.38.207.157:2501 10.38.207.142:57496 ESTABLISHED
tcp 0 0 10.38.207.157:2501 10.38.207.142:57498 ESTABLISHED
tcp 0 0 10.38.207.157:2501 10.38.207.142:57500 ESTABLISHED
tcp 0 0 10.38.207.157:53207 10.38.207.142:22 ESTABLISHED
tcp 0 0 10.38.207.157:53219 10.38.207.142:22 ESTABLISHED
tcp 0 0 10.38.207.157:53255 10.38.207.142:22 ESTABLISHED
tcp 0 0 10.38.207.157:53273 10.38.207.142:22 ESTABLISHED
tcp 0 0 10.38.207.157:53313 10.38.207.142:22 ESTABLISHED
tcp 0 0 10.38.207.157:53323 10.38.207.142:22 ESTABLISHED
tcp 0 0 10.38.207.157:53463 10.38.207.178:6162 ESTABLISHED
tcp 0 0 10.38.207.157:53464 10.38.207.178:6162 ESTABLISHED
tcp 0 0 10.38.207.157:53466 10.38.207.178:2501 ESTABLISHED
tcp 0 0 10.38.207.157:53467 10.38.207.178:2501 ESTABLISHED
tcp 0 0 10.38.207.157:53468 10.38.207.178:2501 ESTABLISHED
tcp 0 0 10.38.207.157:53469 10.38.207.178:2501 ESTABLISHED
tcp 0 0 10.38.207.157:53471 10.38.207.178:6162 ESTABLISHED
tcp 0 0 10.38.207.157:53473 10.38.207.178:6162 ESTABLISHED
tcp 0 0 10.38.207.157:53475 10.38.207.142:22 ESTABLISHED
tcp 0 0 10.38.207.157:53476 10.38.207.178:2502 ESTABLISHED
tcp 0 0 10.38.207.157:53477 10.38.207.178:2502 ESTABLISHED
tcp 0 0 10.38.207.157:53482 10.38.207.142:22 ESTABLISHED
tcp 0 0 10.38.207.157:53486 10.38.207.142:22 ESTABLISHED
tcp 0 0 10.38.207.157:53491 10.38.207.142:22 ESTABLISHED
tcp 0 0 10.38.207.157:53492 10.38.207.142:22 ESTABLISHED
tcp 0 0 10.38.207.157:53493 10.38.207.142:22 ESTABLISHED
tcp 0 0 10.38.207.157:53498 10.38.207.142:22 ESTABLISHED
tcp 0 0 10.38.207.157:53499 10.38.207.142:22 ESTABLISHED
tcp 0 0 10.38.207.157:53500 10.38.207.142:22 ESTABLISHED
tcp 0 0 10.38.207.157:53502 10.38.207.142:2500 ESTABLISHED
tcp 0 0 10.38.207.157:53503 10.38.207.142:2500 ESTABLISHED
tcp 0 0 10.38.207.157:53505 10.38.207.142:2501 ESTABLISHED
tcp 0 0 10.38.207.157:53506 10.38.207.142:2501 ESTABLISHED
tcp 0 0 10.38.207.157:53508 10.38.207.142:2502 ESTABLISHED
tcp 0 0 10.38.207.157:53509 10.38.207.142:2502 ESTABLISHED