IMG 1010 - Graceful Upgrade of Node
What is graceful upgrade?
Graceful upgrade is the ability for a customer to upgrade GCEMS & IMG software as well as their configuration with more control of the service interruption to their network of gateways. The remainder of this document will describe a method for carrying this out. First let’s define some terms.
System – For the purposes of this discussion, a system is a collection of IMG's being configured by one instance of GCEMS.
Active Configuration – An active configuration consists of the configuration of your collection of IMG's as well as the files used by GCEMS to maintain this configuration. More specifically, the following files are used by GCEMS to maintain a configuration (all paths are relative to /opt/cantata(dialogic)/common:
config/system.cfg – This file contains the configuration messages sent by GateManager to initially configure the system as well as reconfigure elements as needed.
config/routing/sending/* - These files contain table files. There are unique files per node & table. These files are downloaded or pulled via NFS at the direction of the GateManager as needed.
Data Model: The data model is an objectified representation of the configuration as is seen when using ClientView to configure a system. The data model is stored in a collection of files that are used to allow a user to view and modify the configuration via ClientView and GCEMS. Anytime a change is made to the configuration, the data model files are automatically updated. These allow for GCEMS to startup at any time and know what the intended configuration is for a system. These files include:
config/System_DataModel.xml – This file contains a description of each object in the configuration, the properties of these objects and the hierarchical relationship between the objects.
config/System_RouteTable*.xml – These files, one per RouteTable, SystemRouteTable and CauseCodeTable, contain all the elements that make up the route tables.
ClientView Configuration File: Also known as the CSA file. This is a file that is created when the user saves the configuration by invoking a save from ClientView. This file can be used to load a configuration in a cold start situation. Like the Data Model, it contains the objectified representation of the configuration including object properties and hierarchical relationships. The following files contain the configuration:
config/<ConfigFileName>.csa – This file contains the same information that would be stored in System_DataModel.xml
config/<ConfigFileName>/<ConfigFileName>_RouteTable_*.xml – These files contain the same information that would be stored System_RouteTable*.xml files.
Steps To Performing A Graceful Upgrade
Graceful upgrade is intended to minimize the need to load ClientView Config files when the customer upgrades. The rest of this document will propose a procedure to carry this out. For ease of discussion, we'll talk about the current version of GCEMS or IMG software and the new version of GCEMS or IMG software. The current version of software is what the customer is running before the upgrade begins. The new version is the one the customer wishes to upgrade to.
Refer to the Upgrade Procedure in the related topics section below. The Graceful Upgrade procedure being performed is a high level step by step document and does not get into detail on how to perform some of the tasks.
Using the current version of GCEMS and ClientView, depress the “Query All Tags” button. This will set the tags of all “slots” on all IMG's if not already set and will prevent unnecessary reconfiguration later. The “Query All Tags” button is currently available at any object.
Make note of the state of ethernet links, ISDN D-Channels, B-Channels, SS7 Links, CICs, and spans as when done, they should return to the same state as if nothing has changed in the customers network. Making note of this information will prevent unnecessary suspicions of the upgrade process.
Change the version of the IMG software to the new version. This will involve updating bin files on the ftp server or on the SD card.
Close ClientView and run the StopGCEMS script. At this point, the IMG's should still process calls. Note that in a redundant SS7 system, if the Active IMG goes down, the Standby will be unable to go Active since the GCEMS processes are not running.
Backup the files that make up the Active Configuration, DataModel and ClientView Configuration as described above.
Install the new version of GCEMS, both the IMG package and the User Interface package.
Rename the system_<timestamp>.cfg file in the config/ directory to system.cfg. This is necessary in order to start GCEMS with an existing configuration.
Start GCEMS using the existing configuration. This should result in queries of the IMG's but no reconfiguration. At this point, the Active Configuration and DataModel files are regenerated.
Startup ClientView. You should see the entire configuration. Any conversions that would normally take place if you loaded the ClientView Configuration File should also take place.
Change the name of the configuration by modifying the name in the Configuration object.
Save the configuration.
Upload new IMG licenses if necessary, to the license directory.
At this point, we are ready to upgrade individual node. Here are the rules:
All nodes contained in the same logical node group must be upgraded at the same time. This is needed since nodes participating in SS7 calls, both signaling and remote nodes, share information about configuration (and possibly call/service state). Failure to upgrade all SS7 related nodes in the same node group may cause unnecessary faults if the information being shared between nodes has been changed between the current IMG release and the new IMG release.
If the IMG is not a SS7 node contain an SS7 stack, links, or CICs, and is not in a node group with SS7 nodes, it can be reset individually.
Upgrading the IMG’s simply involves resetting the IMG’s. Before resetting the IMG’s, make sure any updated licenses are installed in the license directory. Resetting the IMG can be done by simply depressing the “Clear Software” button on the Physical IMG object. To reset all nodes in a Logical Node group, use the Reset Logical Node button on the Logical Node object pane.
After reconfiguration of the nodes complete, confirm that the states of all objects noted in step 2 have returned to the same state.