Our problem is that when the application service attempts to open a queue it
receives an error message indicated that the MSMQ service is not present. As
I understand it this is due to the following:
1) To use MSMQ it is a requirement that a local instance of MSMQ is running
on the PC on which the application is running. So, a client application on a
desktop PC that wishes to post to or read from a message queue requires a
locally installed MSMQ service. This also applies to our two application
services.
2) Although our application services are clustered, they still seem to look
to the active node when checking if MSMQ is installed and running.
Consequently they fail and produce the error we are seeing
Are there any workarounds for this? Can the services in some way be moved
into the context of the virtual cluster, so they see the clustered MSMQ
service at this point, and don't need the MSMQ service to be available on
the nodes?
Apparently one workaround for this is to run MSMQ on the nodes as well as
the cluster. This has several issues though, not least of which is that the
node service apparently cannot be set to start automatically, so the
application services would fail unless this service was manually started
when required. This would not be acceptable.
Logically it seems there should be some way around this - the alternative
would be that to cluster both MSMQ and a service that uses it requires two
separate physical clusters. I'm sure I'm missing something really obvious
:-(
Kev
> Logically it seems there should be some way around this - the alternative
> would be that to cluster both MSMQ and a service that uses it requires two
> separate physical clusters. I'm sure I'm missing something really obvious
> :-(
>
And indeed I was. I had a quick look in the cluster manager, and the
services hadn't been set to use the network name as the computer name.
Switched that on, and all was fine.
Kev