Skip Headers
Oracle® Communications Services Gatekeeper Installation Guide
Release 5.0

Part Number E16615-02
Go to Documentation Home
Home
Go to Book List
Book List
Go to Table of Contents
Contents
Go to Feedback page
Contact Us

Go to previous page
Previous
View PDF

8 Upgrading Oracle Communications Services Gatekeeper

This chapter describes upgrading Oracle Communications Services Gatekeeper 4.1.x to Oracle Communications Services Gatekeeper 5.0. It also has reference sections for new and changed CDRs, EDRs, and alarms.

About Upgrading Services Gatekeeper

An Oracle Communications Services Gatekeeper 4.1.x installation can be upgraded to Oracle Communications Services Gatekeeper 5.0 without shutting down the entire cluster or domain. Applications can use Services Gatekeeper with minimal service interruption during the upgrade. The process is known as a Rolling Upgrade and is a WebLogic Server feature.

After the upgrade, the security identity of Services Gatekeeper is the same as it was before the upgrade.

The process is based on a rolling scheme, where each server in the domain, one at the time, is stopped, upgraded to the new version, and then started. This process upgrades the WebLogic Server and the Oracle Communications Services Gatekeeper Core services, but leaves all communication services as before the upgrade.

After all servers have been upgraded, the communication services in use need to be upgraded. This is done using in-production redeployment, which is a WebLogic Server feature that enables the communication services to be upgraded without any traffic interruption.

The high-level workflow is:

  1. Prepare your servers to be upgraded. See "Preparing to Upgrade".

  2. Upgrade each server using a rolling upgrade scheme. See "Upgrading Server to New Version".

  3. Upgrade the communication services and the interceptors using in-production redeployment. See "Upgrading Communication Services and Interceptors".

  4. Verify that new traffic is processed.

You should always upgrade the servers in this order:

  1. Administration server

  2. Access tier servers

  3. Network tier servers.

It is strongly recommended that you back up configuration data prior to the upgrade. See System Backup and Restore Guide, another document in this set.

Limitations

The following limitations apply for the upgrade:

Preparing to Upgrade

When you are preparing to upgrade, you gracefully undeploy a set of WebLogic applications that are discontinued or replaced in this release of Services Gatekeeper. Use WebLogic tools to undeploy the applications. See “Deploying Applications” in Oracle Fusion Middleware Administrator's Guide.

You can use both the administration console and the tool weblogic.Deployer. Example 8-1 shows how to use weblogic.Deployer.

Example 8-1 Undeploying an Application Gracefully Using weblogic.Deployer.

java weblogic.Deployer 
            -adminurl t3://10.182.100.33:7001 
            -user weblogic 
            -password weblogic 
            -name wlng_nt_callable_policy 
            -appversion 4.1
            -undeploy 
            -graceful

To prepare to upgrade:

  1. If you are using the administration console to undeploy the applications, log in to the administration console.

  2. If you are using weblogic.Deployer, set up the correct environment by sourcing the file Middleware_Home_old/wlserver_10.3/server/bin/setWLSEnv.sh (UNIX) or invoke Middleware_Home_old\wlserver_10.3\server\bin\setWLSEnv.cmd (Windows).

  3. If you are not using any of the Parlay Communication services that rely on an ORB, gracefully undeploy the following communication services:

    • Parlay X 3.0 Third Party Call/Parlay MultiParty Call Control. Application name is wlng_nt_third_party_call_px30, version is 4.1.x.

    • Parlay X 3.0 Call Notification/Parlay MultiParty Call Control. Application name is wlng_nt_call_notification_px30, version is 4.1.x.

    • Parlay X 3.0 Audio Call/Parlay MultiParty Call Control and Call User Interaction. Application name is wlng_nt_audio_call_px30, version is 4.1.x.

    If an ORB is not installed, undeploying three communication services is required.

  4. If you are using a Parlay based communication service, you need to install the ORB later in the process.

  5. Gracefully undeploy the existing Native SMPP communication service. The application name is wlng_nt_sms_smpp, version is 4.1.x.

  6. Gracefully undeploy the Callable Policy service. Application name is wlng_nt_callable_policy, version is 4.1.x.

Upgrading Server to New Version

