Always remember to sysprep when cloning a node! MSMQ (Microsoft Message Queuing) uses a registry valued called QMId located at:
HKLM\Software\Microsoft\MSMQ\Parameters\Machine Cache
which has to be unique on all your servers or it will cause all sorts of issues. Sysprepping a server generates a new SID which also generates a new QMId in the process. If you don’t do this and have multiple servers out there with the same QMId, you will see strange things like messages remaining in the outgoing queue in limbo and sometimes just disappear completely with no trace in journaling anywhere. Bottom line, don’t confuse MSMQ! It’s fragile!
Thankfully John Breakwell (MSMQ guru at Microsoft) blogged about this exact issue which made me realize what was going on in the environment I was troubleshooting. Well done John!
http://blogs.msdn.com/b/johnbreakwell/archive/2007/02/06/msmq-prefers-to-be-unique.aspx
I simply ran sysprep and resealed the clone to fix it. It automatically generated a new QMId in the process so I didn’t have to follow the exact steps John had blogged about. It was a simple mistake which can be avoided in the future by using the Guest Customization Wizard in VC to automatically sysprep when creating the clone.
BTW, you can check if your SIDs are identical on a server by using getsid.exe. Download the Windows XP Service Pack 2 Support Tools:
and use the getsid.exe tool to compare SIDs on your Windows servers. Usage syntax is here:
http://technet.microsoft.com/en-us/library/cc784314%28WS.10%29.aspx
Since I’m blogging about MSMQ, let me take a moment to plug QueueExplorer (http://www.cogin.com/mq). This is hands down the best MSMQ management software I have ever used and the developer is very open to feature requests. Give them some business and tell them Jason sent ya! 🙂 Check out a screenshot of it below:
Jason Samuel is a visionary product leader and trusted advisor with a proven track record of shaping strategy and driving technology innovation. With extensive expertise in enterprise end-user computing, security, cloud, automation, and virtualization technologies, Jason has become a globally recognized authority in the IT industry. His career spans consulting for hundreds of Fortune 500 enterprises across diverse business sectors worldwide, delivering cutting-edge digital solutions from Citrix, Microsoft, VMware, Amazon, Google, and NVIDIA that seamlessly balance security with exceptional user experiences.
Jason’s leadership is amplified by his dedication to knowledge-sharing as an author, speaker, podcaster, and mentor within the global IT and technology community. Recognized with numerous prestigious awards, Jason’s contributions underscore his commitment to advancing technology and empowering organizations to achieve transformative results. Follow him on LinkedIn.
John Breakwell
June 30, 2010 at 3:14 PM
That’s “ex MSMQ guru at Microsoft” 🙂
Pingback: Tweets that mention MSMQ messages stuck in the outgoing queue after cloning servers | JasonSamuel.com -- Topsy.com
Jason
June 30, 2010 at 6:38 PM
Guru none the less. 🙂
Li
May 9, 2017 at 6:47 AM
Hi,
I have this issue that my MSMQ messages stuck in the outgoing queue after cloning servers, I copy the Storage folder on the client computer and I don’t know how to send them to the server..
when I copy them back to the client , after uninstall and install MSMQ the service fails to load ..
do you have a solution for this issue?