SCOM – удаление старых групп с агентов


Агенты SCOM могут быть multihomed, иначе говоря могут отправлять отчёты нескольким серверам SCOM. При миграции SCOM это удобно: можно постепенно переносить MP пакеты и настраивать их на новом сервере Operations Manager, в то же время имея полный контроль на старой системе. Но в какой-то момент миграция заканчивается и с агентов нужно удалить старые MG группы управления. Читать далее

Реклама

Exchange Server и SIDHistory


При миграции из одного леса в другой традиционно используется специальный инструмент – ADMT. Так как ресурсы, к которым имеют доступ пользователи мигрируются на втором этапе после миграции учётных записей, то для сохранения доступа к ещё несмигрированным ресурсам используется SIDHistory. ADMT имеет возможности для миграции некоторых видов ресурсов: миграция заключается в замене старых SID на новые, например, при доступе к файлам.

Почтовые ящики также являются ресурсом и имеют некоторые особенности, которые нужно учитывать при миграции. Но ADMT нам тут не помощник: этот инструмент не имеет средств для исправления нюансов связанных с особенностями доступа к почтовым ящикам. Читать далее

Миграция почтового ящика побитого Яблоком


При миграции почтовых ящиков в новый лес наткнулся на такую ситуацию:

Get-MailboxFolderStatistics -Identity iqv -FolderScope RecoverableItems | Format-Table Name,FolderAndSubfolderSize,ItemsInFolderAndSubfolders -Auto

Name FolderAndSubfolderSize ItemsInFolderAndSubfolders

—- ———————- —————————

Recoverable Items 10.23 GB (10,981,634,268 bytes) 2549585

Deletions 4.273 GB (4,587,644,217 bytes) 518278

Purges 0 B (0 bytes) 0

Versions 0 B (0 bytes) 0

Да, число элементов в папке Recoverable Items более полутора миллионов!

В папке Deletions тоже немало – около полумиллиона.

Во время перемещения этого почтового ящика процент добежал до 50% и встал: копирование двух миллионов элементов обещало занять более суток.

Миграцию почтового ящика пришлось остановить и начать чистку от мусора.

Очистка папки Deletions успешно была выполнена командлетом:

Search-Mailbox -Identity iqv -SearchDumpsterOnly -DeleteContent

Но тем не менее в папке Recoverable Items все еще оставалось огромное количество элементов, которые никак не хотели удаляться. После выполнения:

$a=New-MailboxRepairRequest -Mailbox iqv –CorruptionType SearchFolder,AggregateCounts,ProvisionedFolder,FolderView

число элементов в папке Recoverable Items уменьшилось до 1.7 миллиона. Очень неплохо! Но что делать с остальным мусором? Пришлось пускать в ход тяжёлую артиллерию – утилиту MFCMAPI.

Когда я нашел и открыл папку Recoverable Items в проблемном почтовом ящике, то очень скоро убедился, что не все так просто: элементы подгружались в окно непрерывно, и это обещало занять не менее часа времени. Подсказка внизу окна предлагала нажать Esc для остановки загрузки элементов. Но MFCMAPI не реагировала на эту клавишу, упорно продолжая загрузку элементов. Что поделаешь, если программисты так реализовали цикл загрузки: вряд ли они тестировали эту функцию более чем на нескольких сотнях элементах. Когда счетчик загрузки добежал до 800 тысяч элементов, MFCMAPI выдала ошибку «Мало памяти», закрыла окно загрузки и перестала реагировать адекватно на команды. Пришлось ее перезапустить, и искать выход из ситуации. Решение оказалось простым: раз программа отображает каждый элемент в окне, то логично сделать окно загрузки элементов как можно меньше. Когда я уменьшил окно загрузки элементов до минимально размера, то MFCMAPI стала не только быстрее загружать элементы, но и реагировать на клавишу Esc, останавливая загрузку и давая тем самым выбрать все загруженные элементы и удалить их навсегда.

Конечно такой способ не годится для спасения множества почтовых ящиков. В такой ситуации проще будет выгрузить информацию во временный архив, удалить почтовый ящик, создать новый и загрузить в него информацию из временного архива.

Остается отметить, что проблемный почтовый ящик был забит мусором от клиента iPad: помните проблему с его почтовым клиентом?

Полезные ссылки:

Dealing with the ActiveSync bug on iDevices with Exchange 2010

Clean Up the Recoverable Items Folder

MFCMAPI home site

Миграция Retention Policy между лесами


В предыдущей статье я описал миграцию Retention Policy Tags в другой лес (другую организацию Exchange) – Миграция RetentionPolicyTagsмежду лесами. Теперь очередь за миграцией политик и привязкой их к почтовым ящикам. Такая задача возникает при миграции учетных записей пользователей и их почтовых ящиков в новый лес.

Читать далее

Миграция Retention Policy Tags между лесами


Задача: смигрироватьсExchange 2010 наExchange 2013 вдругомлесуRetention Policy Tags

Если тегов несколько работу можно выполнить с помощью GUI. Но если тегов много, то поможет Powershell.

Читать далее

Проблема с загрузкой адресной книги Lync при миграции в другой лес


При миграции учетных записей из одного леса в другой у некоторых пользователей появилась проблема: Lync клиент стал запрашивать логин и пароль, более того не работал поиск по адресной книге. (Уточнение: учетная запись пользователя переехала в новый лес, а Lync сервер остался в исходном лесе.) Когда число мигрированных пользователей перевалило за тысячу, количество обращение в тех. поддержку по этой проблеме стало слишком большим. Потребовалось решение.

Читать далее

Powershell, ADMT и проверка административных шар


В статье Powershell – параллельное выполнение операций – меняем настройки DNS я немного описал Workflow и как использовать это средство для выполнения параллельных операций на множестве компьютеров на примере настройки DNS.

Вот еще один пример. При миграции компьютеров с помощью ADMT важно обеспечить удаленный доступ к компьютеру с сервера миграции. Фактически используются административные шары. И ADMT имеет режим PreCheck – выполнение проверки перед запуском фактической миграции. Но запускать проверку из ADMT не совсем удобно, т.к. ошибки он покажет, но их еще надо исправить, либо исключить проблемные компьютеры из списка миграции. Поэтому лучше проверку делать заранее, исправить ошибки доступа, потом только приступать к миграции. И поможет нам в этом простой скрипт:

workflow  checkAdmShares {

 

param($computerName)

 

foreach -parallel($computer in $computerName) {

   if  (Test-Connection  -Count 2  -ErrorAction SilentlyContinue -ComputerName $computer.DNSHostName)

             { if ( Test-Path  -Path «\\$($computer.DNSHostName)\admin$» ) {«$($computer.DNSHostName) — Ok»} else {«$($computer.DNSHostName) — not path»} } else { «$($computer.DNSHostName) — not ping»}

   }

 

}

 

$comps = Get-Content C:\list.txt | % {$_.Trim()} | % { Get-ADComputer  $_ }

checkAdmShares $comps

 

За счет распараллеливания скрипт работает очень быстро даже для большого списка компьютеров.