GRACEFUL ROLLOVER
Staring with Release 8.1.400.??, URS provides a simplified way for moving call processing from one URS instance to another. As a prequisite for this feature, an active primary/backup pairs of URSes must be configured. Once these pairs exist, URS automatically performs all necessary steps for a graceful rollover using existing primary/backup relations.
.
When instructed to start graceful shutdown primary/backup pair of URSes effectively quits from primary/backup relations and turns into cluster from 2 independent URSes. They still imitate primary/backup relations for management layer but stop to execute its commands (except stop application command) for the time of graceful shutdown.
Note. As graceful shutdown temporary turns primary/backup pair of URSes into cluster of 2 independent URSes it is recommended to consider configuring of agent reservation before using graceful shutdown procedure.
When graceful shutdown command is received:
- current primary URS stops processing of new interactions (from TServers or Web clients).
It stops processing of any multimedia calls (returns them back into Ixn queues) and ORS backed up calls.
It imitates switching into backup mode of operation forcing ORS (if any) to switch to current backup node.
- current backup URS delete all interactions (as they all will be processed by current primary node) excepts ORS backed up ones.
It switches into primary mode of operation and start processing of new interactions as they arrive.
- when original primary finish processing of all existing calls it automatically exits.
The graceful shutdown as described here is started either with web request to current primary URS urs/console?rollover or with console command rollover or through LCA command Suspend (Graceful Stop) . Prerequisites for described here rollover process are:
- Primary/Backup URSes must be configured and work
- if ORS backed up calls are present then it should be verified that current backup “sees” all such calls. It can be achieved with web request to primary URS urs/console?backup and response must looks
like “name(host:port,socket);0000000000000000”. Presence after semicolon of not null connection id indicates that it is not safe to start rollover process as some ORS backed up calls can be lost.
Note. URS graceful shutdown requires presence of working backup URS node. Otherwise URS will refuse request to graceful shutdown. When graceful shutdown is started with command rollover
- if there is no backup configured then URS will reply with no backup and will not start graceful shutdown procedure
- if URS has no connection with its backup then URS will reply with no connection and will not start graceful shutdown procedure
- URS will reply with name of its backup server and starts graceful shutdown procedure.
When graceful shutdown is started through LCA URS will just ignore request if there is no proper backup. Effectively it will result in not graceful shutdown as SCS in such case will request application to quit.
Detailed Design
