none
DPM 2012 R2 UR5 Не раскрывается содержимое хоста при создании группы защиты. RRS feed

  • Вопрос

  • Добрый день. 

    Есть 2 установленных DPM сервера. И там и там стоит WS 2012 R2. Один из них (DPM01) бэкапит несколько серверов (mail, file server и прочее). Хотел сделать так, чтобы второй сервер (DPM02) бэкапил некоторое содержимое основного сервера (DPM01).

    После добавления агента, при создании группы защиты на сервере DPM02, раскрываем содержимое сервера DPM01, идёт загрузка содержимого и через несколько секунд (10-20) выпадает ошибка:

    "mmc has stopped working" (картинку не могу прикрепить)

    В event loge пишет следующую ошибку:

    The description for Event ID 999 from source MSDPM cannot be found. Either the component that raises this event is not installed on your local computer or the installation is corrupted. You can install or repair the component on the local computer.

    If the event originated on another computer, the display information had to be saved with the event.

    The following information was included with the event: 

    An unexpected error caused a failure for process 'mmc'.  Restart the DPM process 'mmc'.

    Problem Details:
    <FatalServiceError><__System><ID>19</ID><Seq>0</Seq><TimeCreated>3/2/2015 08:48:34</TimeCreated><Source>DpmThreadPool.cs</Source><Line>163</Line><HasError>True</HasError></__System><ExceptionType>NullReferenceException</ExceptionType><ExceptionMessage>Object reference not set to an instance of an object.</ExceptionMessage><ExceptionDetails>System.NullReferenceException: Object reference not set to an instance of an object.
       at Microsoft.Internal.EnterpriseStorage.Dls.UI.ObjectModel.OMCommon.ProtectableObject.Refresh(ProtectableObject newPo)
       at Microsoft.Internal.EnterpriseStorage.Dls.UI.ObjectModel.SystemProtection.SystemProtectionObjectFactory.CreateProtectableObject(OMSqlRetryReader reader, Datasource datasource, DpmServer server, InquiryPath snrp)
       at Microsoft.Internal.EnterpriseStorage.Dls.UI.ObjectModel.OMCommon.Datasource.ReadProtectableObjectsForDS(IMCatalogDBReader imReader, Boolean returnDatasource)
       at Microsoft.Internal.EnterpriseStorage.Dls.UI.ObjectModel.OMCommon.Datasource.ReadProtectableObjects(IMCatalogDBReader imReader)
       at Microsoft.Internal.EnterpriseStorage.Dls.UI.ObjectModel.OMCommon.Datasource.ReadDataSourceProperties(ProtectionGroup group, IMCatalogDBReader dbReader, List`1 volumesList)
       at Microsoft.Internal.EnterpriseStorage.Dls.UI.ObjectModel.OMCommon.DpmServer.ReadOrphanProtectionGroup(IMCatalogDBReader dbReader)
       at Microsoft.Internal.EnterpriseStorage.Dls.UI.ObjectModel.OMCommon.DpmServer.RefreshOrphanDatasources(IMCatalogDBReader dbReader)
       at Microsoft.Internal.EnterpriseStorage.Dls.UI.ObjectModel.Inquiry.TriggerDatasourceInquiry.ReadDatasourcesFromInquiry()
       at Microsoft.Internal.EnterpriseStorage.Dls.UI.ObjectModel.Inquiry.TriggerDatasourceInquiry.ReadResults()
       at Microsoft.Internal.EnterpriseStorage.Dls.UI.ObjectModel.Inquiry.TriggerDatasourceInquiry.DataSourceInquiryComplete(Object sender, EventArgs e)
       at Microsoft.Internal.EnterpriseStorage.Dls.UI.ObjectModel.Inquiry.ProtectionInquiry.OnJobComplete()
       at Microsoft.Internal.EnterpriseStorage.Dls.EngineUICommon.RORN.RunOnceRunNowJob.CompleteJob(ErrorInfo errorInfo)
       at Microsoft.Internal.EnterpriseStorage.Dls.EngineUICommon.RORN.RunOnceRunNowJob.TaskActivity_TaskCompleted(RornTaskDef taskDef, TaskStop stopEvent)
       at Microsoft.Internal.EnterpriseStorage.Dls.EngineUICommon.RORN.RornTaskDef.Task_TaskActivity(Object sender, EventMatchedEventArgs e)
       at Microsoft.Internal.EnterpriseStorage.Dls.EventManagement.EventManager.PollingThreadProc(Object data)
       at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
       at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
       at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
       at System.Threading.ThreadHelper.ThreadStart(Object obj)</ExceptionDetails></FatalServiceError>


    the message resource is present but the message is not found in the string/message table


    Если раскрыть содержимое самого себя (т.е. DPM01), оно раскрывается без проблем.

    Если проверить наоборот, раскрыть содержимое сервера DPM02 на сервере DPM01, все проходит нормально, после добавления агента содержимое раскрывается и ничего не виснет. 

    Так же есть еще один DPM, который стоит уже давно и нормально функционирует. НО, если же и его пробовать добавить в группу защиты и глянуть содержимое, то опять же вылетает та же ошибка. 

    Помогите решить проблему...

    Уточнение.

    Стояло 2 DPM сервера. Один бекапил несколько серверов, другой бэкапил основной DPM. После обновления до UR5 и перезагрузки серверов, перестала работать консоль управления на втором DPM, как описано в первом посте.

    Решено было переустановить. 

    На свежем основном сервере была восстановлена структура прошлого DPM сервера. Создан заново вторичный DPM и натравлен на основной. Далее результат в первом посте.

    Итог.

    После установки хотфикса, все работает в штатном режиме.


    • Изменено lemurik 18 марта 2015 г. 8:31
    2 марта 2015 г. 9:18

Ответы

  • Долго ждать не пришлось!

    Есть два решения

    1) Установить Hotfix for known issue with Update Rollup 5 for System Center 2012 R2 Data Protection Manager

    2) Применить скрипт по следующей схеме

    1. Закрыть все консоли DPM и выключить все службы DPM
    2. Важно: Выполнить полный архив базы DPM
    3. Применить к базе данных DPM скрипт
    4. Включить все сервисы DPM и открыть консоль DPM
    DELETE FROM dbo.tbl_IM_ProtectedObject
    WHERE ProtectedObjectId IN
    (
    	SELECT PO.ProtectedObjectId
    	FROM dbo.tbl_IM_ProtectedObject AS PO
    	JOIN dbo.tbl_AM_Server as SRVR
    	ON PO.ServerId = SRVR.ServerId
    	JOIN dbo.tbl_IM_DataSource AS DS
    	ON PO.DataSourceId = DS.DataSourceId
    	WHERE DS.AppId = '00000000-0000-0000-0000-000000000000'
    	AND PO.ProtectedInPlan = 0
    	AND PO.ProtectedObjectId NOT IN (SELECT ProtectedObjectId FROM dbo.tbl_IM_ProtectedObjectAlerts)
        AND CONVERT(XML,PO.LogicalPath).exist(
            '/child::ArrayOfInquiryPathEntryType/child::InquiryPathEntryType[attribute::Type="NonRootTargetShare"]'
        ) = 1
        AND PO.ProtectedObjectId != PO.DataSourceId
    	AND SRVR.ServerId = DS.ServerId
    	AND SRVR.IsRG = 1
    )


    Have a nice day !!! DPM 2012 R2: Remove Recovery Points

    • Предложено в качестве ответа EugeneLeitanMVP, Moderator 6 марта 2015 г. 5:55
    • Помечено в качестве ответа lemurik 6 марта 2015 г. 9:15
    6 марта 2015 г. 5:55
    Модератор

Все ответы

  • Решение есть по ссылке https://social.technet.microsoft.com/Forums/ru-RU/3705ab07-7930-4249-b008-f628b54c8a3e/-?forum=msdpmru. Необходимо запустить SQL скрипт, и консоль снова будет работать. У меня сработало, консоль теперь работает. Но при попытке создать группу защиты, я не вижу в первичном сервере защищенные ресурсы.
    2 марта 2015 г. 10:07
  • У меня немного иная проблема, чем описано в Вашей ссылке, но я все таки решил ее проверить. 

    По итогу у меня ничего не изменилось, и результат выполнения скрипта - (0 row(s) affected), т.е. задваивания данных у меня не наблюдается. 

    Вопрос остается открытым.

    2 марта 2015 г. 11:04
  • Какая версия DPM? Какие обновления (Update Rollup) стоят для DPM ?


    Have a nice day !!! DPM 2012 R2: Remove Recovery Points

    2 марта 2015 г. 11:51
    Модератор
  • DPM 2012 r2

    version: 4.2.1292.0

    update for Microsoft System Center 2012 R2 DPM (KB3021791)

    UR5
    • Изменено lemurik 2 марта 2015 г. 11:58
    2 марта 2015 г. 11:55
  • Данный скрипт пробовали выполнять? Если да, то какой результат?

    Порядок действий:

      1. Остановите все DPM сервеисы (MSDPM, Access Manager, DPM Writer, DPMRA, VssNullProvider).
      2. Заархивируйте базу DPM сервера.
      3. Откройте SQL Server Management Studio (Run: ssms.exe)
      4. Подключитесь к SQL Инстансу, где находится DPM база данных
      5. Выделите правой кнопкой базу данных DPM and нажмите “New Query”. Вставьте скрипт:
    DELETE FROM dbo.tbl_IM_ProtectedObject
    
    WHERE ProtectedObjectId IN
    
    (
    
           SELECT PO.ProtectedObjectId
    
           FROM dbo.tbl_IM_ProtectedObject AS PO
    
           JOIN dbo.tbl_AM_Server AS SRVR
    
           ON PO.ServerId = SRVR.ServerId
    
           WHERE (CONVERT(VARCHAR(4096),PO.ComponentName) = 'System State' OR CONVERT(VARCHAR(4096),PO.ComponentName) = 'Bare Metal Recovery')
    
           AND PO.ProtectedInPlan = 0
    
           AND PO.ProtectedObjectId NOT IN (SELECT ProtectedObjectId FROM dbo.tbl_IM_ProtectedObjectAlerts)
    
           AND LOWER(CONVERT(XML,PO.LogicalPath).value(
    
                 '(/child::ArrayOfInquiryPathEntryType/child::InquiryPathEntryType[attribute::Type="Server"]/attribute::Value)[1]',
    
                  'VARCHAR(4096)'
    
           )) != LOWER(SRVR.ServerName)
    
    )

    6. Нажмите F5 для выполнения

    7. Включите все службы DPM, которые выключили на этапе 1.

    8. Проверьте работу.


    Have a nice day !!! DPM 2012 R2: Remove Recovery Points

    2 марта 2015 г. 12:03
    Модератор
  • Описанное решение уже было предложено выше. Отписал, что не помогло
    2 марта 2015 г. 12:06
  • 1) Обновление устанавливали вручную или через WSUS?

    2) Агенты DPM все обновились до 4.2.1292.0?

    3) После обновления DPM 2012 UR5 перезагружали DPM сервера (первичные и вторичные) и защищаемые сервера (с агентами DPM)?


    Have a nice day !!! DPM 2012 R2: Remove Recovery Points

    2 марта 2015 г. 12:09
    Модератор
  • 1. Через WSUS

    2. Да

    3. Да, да

    2 марта 2015 г. 12:11
  • какая дата обновления?

    можете удалить и поставить заново обновление вручную, потому что на сайте http://support.microsoft.com/kb/3021791/en-us указана 3 версия от даты 14 февраля 2015 (есть вероятность, что уже поправили баги).


    Have a nice day !!! DPM 2012 R2: Remove Recovery Points

    2 марта 2015 г. 12:13
    Модератор
  • Уточнение.

    Стояло 2 DPM сервера. Один бекапил несколько серверов, другой бэкапил основной DPM. После обновления до UR5 и перезагрузки серверов, перестала работать консоль управления на втором DPM, как описано в первом посте.

    Решено было переустановить. 

    На свежем основном сервере была восстановлена структура прошлого DPM сервера. Создан заново вторичный DPM и натравлен на основной. Далее результат в первом посте.

    2 марта 2015 г. 12:16
  • Обновление было в первый раз установлено примерно 11 февраля, +- пару дней, точно не могу сказать. 
    • Изменено lemurik 2 марта 2015 г. 12:24
    2 марта 2015 г. 12:19
  • Это обновление уже стоит.
    2 марта 2015 г. 12:31
  • Скрипт применяли на вторичном сервере, где консоль не работает?
    2 марта 2015 г. 12:32
  • Скрипт применялся именно на вторичном сервере. 

    Пошагово, где виснет консоль:

    1. Запускаем консольку

    2. Вкладка Management -> Agents -> Install ->Attach agents -> Основной сервер DPM -> username/pasword -> Attach

    3. Вкладка Protection -> New -> Servers -> Выбираем основной сервер DPM и жмем "+". 

    Вот на этом моменте виснет консоль и через секунд 10-15 выскакивает ошибка "mmc has stopped working".

    Текст ошибки в event viewer'е дан в первом посте.

    На первичном сервере тоже попробовал скрипт - (0 row(s) affected). Проблема явно не в задваивании.
    • Изменено lemurik 2 марта 2015 г. 12:43
    2 марта 2015 г. 12:40
  • Если удаление UR5 не решит вопроса, то готов проработать данную ситуацию в тестовой среде.

    Прошу написать версии ОС всех DPM и прикрепить схему подключения и использования DPM серверов.


    Have a nice day !!! DPM 2012 R2: Remove Recovery Points

    2 марта 2015 г. 12:44
    Модератор
  • Вопрос сразу же - какие варианты по удалению UR5? 

    В панели управления -> Удаление программ -> Updates нельзя его снести. Как-нибудь по другому это можно сделать?


    • Изменено lemurik 2 марта 2015 г. 12:48
    2 марта 2015 г. 12:46
  • Странно, у меня все тоже самое было. Вторичный сервер подымал с нуля, 1...2...3...  потом закрывал консоль, запускал ее заново, она зависала на протекшен группах, грохал ее, останавливал сервисы, запускал скрипт. 
    2 марта 2015 г. 12:46
  • В любом случае это баг UR5. На UR4 и ранее для DPM 2012 R2 такого нет.


    Have a nice day !!! DPM 2012 R2: Remove Recovery Points

    2 марта 2015 г. 12:50
    Модератор
  • Скрипт то у меня срабатывает, но т.к. нету в базе задваивания данных, ему просто нечего удалять))
    2 марта 2015 г. 12:50
  • Получатся так. На UR4 наш DPM работал стабильно не малое время. А тут косяк... Кто-нибудь знает как удалить UR5?
    2 марта 2015 г. 12:52
  • В моем случае он удаляет 3 строчки. Удалить RU5 вроде никак, только откатываться на бекап базы с RU4, если есть, конечно. А на первичном сервере есть ошибки в то же время?
    2 марта 2015 г. 12:57
  • Нет, на первичном сервере пусто..
    2 марта 2015 г. 12:59
  • Ясно. У меня на нем тоже ошибка была, но, как я понял, она из другой оперы. Удачи в поиске решения.
    2 марта 2015 г. 13:09
  • Спасибо) Удачи Вам также, и чтобы ничего не ломалось :)
    2 марта 2015 г. 13:10
  • Получатся так. На UR4 наш DPM работал стабильно не малое время. А тут косяк... Кто-нибудь знает как удалить UR5?

    Удалить UR 5 можно путем установки DPM 2012 R2 и восстановлением предыдущей версии базы данных.

    Обычно (если вручную не делали), архив находится по пути C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\Backup

    В ходе эксплуатации (начиная с DPM 2010) выяснил, что для семейства System Center (SC) лучше обновления ставить:

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

    Have a nice day !!! DPM 2012 R2: Remove Recovery Points

    2 марта 2015 г. 13:24
    Модератор
  • Если откатить UR5 на вторичном сервере, а на основном оставить UR5, не будет ли между ними конфликтов? И тот же вопрос по поводу агентов?
    2 марта 2015 г. 13:46
  • Если откатить UR5 на вторичном сервере, а на основном оставить UR5, не будет ли между ними конфликтов? И тот же вопрос по поводу агентов?

    По инструкции на TechNet на всех серверах и клиентах должны быть одинаковые версии ПО!

    1. Обновляем вторичный сервер DPM
    2. Обновляем первичный сервер DPM
    3. Обновляем агентов DPM на защищаемых системах
    4. Актуализируем группы защиты
    5. Восстанавливаем Primary-Secondary отношения между серверами DPM

    Upgrading to System Center 2012 R2 - DPM

    Обновляем System Center 2012 SP1 Data Protection Manager до уровня System Center 2012 R2 и перебираемся на Windows Server 2012 R2 и SQL Server 2012 SP1


    Have a nice day !!! DPM 2012 R2: Remove Recovery Points

    2 марта 2015 г. 13:54
    Модератор
  • Забэкапленая база с UR4 не сохранилась. 

    В итоге, переустановили DPM, накатили UR4, заблокировали на WSUSe UR5, переустановили агентов.

    Ждем UR6 или обновление UR5.

    4 марта 2015 г. 12:02
  • Долго ждать не пришлось!

    Есть два решения

    1) Установить Hotfix for known issue with Update Rollup 5 for System Center 2012 R2 Data Protection Manager

    2) Применить скрипт по следующей схеме

    1. Закрыть все консоли DPM и выключить все службы DPM
    2. Важно: Выполнить полный архив базы DPM
    3. Применить к базе данных DPM скрипт
    4. Включить все сервисы DPM и открыть консоль DPM
    DELETE FROM dbo.tbl_IM_ProtectedObject
    WHERE ProtectedObjectId IN
    (
    	SELECT PO.ProtectedObjectId
    	FROM dbo.tbl_IM_ProtectedObject AS PO
    	JOIN dbo.tbl_AM_Server as SRVR
    	ON PO.ServerId = SRVR.ServerId
    	JOIN dbo.tbl_IM_DataSource AS DS
    	ON PO.DataSourceId = DS.DataSourceId
    	WHERE DS.AppId = '00000000-0000-0000-0000-000000000000'
    	AND PO.ProtectedInPlan = 0
    	AND PO.ProtectedObjectId NOT IN (SELECT ProtectedObjectId FROM dbo.tbl_IM_ProtectedObjectAlerts)
        AND CONVERT(XML,PO.LogicalPath).exist(
            '/child::ArrayOfInquiryPathEntryType/child::InquiryPathEntryType[attribute::Type="NonRootTargetShare"]'
        ) = 1
        AND PO.ProtectedObjectId != PO.DataSourceId
    	AND SRVR.ServerId = DS.ServerId
    	AND SRVR.IsRG = 1
    )


    Have a nice day !!! DPM 2012 R2: Remove Recovery Points

    • Предложено в качестве ответа EugeneLeitanMVP, Moderator 6 марта 2015 г. 5:55
    • Помечено в качестве ответа lemurik 6 марта 2015 г. 9:15
    6 марта 2015 г. 5:55
    Модератор
  • Отлично)) Спасибо!!!! 
    6 марта 2015 г. 9:15
  • Update Rollup 6 for System Center 2012 R2 Data Protection Manager

    https://support.microsoft.com/en-us/kb/3030574

    Issue 12

    Create\Modify\Delete on a PG with Clustered File Server data sources may fail with Error 197 or cause a console crash. This specifically occurs after DPM Update Rollup 5 is installed.

    Issue 14

    When you expand a cluster host in the protection wizard, the DPM UI may crash.


    Have a nice day !!!
    DPM 2012 R2: Remove Recovery Points
    DPM blog

    29 апреля 2015 г. 5:23
    Модератор