Anytime I do contract work as an MQ Admin, I make sure I am allowed to implement an application failover certification test. Golden Rule: The application’s production queues / queue managers do NOT get defined / created until the application has successfully passed the failover test.
I get totally screamed at by the application managers, directors, etc.. but in the end, the application passes my failover test (sometimes the application is not promoted on time but I never get those 2:00AM phone calls either). 🙂
For those who are curious, the failover test has 7 steps. After each and EVERY step the application MUST reconnect (in a reasonable amount of time 1,2,3 minutes) and continue processing messages.
- Test #1: Failover the queue manager from server ‘A’ to ‘B’
- Test #2: Stop the client-channel then failover queue manager from server ‘A’ to ‘B’
- Test #3: Get disable the application queue(s) then failover the queue manager from server ‘A’ to ‘B’. After the queue mangaer restarts on server ‘B’, enable the queues on ‘B’ server.
- Test #4: Stop the queue manager on server ‘A’, wait 15 minutes, start the queue manager on server ‘B’
- Test #5: Stop the client-channel, stop the queue manager on server ‘A’, wait 15 minutes, then start the queue manager on server ‘B’
- Test #6: Stop the queue manager on server ‘A’, wait 45 minutes, start the queue manager on server ‘B’
- Test #7: Stop the client-channel, stop the queue manager on server ‘A’, wait 45 minutes, then start the queue manager on server ‘B’
If an application including JMS applications, can pass my failover certification test then I create their production queues / queue managers. I have implemented this at several clients, application managers hate it but it makes MQ Admin work much, much easier. 🙂
One Response to My MQ Failover Test for a happier MQ environment