4 ECE Pre-Installation Tasks

This chapter describes pre-installation tasks for Oracle Communications Billing and Revenue Management Elastic Charging Engine (ECE).

If you are upgrading ECE 11.3 or an ECE 11.3 patch set, see the following for information on pre-installation tasks:

About Pre-Installation Tasks

You must perform certain tasks before installing ECE. Some tasks you only need to perform for an ECE integrated installation. See the following topics for the pre-installation tasks:

(Linux only) You can run the ece_provision script so that it automatically performs several ECE pre-installation tasks for you. This script also applies Oracle Linux network configuration changes on your environment to prepare machines in your topology for a distributed ECE installation. See "(Linux) Provisioning Your Environment for ECE Installations" for information.

Pre-Installation Tasks Common to All ECE Installations

This section describes the pre-installation tasks you must perform that are common to all ECE installations.

Note:

(Linux) If you use the ece_provision script, the script automates many of these tasks. See "(Linux) Provisioning Your Environment for ECE Installations".

Installing Groovy

Groovy is used for launching the Elastic Charging Controller (ECC), which is the ECE command line interface. The ECC is an extension of the Groovy Shell (groovysh) for ECE.

Install Groovy on the driver machine and set it in your PATH environment variable.

See the discussion in your Groovy documentation for instructions on installing and configuring Groovy.

Installing Java Development Kit

Install Oracle Java Development Kit (JDK) and set it in your PATH environment variable. The JRE is required for the installer process.

See the discussion in the Oracle JDK documentation for information about installing JDK.

Obtaining Required JAR Files

Obtain the following JAR files and save them in a directory of your choice on the driver machine. Note the location of the JAR files; you are required to specify this location during the ECE installation:

Table 4-1 Required JAR Files

File Description

ojdbc7.jar

Download this file from the following page on Oracle Technology Network Web site in the "Oracle Database 12c Release 1 (12.1.0.1) JDBC Drivers & UCP" section:

http://www.oracle.com/technetwork/database/features/jdbc/jdbc-drivers-12c-download-1958347.html

xdb6.jar

Download this file from the following page on Oracle Technology Network Web site in the "Oracle Database 12c Release 1 (12.1.0.1) JDBC Drivers & UCP" section:

http://www.oracle.com/technetwork/database/features/jdbc/jdbc-drivers-12c-download-1958347.html

wlthint3client.jar

This file is available in the Oracle WebLogic Server client package.

Note: If you choose to use two JMS providers, both WebLogic Server and another provider, ensure that you do the following after installation on the driver machine:

  • Copy the other JMS provider's client JARs to the ECE_home/oceceserver/lib directory.

  • Rename the other JMS provider JAR file wlthint3client.jar.

  • (When using the other JMS provider to publish ECE notification events) Update the ECE_home/oceceserver/JMSQueueConfiguration.xml file to specify the InitialContextFactory and protocol information of the other JMS provider.

osdt_cert.jar

This file is available in the BRM_Home/jars directory, where BRM_Home is the directory in which you installed BRM.

osdt_core.jar

This file is available in the BRM_Home/jars directory.

oraclepki.jar

This file is available in the BRM_Home/jars directory.

httpclient-4.4.jar

This file is available in the BRM_Home/jars directory.

commons-logging-1.2.jar

This file is available in the BRM_Home/jars directory.

groovy-all-2.4.11.jar

Download this file from the following page on Apache Groovy Web site in the "Maven Repository" section:

http://groovy-lang.org/install.html


(Solaris) Making the readlink Command Available to Your Environment

For deploying ECE on Solaris 10, you must have the readlink command available to your installation environment. The readlink command is included in the SFWcoreu.pkg.bz2 package, an open source package you can download from the Internet.

To make the readlink command available to your environment, do the following:

  1. Download the SFWcoreu.pkg.bz2 package.

  2. Execute the following commands:

    bunzip2 SFWcoreu.pkg.bz2
    pkgadd -d SFWcoreu.pkg
    

    The commands that are part of the SFWcoreu.pkg.bz2 package are installed in /opt/sfw/bin.

  3. Add /opt/sfw/bin to your PATH environment variable.