To upgrade a server:

  1. Stop the server gracefully so all in-flight requests are processed before the shutdown starts.

    For information on how to stop a server using the administration console, see “Shutdown servers in a cluster” in Oracle Fusion Middleware Oracle WebLogic Server Administration Console Online Help at:

    http://download.oracle.com/docs/cd/E15523_01/apirefs.1111/e13952/taskhelp/clusters/ServerShutdownCluster.html

    For information about using the Graceful Shutdown command, see “Graceful Shutdown” in Oracle Fusion Middleware Managing Server Startup and Shutdown for Oracle WebLogic at:

    http://download.oracle.com/docs/cd/E12839_01/web.1111/e13708/server_life.htm

  2. Install the new version of Oracle Communications Services Gatekeeper. See "Installing Oracle Communications Services Gatekeeper".

    Install it under a directory different from Middleware_Home directory used for the old version. Do not configure the domain.

    Note that if services requiring an ORB will be retained, the ORB must be installed after Services Gatekeeper is installed.

  3. If you are using a communication service that connects to a Parlay Gateway, install the ORB as described in Chapter 6, "Completing Post-Installation". Do not run ob_patch.sh or ob_patch.bat.

  4. Set up necessary environment variables.

    On Windows: run the script Middleware_Home\wlserver_10.3\server\bin\setWLSEnv.cmd

    On UNIX: source the script Middleware_Home/wlserver_10.3/server/bin/setWLSEnv.sh

    Middleware_Home refers to the top-level directory for the new installation.

  5. Change directory to Middleware_Home/wlserver_10.3/common/templates/scripts/upgrade.

    Middleware_Home refers to the top-level directory for the new installation.

  6. The upgrade script assumes that the JDK was installed in Middleware_Home /jdk160_18 (Oracle SUN) or Middleware_Home/jrockit_160_17_R28.0.0-677 (JRockit).

    If you are using the generic installer, update the JAVA_HOME variable in the file Middleware_Home/wlserver_10.3/common/templates/scripts/upgrade/build.xml:

    Set JAVA_HOME to the directory in which the JDK is installed.

  7. While upgrading network tier servers from 4.1.1 to 5.0 only (not necessary when upgrading from 4.1.0 to 5.0), update the upgrade script:

    1. Open the file Middleware_Home/wlserver_10.3/common/templates/scripts/upgrade/build.xml.

    2. Update the ant target patch.interceptors from:

      <target name="patch.interceptors">
      <copy file="${nt.server.home}/stage/interceptors/4.1/interceptors.ear" tofile="${nt.server.home}/interceptors.ear-backup" />
      <copy file="${ocsg.home}/applications/interceptors.ear" tofile="${nt.server.home}/stage/interceptors/4.1/interceptors.ear" overwrite="true" />
      <ear destfile="${nt.server.home}/stage/interceptors/4.1/interceptors.ear" update="true">
      

      to:

      <target name="patch.interceptors">
      <copy file="${nt.server.home}/stage/interceptors/4.1.1/interceptors.ear" tofile="${nt.server.home}/interceptors.ear-backup" />
      <copy file="${ocsg.home}/applications/interceptors.ear" tofile="${nt.server.home}/stage/interceptors/4.1.1/interceptors.ear" overwrite="true" />
      <ear destfile="${nt.server.home}/stage/interceptors/4.1.1/interceptors.ear"  update="true">
      
    3. Save the file.

  8. While upgrading the Administration Server only, add settings for and configure Coherence:

    1. Open the Coherence cluster configuration file Middleware_Home/wlserver_10.3/common/templates/scripts/upgrade/coherence/Coherence-OCSG/Coherence-OCSG-7969-coherence.xml.

    2. Set the value of the element unicast-listen-port to the unicast listen port for the cluster.

      The port can be changed. If you change it, use the same value as the NT's listen port.

    3. Define the element coherence-cluster-well-known-addresses.

      Add the following for each network tier server:

      <coherence-cluster-well-known-address>

      <name>Server_Id</name>

      <listen-address>Listen_Address</listen-address>

      <listen-port>Listen_Port</listen-port>

      </coherence-cluster-well-known-address>

      Where Server_Id is the Coherence cluster ID for the server (for example, WKA-0, WKA-1,WKA-2, and so on), Listen_Addressis the hostname or IP address of the network tier server, and Listen_Portis the port number.

    4. Save the file.

    5. Open Coherence cluster configuration update file Middleware_Home/wlserver_10.3/common/templates/scripts/upgrade/configCoherence.py.

      Middleware_Home refers to the installation directory for the new Services Gatekeeper version.

    6. Update the parameter for readDomain(...) to refer to Domain_Home. Domain_Home is the domain configuration directory.

    7. Update the parameter for set(...) where the first parameter is Target by setting the second parameter to the name of the network tier cluster.

    8. Configure Coherence by running java weblogic.WLST configCoherence.py.

  9. Run the upgrade ant script. The script executes different ant targets for different server types. The script takes a set of arguments. See Table 8-1, "Arguments to the Upgrade Script".

    To upgrade

    • the administration server, execute the target upgrade.admin.

    • an access tier server, execute the target upgrade.

    • a network tier server, execute the target upgrade.nt

    See Example 8-2, "Upgrading the Administration Server", Example 8-3, "Upgrading an Access Tier Server", and Example 8-4, "Upgrading a Network Tier Server".

    Table 8-1 Arguments to the Upgrade Script

    Argument Description

    -Ddomain41.home

    Domain configuration directory used in the old version

    -Dbea41.home

    Installation directory for the old installation

    -Dbea50.home

    Installation directory for the new installation

    -Dwlsold.home

    Installation directory used for WebLogic Server in the old installation

    -Dwlsnew.home

    Directory used for WebLogic Server used in the new installation

    -Docsg.home

    Directory used for Services Gatekeeper in the new installation

    -Ddomain41.name

    Name of the domain in the existing installation

    -Dadmin.host

    Host name or IP address of the administration server

    -Dadmin.port

    Administration port number for the administration server

    -Dserver.name

    Name of the server to upgrade

    -Dnt.server.home

    Directory of the network tier server to upgrade. Used only when upgrading an network tier server.


    Example 8-2 Upgrading the Administration Server

    ant upgrade.admin
        -Ddomain41.home=C:\temp\bea\ocsg410\user_projects\domains\ocsg-access-network-domain 
        -Dbea41.home=C:\temp\bea\ocsg410 
        -Dbea50.home=C:\temp\bea\ocsg500 
        -Dwlsold.home=C:\temp\bea\ocsg410\wlserver_10.3 
        -Dwlsnew.home=C:\temp\bea\ocsg500\wlserver_10.3 
        -Docsg.home=C:\temp\bea\ocsg500\ocsg_5.0 
        -Ddomain41.name=ocsg-domain
        -Dadmin.host=10.182.100.111
        -Dadmin.port=7001
        -Dserver.name=AdminServer
    

    Example 8-3 Upgrading an Access Tier Server

    ant upgrade
        -Ddomain41.home=C:\temp\bea\ocsg410\user_projects\domains\ocsg-domain-at1
        -Dbea41.home=C:\temp\bea\ocsg410 
        -Dbea50.home=C:\temp\bea\ocsg500 
        -Dwlsold.home=C:\temp\bea\ocsg410\wlserver_10.3 
        -Dwlsnew.home=C:\temp\bea\ocsg500\wlserver_10.3 
        -Docsg.home=C:\temp\bea\ocsg500\ocsg_5.0 
        -Ddomain41.name=ocsg-domain
        -Dadmin.host=10.182.100.111
        -Dadmin.port=7001
        -Dserver.name=AT1
    

    Example 8-4 Upgrading a Network Tier Server

    ant upgrade.nt
        -Ddomain41.home=C:\temp\bea\ocsg410\user_projects\domains\ocsg-access-network-domain 
        -Dbea41.home=C:\temp\bea\ocsg410 
        -Dbea50.home=C:\temp\bea\ocsg500 
        -Dwlsold.home=C:\temp\bea\ocsg410\wlserver_10.3 
        -Dwlsnew.home=C:\temp\bea\ocsg500\wlserver_10.3 
        -Docsg.home=C:\temp\bea\ocsg500\ocsg_5.0 
        -Ddomain41.name=ocsg-domain
        -Dadmin.host=10.182.100.111
        -Dadmin.port=7001
        -Dnt.server.home=C:\temp\bea\ocsg410\user_projects\domains\ocsg-access-network-domain\servers\WLNG_NT1
        -Dserver.name=NT1
    
  10. If you are upgrading the administration server, set the environment variable OCSG50_INSTALL_HOME to the new installation directory.

  11. If you are upgrading the administration server, unpack the file Middleware_home/wlserver_10.3/common/templates/scripts/migration.zip.

  12. If you are upgrading the administration server, run the configuration update script. The syntax is:

    runConfigurationMigration.Extension DB_type DB_Host DB_Port DB_Name DB_User Password Domain_Home

    Where:

    • Extension is the filename extension. Use sh for UNIX and bat for Windows.

    • DB_type is the database type. Use oracle for Oracle Database or mysql for MySQL.

    • DB_Host is the host name, or IP address, of the server running the database.

    • DB_Port is the port number used by the database.

    • DB_Name is the database name for a MySQL database or the service name for an Oracle database.

    • DB_User is the user ID used to connect to the database.

    • Password is the password associated with DB_User.

    • Domain_Home is the directory for the domain configuration.

  13. Change directory to Domain_Home/bin.

  14. Set access privileges on the files. Change permission to read/write/execute on all files, by entering:

    chmod 755 *

  15. The new version has introduced a set of new and changed EDR, CDR, and alarm definitions.

    If you are upgrading the administration server, update a set of new and changed EDR, CDR, and alarms definitions:

    1. Extract the file Middleware_Home/wlserver_10.3/common/templates/domains/ocsg-domain.jar.

    2. Copy the config\custom\wlng-edr.xml file to the Domain_Home/config/custom directory.

  16. Start the server.

