Настройка Windows Server Backup на iSCSI с помощью PowerShell и DiskPart |
В данной статье я продемонстрирую как от начала до конца настроить резервное копирование в Windows Server 2012 Core. Бэкапить будем на iSCSI хранилище.Итак, нам нужно будет настроить три компонента:
1. Microsoft iSCSI InitiatorХочу отметить, что даже в Server Core версии Вы можете получить привычную графическую оснастку iSCSI, вызвав её в командной строке с помощью команды iscsicpl.exe. Столкнуться с отсутствием графической оснастки iSCSI можно в версиях WinPE и WinRE.
Настроим iSCSI Initiator с помощью PowerShell: PS C:\> Import-Module iSCSI # Добавляем модуль PowerShell PS C:\> Start-Service MSiSCSI # Запускаем сервис iSCSI инициатора PS C:\> New-IscsiTargetPortal -TargetPortalAddress 10.0.0.70 # Подскажем инициатору где находится наш iSCSI портал с таргетами InitiatorInstanceName : InitiatorPortalAddress : IsDataDigest : False IsHeaderDigest : False TargetPortalAddress : 10.0.0.70 TargetPortalPortNumber : 3260 PSComputerName : PS C:\> Get-IscsiTarget | Format-Table -AutoSize # Посмотрим какие на портале разрешены таргеты для нас IsConnected NodeAddress PSComputerName ----------- ----------- -------------- False iqn.2008-08.com.starwindsoftware:storage01.testdlc PS C:\> Connect-IscsiTarget -NodeAddress 'iqn.2008-08.com.starwindsoftware:storage01.testdlc' -IsPersistent:$true -TargetPortalAddress 10.0.0.70 -TargetPortalPortNumber 3260 -AuthenticationType ONEWAYCHAP -ChapUsername 'myUser' -ChapSecret 'MyStrongPa$$w0rd' # Подключимся к необходимому таргету используя Chap аутентификацию AuthenticationType : ONEWAYCHAP InitiatorInstanceName : ROOT\ISCSIPRT\0000_0 InitiatorNodeAddress : iqn.1991-05.com.microsoft:win-dh54phcianr InitiatorPortalAddress : 0.0.0.0 InitiatorSideIdentifier : 400001370000 IsConnected : True IsDataDigest : False IsDiscovered : True IsHeaderDigest : False IsPersistent : True NumberOfConnections : 1 SessionIdentifier : fffffa8301d38020-4000013700000005 TargetNodeAddress : iqn.2008-08.com.starwindsoftware:storage01.testdlc TargetSideIdentifier : 33aa PSComputerName :
Настройка инициатора окончена.
2. Подготовка раздела для бэкапов к работе с Windows Server BackupПеред тем как приступать к конфигурированию самого бэкапа, нужно наш уже подключенный iSCSI раздел предварительно причесать с помощью DiskPart, дабы избежать ошибок типа:
PS C:\> diskpart.exe DISKPART> list disk # Смотрим доступные диски Disk №№№ Status Size Free Dyn Gpt -------- ------------- ------- ------- --- --- Disk 0 Online 40 GB 0 B Disk 1 Offline 60 GB 60 GB DISKPART> select disk 1 # Наш iSCSI раздел составляет 60 Гб. Как видно из вывода предыдущей команды, нужный нам диск значится с идентификатором 1, с ним и будем работать Disk 1 is now the selected disk. DISKPART> online disk # Переводим наш диск в онлайн состояние DiskPart successfully onlined the selected disk. DISKPART> detail disk # Просмотрим подробную информацию о диске ROCKET IMAGEFILE SCSI Disk Device Disk ID: 00000000 Type : iSCSI Status : Online Path : 0 Target : 0 LUN ID : 0 Location Path : UNAVAILABLE Current Read-only State : Yes Read-only : Yes Boot Disk : No Pagefile Disk : No Hibernation File Disk : No Crashdump Disk : No Clustered Disk : No There are no volumes. DISKPART> attributes disk clear readonly # Как видно из предыдущего вывода, наш диск находится в состоянии Read-only, которое нам не подходит. Исправляем это Disk attributes cleared successfully. DISKPART> exit Leaving DiskPart... PS C:\>
Теперь все готово для настройки бэкапа.
Установка и настройка Windows Server Backup FeaturePS C:\> Import-Module ServerManager # Добавляем модуль PowerShell PS C:\> Add-WindowsFeature -Name Windows-Server-Backup -Restart:$false # Устанавливаем фичу WSB Success Restart Needed Exit Code Feature Result ------- -------------- --------- -------------- True No Success {Windows Server Backup} PS C:\> $policy = New-WBPolicy # Вначале мы должны создать политику бэкапа, содержащую все необходимые параметры PS C:\> $policy | Add-WBSystemState # Добавляем в политику бэкап SystemState PS C:\> $policy | Add-WBBareMetalRecovery # Добавляем в политику возможность восстановления на новое железо PS C:\> Add-WBVolume -Policy $policy -Volume (Get-WBVolume -CriticalVolumes) # Указываем в политике, что нужно бэкапить все критические тома. Вывод покажет нам их VolumeLabel : System Reserved MountPath : MountPoint : \\?\Volume{c43cabd2-f303-11e2-93ec-806e6f6e6963} FileSystem : NTFS Property : Critical, ValidSource, IsOnDiskWithCriticalVolume FreeSpace : 115138560 TotalSpace : 367001600 VolumeLabel : MountPath : C: MountPoint : \\?\Volume{c43cabd3-f303-11e2-93ec-806e6f6e6963} FileSystem : NTFS Property : Critical, ValidSource, IsOnDiskWithCriticalVolume FreeSpace : 35590725632 TotalSpace : 42580574208 PS C:\> Get-WBDisk | ? {$_.Properties -like 'ValidTarget'} # Получим список дисков, на которые возможно производить бэкап. В моем случае диск всего один - наш подключенный iSCSI DiskName : ROCKET IMAGEFILE SCSI Disk Device DiskNumber : 1 DiskId : 00000000-0001-0000-0000-000000000000 TotalSpace : 64424509440 FreeSpace : 64424509440 Volumes : {} ContainsBackup : False BackupVolumeId : 00000000-0000-0000-0000-000000000000 Properties : ValidTarget PS C:\> $backuptarget = New-WBBackupTarget -Disk (Get-WBDisk | ? {$_.DiskNumber -eq 1}) # Запишем в переменную диск с идентификатором 1 (взят из предыдущего вывода, параметр DiskNumber) PS C:\> Add-WBBackupTarget -Policy $policy -Target $backuptarget # Добавим в политику диск назначения, заключенный в переменную Label : WBDisk : ROCKET IMAGEFILE SCSI Disk Device WBVolume : Path : TargetType : Disk InheritAcl : False PreserveExistingBackup : False PS C:\> Set-WBSchedule -Policy $policy -Schedule 02:45 # Укажем в политике расписание когда будет стартовать наш бэкап Monday, July 22, 2013 2:45:00 AM PS C:\> Set-WBVssBackupOption -Policy $policy -VssFullBackup # Я также задам параметр VssFullBackup, т.к. мой сервер больше ничем бэкапиться не будет PS C:\> $policy # Посмотрим на параметры нашей политики перед применением. Перепроверяем особенно диск назначения для бэкапов, т.к. он будет отформатирован и все данные на нём будут уничтожены Schedule : {7/22/2013 2:45:00 AM} BackupTargets : {WIN- 7/22/2013 6:40:18 AM Disk01} VolumesToBackup : {System Reserved, Local disk (C:)} FilesSpecsToBackup : FilesSpecsToExclude : ComponentsToBackup : BMR : True SystemState : True OverwriteOldFormatVhd : False VssBackupOptions : VssFullBackup PS C:\> Set-WBPolicy -Policy $policy # Применяем политику. Нас в последний раз предупреждают что данные на диске назначения будут уничтожены. После успешного выполнения этого командлета наше задание бэкапа на сервере будет полностью готово Warning Do you want to format the backup storage disk ROCKET IMAGEFILE SCSI Disk Device? [Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "Y"): Посмотрим настроенные параметры и результаты выполнения бэкапаGet-WBSummary # Параметры бэкапа на сервере NextBackupTime : 7/23/2013 12:00:00 AM NumberOfVersions : 0 LastSuccessfulBackupTime : 1/1/0001 12:00:00 AM LastSuccessfulBackupTargetPath : LastSuccessfulBackupTargetLabel : LastBackupTime : 1/1/0001 12:00:00 AM LastBackupTarget : DetailedMessage : LastBackupResultHR : 0 LastBackupResultDetailedHR : 0 CurrentOperationStatus : NoOperationInProgress Get-WBJob -Previous 1 # Результат выполнения последнего задания бэкапа. В строке ErrorDescription отображены ошибки задания JobType : Backup StartTime : 22.07.2013 2:30 EndTime : 22.07.2013 2:30 JobState : Completed CurrentOperation : HResult : 8078005D DetailedHResult : 0 ErrorDescription : Windows Backup cannot find any of the backup storage locations. JobItems : VersionId : SuccessLogPath : FailureLogPath :
ПримечаниеПри планировании стратегии развертывания из Bare Metal Recovery резервной копии Windows Server Backup, нужно учитывать что восстановить такую копию будет возможно только на диск, который по размеру соответствует или превышает исходный. Другими словами, если Вы бэкапите диск C: размером 500 Гб, на котором свободно 450 Гб, для успешного восстановления из Bare Metal Recovery резервной копии Вам потребуется новый диск не менее пол террабайта.
Как восстановить систему из созданного нами образа с Bare Metal RecoveryЭто я подробно описал в своей статье (ссылка). |
КОММЕНТАРИИ
Плюс еще вопрос - на справочной странице Microsoft написано по поводу VssCopy следующее:
"A copy backup cannot be used for incremental or differential backups or restores."
Можете дать комментарий по поводу этого?