На завершающей стадии виртуализации имеющихся серверных ресурсов дело дошло до, казалось бы, самого “неподъёмного” сервера – сервера System Center 2012 R2 DPM. Таковым сервер изначально казался по той причине, что имел прямое подключение к внешним дисковым полкам через выделенный SAS контроллер. В моём случае используются дисковые полки HP D2600 на 12 LFF дисков каждая, подключаемые к физическому серверу DPM через SAS-контроллер HP SmartArray P800. Фактически вопрос переброса самих дисковых полок в виртуальную среду был решён с помощью их подключения к СХД HP P2000 G3 с последующей трансляцией дисковой ёмкости с помощью технологии NPIV внутрь виртуальной машины с DPM. Однако перед тем как отключить дисковую полку от действующего физического DPM, возник вопрос о том, как же сохранить имеющиеся резервные копии данных на этой полке (чтобы не терять возможность восстановления из бэкапов созданных до момента переезда на новый виртуальный DPM). Выяснилось, что у DPM есть штатный механизм копирования разделов с одного физического диска входящего в DPM Storage Pool на другой. Рассмотрим кратко эту процедуру на нашем примере.
В качестве временного решения к физическому серверу DPM была подключена старенькая дисковая полка HP MSA70 с меньшим дисковым объёмом, но при этом достаточным для того, чтобы забрать на себя копию данных DPM расположенных на полке, которую нужно было отключить. На скриншоте ниже Disk 0 - это логический диск, который нам необходимо освободить, а Disk 4 - это только что добавленный в пул диск, на который мы будем переносить разделы DPM с диска Disk 0
Запустим консоль DPM Management Shell и запросим информацию обо всех имеющихся в пуле DPM дисках
$Disks = Get-DPMDisk -DPMServerName KOM-AD01-SCDP01
При этом в переменной $Disks у нас сформируется массив значений
$Disks | ft -AutoSize
Чтобы скопировать содержимое диска-источника на диск-получатель, нужно знать их номера в массиве значений в переменной $Disks (нумерация массива начинается с 0). Определимся с тем, какие номера дисков нам потребуется использовать из полученного массива:
$Disks[2] $Disks[1]
Теперь зная номера нужных нам дисков выполним скрипт копирования данных…
MigrateDatasourceDataFromDPM.ps1 -DPMServerName KOM-AD01-SCDP01 -Source $Disks[2] -Destination $Disks[1]
Процедура может занять определённое время (в зависимости об объёма копируемых разделов). Когда скрипт завершит свою работу, в диспетчере дисков мы увидим, что на диске-получателе появилась копия всех разделов диска-источника.
При этом диск-источник автоматически будет исключён из пула DPM…
Затем для групп защиты DPM, имеющих отношение к мигрированным данным автоматически будут запущены задачи Post-recovery operation
После успешного завершения этих задач наш DPM сервер функционирует в штатном режиме, и теперь можно спокойно отключить высвободившуюся дисковую полку.
Дополнительный источник информации:
Можно искпользоавть скрипт с простеньким графическим выводом :)
Migrate DPM Disk or Datasource with GUI
https://gallery.technet.microsoft.com/scriptcenter/Migrate-DPM-Disk-or-dea8d4e9
Обратная ссылка: System Center 2012 R2 DPM — Ошибка удаления диска из Storage Pool -System.Data.SqlClient.SqlException (0x80131904): The DELETE statement conflicted with the REFERENCE constraint "FK_tbl_SPM_Extent_tbl_SPM_Disk". | Бл /
Доброго дня.
А я вот при эксплуатации столкнулся с такой проблемой:
К серверу подключили :LUN с размером в 1TB для бекапа файловой шары.
Во первых у DPM не нашел как назначить для определенной группы защиты именно этот LUN и как заставить DPM не писать из других групп защиты на этот LUN?
Спасибо.