Upgrading Communication Services and Interceptors

After the upgraded Oracle Communications Services Gatekeeper domain has been started, each Communication Service needs to be upgraded. This is done using a hitless upgrade procedure.

See “Hitless Upgrade Using Production Redeployment” in Oracle Communications Services Gatekeeper System Administrator's Guide and “Redeploying Applications in a Production Environment” in Oracle Fusion Middleware Deploying Applications to Oracle WebLogic Server.

To upgrade service interceptors and communication services:

  1. Re-deploy wlng_at_session and wlng_nt_session, because they are used by all the communication services.

  2. Deploy the file Services_Gatekeeper_Home_new/applications/wlng_nt_native_smpp_sms.ear, where Services_Gatekeeper_Home_new is the installation directory for the new version.

    After deployment, restart the service manually.

  3. Redeploy the file Services_Gatekeeper_Home_new/applications/interceptors.ear using the WebLogic Server production redeployment strategy. See Oracle Fusion Middleware Deploying Applications to Oracle WebLogic Server

  4. Redeploy the communication services using the WebLogic Server production redeployment strategy. The applications are located in the directory Services_Gatekeeper_Home_new/applications.

    The file names of the EAR files for each communication service are detailed in Oracle Communications Services Gatekeeper System Administrator's Guide in the Properties tables in the chapters that describe how to manage and configure each communication service.