Creating the ECE User Account

Create the user account that is to be the primary user running ECE in your environment. The ECE user is a UNIX account used for password-less SSH.

You create the user account on the driver machine (the primary administrator machine). It is required that all machines have the same user name configured.

Note the user name; you will be required to specify the user name during the ECE installation process.

To create the user account:

  1. Log in to the driver machine.

  2. Enter the following commands:

    useradd user_name
    passwd user_name
    

    where user_name is the name of the user.

  3. When prompted, enter the password for the user.

See the discussion about setting up and managing ECE security in BRM Elastic Charging Engine System Administrator's Guide for information about creating user accounts to manage ECE files.

See the discussion in your Linux documentation for more information about the useradd command.

Establishing Two-Way Password-less SSH Logins

Establish two-way password-less SSH logins between all the physical servers in your cluster: between the driver machine and each server machine and between all server machines.

If you will install an ECE standalone system on one machine only, a password-less SSH login is also required for the ECE user on the standalone machine.

To establish two-way password-less SSH logins, perform the following steps on each machine:

  1. Log in to the ECE machine as the ECE user.

  2. Run the following commands:

    ssh-keygen -t dsa
    ssh-copy-id -i ~/.ssh/id_dsa.pub user@host
    

    where:

    • user is the name of the ECE user.

    • host is the name of the server for which the password-less SSH is being established.

      If you will install an ECE standalone system on one machine, host in the ssh-copy-id command must be localhost.

See the discussion about setting up and managing ECE security in BRM Elastic Charging Engine System Administrator's Guide for more information.

The number of ECE nodes you can start simultaneously is affected by the limitation on how many simultaneous SSH connections the machines in your environment can make from or to another machine. The start command, by default, attempts to start ten nodes simultaneously using ten different threads. Ensure that your maximum number of open sessions permitted per network connection is less than the number of nodes you want to start simultaneously from the driver machine. For more information, see the discussion about starting and stopping ECE in BRM Elastic Charging Engine System Administrator's Guide.

Pre-Installation Tasks for an ECE Integrated Installation

For an ECE integrated installation, you perform the pre-installation tasks common to all ECE installations, (see "Pre-Installation Tasks Common to All ECE Installations") and also the tasks described in this section.

Installing and Configuring Pricing Design Center

Pricing Design Center (PDC) is required for creating pricing data (pricing components and setup components) used by ECE for rating usage requests.

ECE supports PDC on Linux x86 or x86-64 or Solaris SPARC (64bit).

During the PDC installation process, when prompted to specify whether you want to integrate ECE with PDC, select Yes. PDC will create a JMS queue (a work item queue) where it will publish pricing data. The ECE Pricing Updater will listen on this queue for pricing updates so that it can dequeue and load the data into ECE.

If you have already installed PDC but did not specify to integrate it with ECE, then manually set up a JMS queue on a PDC WebLogic server and configure PDC to publish pricing data to this queue.

Note the connection information (such as host name, port number, and password) for the WebLogic server where the JMS queue resides. You will be required to specify this information during the ECE installation process. See "Required WebLogic Server Information" for details about the information you will need.

See the discussion in the Pricing Design Center documentation for information about installing and configuring PDC.

See the discussion in the Oracle WebLogic Server documentation for information about setting up JMS queues.

Installing and Configuring Oracle NoSQL Database

ECE publishes rated events to a data store in the Oracle NoSQL database where the events are stored temporarily before being extracted and sent to the BRM system.

When you install Oracle NoSQL Database, note the database connection information (such as host name, port number, and data store name). You must specify this information during the ECE installation process. See "Required Oracle NoSQL Database Information".

When configuring NoSQL Database, set up the NoSQL data store to which ECE can publish rated events. Size the Oracle NoSQL database key-value data store installation to match your ECE charging server topology.

