Очередь MSMQ не обрабатывается
У меня довольно неприятная ошибка с MSMQ, которая, следуя информации, доступной в Интернете, не исправляется. В результате письма (файлы.EML) попадают в C:\inetpub\mailroot\Queue и просто не отправляются.
Информация об окружении: Рассматриваемый сервер - Windows Server 2012 R2. Мои контроллеры домена Active Directory - 2012 R2, а уровни домена и леса - 2012 R2. Недавно я обновил Exchange 2010, создав сервер 2012 R2 и установив на него Exchange 2013 с пакетом обновления 1 (SP1), который затем был подключен к CU 19 и работает нормально и принимает ретранслированную почту (проверенную через telnet) с сервера, на котором работает MSMQ.
Ошибка, которая отображается в журнале событий, это источник:
MSMQ
Event ID: 2164
"The Message Queuing service will not join the MyDomainName domain. An MSMQ Configuration (msmq) object exists in the new domain with an ID differing from the service ID. Please delete the MSMQ Configuration object in the new domain, restart the Message Queuing service, and log on again."
По имеющейся информации у меня есть предложения двух действий. 1. Удаление msmq из Active Directory для рассматриваемого сервера. 2. Убедитесь, что у сетевой службы на этом сервере есть специальное разрешение "Создание объектов конфигурации MSMQ".
Я удалил объект msmq через AD на сервере, на котором работает MSMQ, и дождался его репликации вокруг контроллеров домена. (и дважды проверил, подтверждая, что он пропал на каждом DC).
На следующем этапе я попытался перезагрузить и перезапустить сервисы, оба имеют одинаковый эффект. Я перезапускаю службу очереди сообщений (при этом также запускаются службы очереди сообщений и службы прослушивателя Net.Msmq).
Я получаю две новые ошибки журнала событий для MSMQ.
MSMQ
Event ID: 2116
"Message Queuing was unable to create the msmq (MSMQ Configuration) object in Active Directory Domain Services. Error c00e0025h"
Непосредственно с этой ошибкой...
MSMQ
Event ID: 2164
"The Message Queuing service failed to join the computer's domain 'MyDomainName'. Error 0xc00e0025"
Если я перезапускаю службы снова, я снова получаю эту ошибку в журнале событий: "Служба очереди сообщений не присоединится к домену MyDomainName. В новом домене существует объект конфигурации MSMQ (msmq) с идентификатором, отличным от идентификатора службы. Удалите объект конфигурации MSMQ в новом домене, перезапустите службу очереди сообщений и снова войдите в систему. "
Теперь... в Active Directory на моем сервере воссоздан msmq.
Я ходил по кругу. Я рассмотрел переустановку MSMQ, для этого необходимо удалить функциональность сервера приложений и.Net 4.5. Это рабочий сервер, который выполняет некоторые функции RDP и IIS, и я обеспокоен тем, что он уничтожит настройки и потенциально нарушит работу программного обеспечения на сервере.
В краткосрочной перспективе я написал C# -программу для ручной обработки очереди электронной почты, чтобы поддерживать работу, но это не решает проблему.:(
У кого-нибудь есть мысли или идеи о том, что попробовать или где еще посмотреть?
1 ответ
Вы вошли в систему как администратор домена при установке MSMQ?
Ошибка 0xC00E0033 при попытке установить MSMQ с интеграцией Active Directory https://blogs.msdn.microsoft.com/johnbreakwell/2009/10/21/error-0xc00e0033-when-you-try-and-install-msmq-with-active-directory-integration/
Удаление устаревших объектов Active Directory MSMQ https://blogs.msdn.microsoft.com/johnbreakwell/2009/12/16/deleting-stale-msmq-active-directory-objects/
Будьте осторожны при переустановке MSMQ 4.0 в домене https://blogs.msdn.microsoft.com/johnbreakwell/2007/05/15/watch-out-when-re-installing-msmq-4-0-in-a-domain/
Оказывается, это было связано с групповой политикой, и я хотел, чтобы некоторые пользователи могли входить в систему как сервис, не обходя каждый компьютер и не настраивая его. Поэтому я добавил их в групповую политику, чтобы включить определенных пользователей, которым у них было разрешение на вход в систему в качестве службы, что позволило ТОЛЬКО этим пользователям и помешало существующим пользователям фоновых служб работать должным образом.
Урок выучен.
У меня была такая же проблема, удаление и повторная установка MSMQ в Windows.