Reference: Added and Changed Alarm Definitions

Added alarm definitions:

Changed alarm definitions:

Reference: Added and Changed EDR Definitions

Table 8-2 outlines the added and changed CDR definitions

Table 8-2 Added and Changed EDR Definitions

Communication Service Changed Range Added Range

Parlay X 2.1/Terminal Status

None

4012 to 4017

Parlay X 2.1 SMS/SMPP

7000 to 7009

7011to 7015

7016 to 7017

Extended Web Services/SMPP

7101 to 7203

7301 to 7307

None

SMPP Facade

400020 to 400020

400051 to 40070

400102 to 400103

400108 to 400109

400113 to 400113

Native UCP

None

402001 to 402004

402010 to 402013

402020 to 402021

402030 to 402031

Parlay X 3.0 Device Capabilities/LDAP

None

403001 to 403002

Parlay X 2.1 Audio Call/SIP

None

405001 to 405002


Reference: Added and Changed CDR Definitions

The following sections describes the added and changed CDR definitions in the new version.

Parlay X 2.1 Multimedia Messaging/MM7

<cdr>
    <filter>
      <method>
        <name>void deliver(NotificationInfoHolder, DeliverReqType)</name>
        <class>com.bea.wlcp.wlng.plugin.multimediamessaging.mm7.
               messagenotification.south.DeliverAdapter
        </class>
        <position>after</position>
      </method>
      <method>
        <name>void deliver(NotificationInfoHolder, DeliverReqType)</name>
        <class>oracle.ocsg.plugin.multimediamessaging.mm7.
               rel6mm714.messagenotification.south.DeliverAdapter</class>
        <position>after</position>
      </method>      
    </filter>
  </cdr>
 
  <cdr>
    <filter>
      <method>
        <name>void deliveryReport(MessageDeliveryInfoHolder,
                                  DeliveryReportReqType)</name>
        <class>com.bea.wlcp.wlng.plugin.multimediamessaging.mm7.
               messagenotification.south.DeliveryReportAdapter</class>
        <position>after</position>
      </method>
      <method>
        <name>void deliveryReport(MessageDeliveryInfoHolder,
                                  DeliveryReportReqType)</name>
        <class>oracle.ocsg.plugin.multimediamessaging.mm7.
               rel6mm714.messagenotification.south.DeliveryReportAdapter</class>
        <position>after</position>
      </method>       
    </filter>
  </cdr>