After you install an Oracle NoSQL database, you can start the Oracle NoSQL database data store with either a single-node or multiple-node configuration:

  • A single-node data store configuration is included with the Oracle NoSQL database installation and can be started in a nonproduction ECE environment.

  • A multiple-node NoSQL data store configuration is required for running ECE in a production environment and requires additional configuration to make multiple nodes work as an Oracle NoSQL database cluster.

See the discussion in the Oracle NoSQL Database documentation for information about installing NoSQL Database, setting up a NoSQL data store, and setting up high availability and performance for the Oracle NoSQL Database.

ECE uses the Oracle NoSQL database client library for connecting and interacting with the Oracle NoSQL database. The Oracle NoSQL database client library is installed when you install the ECE server software. You provide the Oracle NoSQL database connection information when you install ECE.

About Oracle NoSQL Data Store Partitions

An Oracle NoSQL data store is divided into partitions. Partitions store the rated events processed by each Rated Event Formatter instance and are associated with the target BRM database schema to which the rated events are to be exported. The partitions are automatically created for each BRM database schema.

Tip:

One BRM schema is not mapped to one Oracle NoSQL database partition. The Oracle NoSQL database can have any preconfigured number of partitions based on the data size. The Rated Event Formatter partition configuration entry actually refers to the BRM database schema, not the Oracle NoSQL partition.

Installing and Configuring BRM

Oracle Communications Billing and Revenue Management (BRM) is required in the charging system to perform billing, subscription management, and financial management.

ECE supports BRM on Linux x86 or x86-64 or Solaris SPARC (64bit).

Take note of the BRM connection information (such as host names, port numbers, and passwords) when you install BRM. You will be required to specify this information during the ECE installation process. See "Required External Manager Gateway Information" for details about the information you will need.

Setting Up Database Queues for ECE-to-BRM Mediation

When configuring BRM, set up the following Oracle Advanced Queuing (AQ) database queues (DBMS AQs):

  • A database queue to which the BRM Account Synchronization DM can publish business events for ECE to consume.

  • A database queue to which ECE can move failed update requests from BRM (referred to as the Suspense Queue).

  • A database queue to which ECE can publish acknowledgement events for BRM to consume (used when processing rating requests from BRM, such as during rerating).

See "Creating Required Queues for BRM" for details about the information you will need.

See the discussion in Oracle Communications BRM Installation Guide for information about installing BRM.

See the discussion about Customer Updater in the system architecture chapter of BRM Elastic Charging Engine Concepts for more information about how ECE interacts with the BRM Account Synchronization DM.

(Diameter Gateway) Installing SCTP Package

If you plan to use Diameter Gateway for network integration for online charging, and you plan to use Stream Control Transmission Protocol (SCTP), verify that your operating system has SCTP support. If your operating system does not have SCTP, you must install the SCTP system package for your operating system version.

(Linux) Provisioning Your Environment for ECE Installations

You can provision machines on which you will install ECE by using the ece_provision script. The ece_provision script does the following to prepare machines for an ECE installation:

  • Ensures that you install the recommended runtime environment.

  • Ensures that the main Oracle Linux network configuration changes are applied.

  • Ensures that ECE nodes can communicate with each other after going from a local installation of ECE to a distributed installation.

You can use ece_provision to prepare the network configuration of your local environment (single machine) or distributed environment (multiple machines). The script automates many manual steps, especially when deploying ECE in a distributed environment.

Important:

The ece_provision script is intended as a quick-start solution for provisioning vanilla Oracle Linux installations. For customized Oracle Linux environments, use only the instructions in ece_provision as guidelines for performing configuration management on your existing provisioning framework.

Table 4-2 describes the variables of the ece_provision script configuration file (ece_provision_config.sh).

Table 4-2 Variables of the ece_provision Script Configuration File

Variable Definition

HOSTS

The IP addresses of all machines in your ECE topology including the driver machine.

DRIVER_HOST

The IP address of the driver machine.