Parlay X 2.1 Short Messaging and EWS Binary SMS/SMPP

<cdr>
    <filter>
      <method>
        <name>void processSmsReceptionNotification</name>
        <class>oracle.ocsg.plugin.sms.smpp.SMPPNorthboundHandler</class>
        <position>after</position>
      </method>
    </filter>
  </cdr>
 
  <cdr>
    <filter>
      <method>
        <name>SendSmsResponse sendSms(SendSms)</name>
        <class>oracle.ocsg.plugin.sms.smpp.SMPPPluginInstanceImpl</class>
        <position>after</position>
      </method>
    </filter>
  </cdr>

  <cdr>
    <filter>
      <method>
        <name>SendBinarySmsResponse sendBinarySms(SendBinarySms)</name>
        <class>oracle.ocsg.plugin.sms.smpp.SMPPPluginInstanceImpl</class>
        <position>after</position>
      </method>
    </filter>
  </cdr>

  <cdr>
    <filter>
      <method>
        <name>void processSmsBinaryReceptionNotification</name>
        <class>oracle.ocsg.plugin.sms.smpp.SMPPNorthboundHandler</class>
        <position>after</position>
      </method>
    </filter>
  </cdr>

  <cdr>
    <filter>
      <method>
        <name>void handleReceivedSMSDeliveryReport(SmsMessageState,
                                                   DeliverSm)</name>
        <class>oracle.ocsg.plugin.sms.smpp.SMPPNorthboundHandler</class>
        <position>after</position>
      </method>
    </filter>
  </cdr>

Native UCP

<cdr>
    <filter>
      <method>
        <name>void deliverSM(UcpPDU, String)</name>
        <class>oracle.ocsg.plugin.nativefacade.ucp.south.
               NativeUCPPluginSouthImpl</class>
        <position>after</position>
      </method>
    </filter>
  </cdr>
 
  <cdr>
    <filter>
      <method>
        <name>void submitSM(UcpPDU, ServerPort, String)</name>
        <class>oracle.ocsg.plugin.nativefacade.ucp.north.
               NativeUCPPluginNorthImpl</class>
        <position>after</position>
      </method>
    </filter>
  </cdr>
 
  <cdr>
    <filter>
      <method>
        <name>void ack(UcpPDU, String)</name>
        <class>oracle.ocsg.plugin.nativefacade.ucp.south.
               NativeUCPPluginSouthImpl</class>
        <position>after</position>
      </method>
    </filter>
  </cdr>
 
  <cdr>
    <filter>
      <method>
        <name>void deliveryNotification(UcpPDU, String)</name>
        <class>oracle.ocsg.plugin.nativefacade.ucp.south.
               NativeUCPPluginSouthImpl</class>
        <position>after</position>
      </method>
    </filter>
  </cdr>

Parlay X 2.1 Terminal Status/MAP

<cdr>
    <filter>
      <method>
        <name>StatusNotificationResponse statusNotification</name>
        <class>oracle.ocsg.plugin.terminal_status.map.
               south.notification.NotificationSouth</class>
        <position>after</position>
      </method>
    </filter>
  </cdr>

SMPP Facade

<cdr>
    <filter>
      <method>
        <name>void receiveSubmitSmResponse</name>
        <class>com.bea.wlcp.wlng.plugin.legacy.smpp.north.
               UpstreamSmppAgentImpl</class>
        <position>before</position>
      </method>
    </filter>
  </cdr>
 
  <cdr>
    <filter>
      <method>
        <name>void receiveSubmitSmMultiResponse</name>
        <class>com.bea.wlcp.wlng.plugin.legacy.smpp.
               north.UpstreamSmppAgentImpl</class>
        <position>before</position>
      </method>
    </filter>
  </cdr>
 
 
  <cdr>
    <filter>
      <method>
        <name>void sendDeliverSmResp</name>
        <class>com.bea.wlcp.wlng.plugin.legacy.smpp.southbind.
               SmppPluginSouthImpl</class>
        <position>before</position>
      </method>
    </filter>
  </cdr>

Parlay X 3.0 Payment/Diameter

<cdr>
    <filter>
      <method>
        <name>ChargeAmountResponse chargeAmount</name>
        <class>com.bea.wlcp.wlng.plugin.payment.diameter.north.
               AmountChargingPluginNorth</class>
        <position>after</position>
      </method>
    </filter>
  </cdr>
 
  <cdr>
    <filter>
      <method>
        <name>RefundAmountResponse refundAmount</name>
        <class>com.bea.wlcp.wlng.plugin.payment.diameter.north.
               AmountChargingPluginNorth</class>
        <position>after</position>
      </method>
    </filter>
  </cdr>
 
  <cdr>
    <filter>
      <method>
        <name>ChargeSplitAmountResponse chargeSplitAmount</name>
        <class>com.bea.wlcp.wlng.plugin.payment.diameter.north.
               AmountChargingPluginNorth</class>
        <position>after</position>
      </method>
    </filter>
  </cdr>
 
  <cdr>
    <filter>
      <method>
        <name>ReserveAmountResponse reserveAmount</name>
        <class>com.bea.wlcp.wlng.plugin.payment.diameter.north.
               ReserveAmountChargingPluginNorth</class>
        <position>after</position>
      </method>
    </filter>
  </cdr>
 
  <cdr>
    <filter>
      <method>
        <name>ReserveAdditionalAmountResponse reserveAdditionalAmount</name>
        <class>com.bea.wlcp.wlng.plugin.payment.diameter.north.
               ReserveAmountChargingPluginNorth</class>
        <position>after</position>
      </method>
    </filter>
  </cdr>
 
  <cdr>
    <filter>
      <method>
        <name>ChargeReservationResponse chargeReservation</name>
        <class>com.bea.wlcp.wlng.plugin.payment.diameter.north.
               ReserveAmountChargingPluginNorth</class>
        <position>after</position>
      </method>
    </filter>
  </cdr>
 
  <cdr>
    <filter>
      <method>
        <name>ReleaseReservationResponse releaseReservation</name>
        <class>com.bea.wlcp.wlng.plugin.payment.diameter.north.
               ReserveAmountChargingPluginNorth</class>
        <position>after</position>
      </method>
    </filter>
  </cdr>

Native SMPP

<cdr>
    <filter>
      <method>
        <name>void submitSmResponse</name>
        <class>oracle.ocsg.plugin.nativesmpp.south.SMPPPluginSouthImpl</class>
        <position>after</position>
      </method>
    </filter>
  </cdr>
 
  <cdr>
    <filter>
      <method>
        <name>void submitMultiResponse</name>
        <class>oracle.ocsg.plugin.nativesmpp.south.SMPPPluginSouthImpl</class>
        <position>after</position>
      </method>
    </filter>
  </cdr>
 
  <cdr>
    <filter>
      <method>
        <name>void deliverSmResponseForMO</name>
        <class>oracle.ocsg.plugin.nativesmpp.north.SMPPPluginNorthImpl</class>
        <position>after</position>
      </method>
    </filter>
  </cdr>   

Parlay X 2.1 Audio Call/SIP

<cdr>
    <filter>
      <method>
        <name>void callConnected</name>
        <class>oracle.ocsg.plugin.audio_call.sip.south.call.
               AudioCallCdrContext</class>
        <position>after</position>
      </method>
    </filter>
  </cdr>
  <cdr>
    <filter>
      <method>
        <name>void callReleased</name>
        <class>oracle.ocsg.plugin.audio_call.sip.
               south.call.AudioCallCdrContext</class>
        <position>after</position>
      </method>
    </filter>
  </cdr>