SUDO_USER

The user account that is to run the ece_provision script in your environment; this account must be sudo enabled. You must manually create this sudo enabled account on all machines in your topology.

SUDO_USER_HOME

The home directory of the sudo user.

ECE_PROVISION_HOME

The ece_provision root directory. This is the subdirectory of the sudo user home directory in which you unzip the ECE Oracle Universal Installer distribution file (zip file).

ECE_USER

The UNIX account used to run all ECE processes.

The ece_provision script creates the ECE user account on all machines in your topology.

ECE_USER_HOME

The home directory of the ECE user.


To provision your local or distributed environment for ECE installations:

  1. Enable sudo for your user account ($SUDO_USER) on all of the machines required to run ECE ($HOSTS).

    ece_provision requires a sudo enabled account.

  2. On the driver machine ($DRIVER_HOST), log in as the sudo user.

  3. Create a temporary directory (temp_dir).

  4. Go to the My Oracle Support Web site:

    http://support.oracle.com

  5. Sign in with your user name and password.

  6. Click the Patches & Updates tab.

  7. From the list, select Patch Name or Number.

  8. In the text field, enter 28738541 and click Search.

    The Patch Search Results page appears.

  9. Click the patch name.

    The patch details appear.

  10. From the Platform list, select the platform and click Download.

    The File Download dialog box appears.

  11. Download the p28738541_113090_platform.zip software pack to temp_dir, where platform is linux or solaris.

  12. Unzip p28738541_113090_platform.zip and extract the contents to temp_dir:

    The extracted software pack has the following structure:

    ocece/Disk1/install

    ocece/Disk1/stage

  13. In the ocece/Disk1/install directory, extract the ece_provision zip file.

    $ unzip ocece/Disk1/install/ece_provision.zip
    
  14. In the ece_provision root directory ($ECE_PROVISION_HOME), open the ece_provision_config.sh file.

  15. Download the ECE required packages indicated in the file into the ece_provision root directory.

    $ mv groovy-binary-2.4.11.zip jdk-8u141-linux-x64.tar.gz kv-ee-2.1.54.tar.gz ojdbc7.jar p14468425_371_Generic.zip wlthint3client.jar ece_provision
    

    This downloads files for the following software:

    • JDK

    • Groovy

    • Oracle NoSQL

    • Oracle Coherence

    • WebLogic Server client

    • JDBC client

  16. In the ece_provision_config.sh file, edit the following configuration values. You must change the account names and directory locations shown in bold.

    • HOSTS="192.168.1.10 192.168.1.11"

      Under HOSTS, list the ECE driver machine first.

    • DRIVER_HOST="192.168.1.10"

    • SUDO_USER="admin"

    • SUDO_USER_HOME="/home/${SUDO_USER}"

    • ECE_USER="ece"

    • ECE_USER_HOME="/home/${ECE_USER}"

    • ECE_PROVISION_HOME=${SUDO_USER_HOME}ece_install/ece_provision

  17. From the ece_provision root directory, run the ece_provision.sh script:

    $ cd $ECE_PROVISION_HOME; bash ./ece_provision.sh
    

    The script provisions all machines required to run ECE; it creates the ECE user and sets up two-way password-less SSH on all machines.

    After running ece_provision, proceed with the following steps to complete the provisioning of machines in your topology.

  18. Still on the driver machine, switch to the newly created ECE user account ($ECE_USER).

  19. Test to see if you have multicast configured in your network, by doing the following:

    Tip:

    Performing this test is only possible after running ece_provision.
    1. From your UNIX home directory, go to /opt/coherence/bin.

    2. Run the test according to the instructions at "Determining Whether Multicast Is Enabled".

    If you have multicast configured in your network, you will configure ECE for multicast after installing ECE.

You have now provisioned your local or distributed environment for ECE installations. You can now install the ECE software (ECE Server or ECE Complete installation types). See "Installing ECE by Using the GUI Installation" for instructions for installing the ECE software.