Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.


Infodetails
hiddentrue

This article in Russian: Контрольная карта перед запуском

Table of Contents

Product Catalog and Events

...

    • Billing period

    • Charging scheme (postpaid/prepaid/daily)

    • Service providing schemeInitial conditions for service providing

    • Service activation rules

    • Aggregation period

    • Archiving period

      5. Each event has the following checkbox selected: “Cancel repeated events” and “Rebuild events when changing substitutions”Cancel duplicate events” and “.

Basic Contracts and Price Specifications

...

    1. with the correct period

    2. at the correct tax rate

    3. with a draft status

    4. have remarks concerning individual price specification bindings to contracts to be made after migration

    5. no mistakes errors have been detected while changing price specification status to “in force” during test migrations;

...

5. All price specifications have been verified by the Customer employees.

6. Automatic checking Automated check for the last test migration has detected no service subscriptions with prices that failed to be determined.

...

    1. random checks for customers belonging to different categories (individuals/entities, by regions, etc) have been performed without any faults;

    2. the number of customers per ' subscriptions to each group service corresponds to those given by the Customer.

...

6. Random checks of account balances for customers of different categories have been performed by the Customer.

7. Customer statuses are completely accurate.

...

  1. hard is set up as a cluster.

  2. Test authentication and authorization is successfully performed (attention: should be checked on the real production network with real customers!).

  3. All IP addresses for access servers have been entered in the network service settings and in the FreeRADIUS configuration file.

  4. New IP addresses are assigned from the source pool.

  5. Real / fixed IP addresses are assigned by Hydra.

  6. Services are switched on/off on BRAS via event execution.

  7. Accounting packets are being received, traffic is accounted, there is no unaccounted traffic at the test database.

  8. Watchdog is set up for all FreeRADIUS instances. 

...

  1. CDRs are rated properly (as per rating over the previous periods and reconciliation/checking).

  2. Files from PBX are automatically stored in the assigned directory at the server.

  3. CDR importing script runs periodically and performs the import.

Data Migration

  1. Все автоматические проверки, выполняемые в приложении «Миграция», проходят успешно.
  2. Последняя проверка миграции Заказчиком прошла без замечаний.
  3. Последняя проверка миграции сотрудниками Латеры прошла без замечаний.
  4. С момента последней успешной проверки прошло не менее двух рабочих дней, в течение которых в алгоритме выгрузки и миграции ничего не изменялосьAll automatic checks performed in the Migration application are successful.
  5. Latest migration has been verified by the Customer.
  6. Latest migration has been verified by Latera employee.
  7. Latest successful migration has been performed in less than two days; no changes have been made to the unload algorithm and the migration data during this period.

External systems

  1. Invoice export to ERP software is successfully performed by the Customer for the test customers. Importing script executes without faults.

...

  1. Production database dump is automatically collected daily and copied to a safe storage.

  2. The latest production database version with the pre-migration status state is backed up and stored at the Latera server.

  3. Auxiliary server backup of the server и  and production database dump and to  to the Latera server is turned off.

  4. Replication is set up and is properly performed (should be checked at the backup server).

...

  1. Payments acceptance via payment gateways has been successfully tested for faults.

  2. In hcd, Production certificates and logins/passwords are ready for production usagecredentials are used ihpd's configuration.

Business processes

  1. New customer connection process has been tested.

  2. The plan of actions for all frequently arising customer support issues has been clarified (viewing PPP sessions, password changing, etc.).

...

  1. Hardware server configurations correspond with to Commercial Proposal requirements (CPU, RAM, storage). It applies both to the Customer’s Customer owned servers and SaaS installations.

  2. All Hydra's scheduled tasks required for system operation run without faults or warnings.

    1. For all scheduled tasks operating with CDRs and the RADIUS server correct parameters are set up (CDR Forced closing timeout, deleting outdated old CDRs, Deleting old CDRs, synchronizing Processing session RADIUS sessionsaccounting data).

3. Debug logging is disabled for all modules and agents.

4. The system servers have the latest stable versions of the following installed:

    1. Core (database)

    2. Web - apps

    3. Agents.

 

5. All Debian Linux security updates are installed.

 To o install updates, it is necessary to perform the following command:

...

Note: When performing updates, it is obligatory to review the list of updates in detail. There should be no unexpected updates of Hydra modules.

96. Server monitoring has been set up for:

    1. free disk space  

    2. RAM

    3. CPU utilization

    4. other important factorsmetrics

107. Monitoring of the billing system has been set up and tested:

    1. free space in HYDRA tablespace

    2. important system tasks:

      • closing Closing and putting in force charge logs and bringing them to In force status

      • Charge log creation

      • IP traffic rating

      • Check

      • Preparing charge logs for recurrent services

      • Obtaining traffic collector statistics

      • Monitoring customer account balances

      • Forced closing or / deleting outdated CDRs

c. any CDRs rated with errors or unrated.

118. For Service Provider Console and Customer Self-Care Portal:

    1. SSL access is set up

    2. A reminder is set up for updating SSL certificate before its expiration

    3. DNS records are set up and active

129. Default passwords to all services have been changed, including those

...

    • AIS_RPC
    • others (if necessary)

...

Code Block
languagesql
SET LINESIZE 1000;
SET PAGESIZE 1000;
SELECT USERNAME,
       VC_PASSWORD,
       'ALTER USER ' || USERNAME || ' IDENTIFIED BY "' || VC_PASSWORD || '";' AS VC_COMMAND
FROM   (
  SELECT USERNAME,
         SUBSTR(
           TRANSLATE(
             DBMS_RANDOM.STRING('p', 250),
             'A `~!@#$%^&*()-=_+[]\{}|;'':",./<>?',
             'A'),
           1, 24)        AS VC_PASSWORD,
         ACCOUNT_STATUS
  FROM   DBA_USERS
  WHERE  ACCOUNT_STATUS    = 'OPEN'
  OR     USERNAME       LIKE 'AIS\_%' ESCAPE '\')
ORDER BY USERNAME;


10. Servers within Hydra are completely ready for going live (should be checked for each server separately):

...

      • No Hydra services are unnecessarily exposed

      • Access to Service Provider Console is allowed only from internal Customer subnets and Latera servers

      • There is no access to 21902 and 21903 TCP ports which was were previously granted opened during implementation stage for connections from IP address 144.76.78.80.

e. Correct Valid timezone is set up, NTP time synchronization is enabled. 

1411. Customer Technical Datasheet is created and stored in Latera database.

1512. An up-to-date Oracle DST version is used.

1613. The number of customers is the same as per the License :(active_users1 – total amount of customers in Active state, active_users2 – total amount of customers in Active state having at least one unclosed subscription, active_users3 – total amount of customers having at least one payment or charge in last 6 months)


Code Block
languagesql
SET SERVEROUTPUT ON
 
DECLARE
  num_HydraVersion              NUMBER;
  num_MajorVersion              NUMBER;
  num_MinorVersion              NUMBER;
  num_Modification              NUMBER;
  vch_Revision                  VARCHAR2(80);
  dt_InstallationDate           DATE;
 
  num_ActiveUsers1              NUMBER;
  num_ActiveUsers2              NUMBER;
  num_ActiveUsers3              NUMBER;
  num_LicenseUsers              NUMBER;
BEGIN
  MAIN.GET_DB_VERSION(
    num_HydraVersion    => num_HydraVersion,
    num_MajorVersion    => num_MajorVersion,
    num_MinorVersion    => num_MinorVersion,
    num_Modification    => num_Modification,
    vch_Revision        => vch_Revision,
    dt_InstallationDate => dt_InstallationDate);
 
  SELECT COUNT(*)
  INTO   num_ActiveUsers1
  FROM   SI_V_USERS U
  WHERE  U.N_SUBJ_STATE_ID = SYS_CONTEXT('CONST', 'SUBJ_STATE_On')
State_on');
 
  -- For version >= 3.5.2
  IF num_HydraVersion > 3 OR
     num_HydraVersion = 3 AND (num_MajorVersion > 5 OR
     num_MajorVersion = 5 AND num_MinorVersion >= 2) THEN
    EXECUTE IMMEDIATE
      'SELECT COUNT(*)
       FROM   SI_V_USERS U
       WHERE  U.N_SUBJ_STATE_ID = SYS_CONTEXT(''CONST'', ''SUBJ_State_on'')
       AND EXISTS (
         SELECT N_SUBSCRIPTION_ID
         FROM   SI_V_SUBSCRIPTIONS
         WHERE  N_SUBJECT_ID = U.N_SUBJECT_ID
         AND    SYSDATE BETWEEN D_BEGIN AND NVL(D_END, SYSDATE)
         AND    C_FL_CLOSED = ''N'')'
    INTO num_ActiveUsers2;
  ELSE
    EXECUTE IMMEDIATE
      'SELECT COUNT(*)
       FROM   SI_V_USERS U
       WHERE  U.N_SUBJ_STATE_ID = SYS_CONTEXT(''CONST'', ''SUBJ_State_on'')
       AND EXISTS (
         SELECT N_SUBJ_GOOD_ID
         FROM   SI_V_USER_GOODS
         WHERE  N_SUBJECT_ID = U.N_SUBJECT_ID
         AND    SYSDATE BETWEEN D_BEGIN AND NVL(D_END, SYSDATE)
         AND    C_FL_CLOSED = ''N'')'
    INTO num_ActiveUsers2;
  END IF;
 
  WITH
    charge_logs AS (
      SELECT N_DOC_ID
      FROM   SD_V_GOOD_MOVES_T
      WHERE  D_END >= ADD_MONTHS(SYSDATE, -6)
      AND   (N_SUM <> 0 OR N_ADD_SERVS_SUM <> 0)),
    payments AS (
      SELECT N_DOC_ID
      FROM   SD_V_PAYMENTS_C
      WHERE  N_SUM <> 0
      AND    D_OPER >= ADD_MONTHS(SYSDATE, -6)
      AND    N_MOVE_TYPE_ID = SYS_CONTEXT('CONST', 'MM_TYPE_Intake')),
    docs AS (
      SELECT N_DOC_ID
      FROM   payments
      UNION ALL
      SELECT N_DOC_ID
      FROM   charge_logs),
    non_canceled_docs AS (
      SELECT D.N_DOC_ID
      FROM   docs                      D,
             SD_V_DOCUMENTS_SIMPLE     VD
      WHERE  VD.N_DOC_ID = D.N_DOC_ID
      AND    VD.N_DOC_STATE_ID IN (SYS_CONTEXT('CONST', 'DOC_STATE_Actual'), SYS_CONTEXT('CONST', 'DOC_STATE_Executed')))
  SELECT COUNT(DISTINCT S.N_SUBJECT_ID)
  INTO   num_ActiveUsers3
  FROM   non_canceled_docs           D,
         SI_V_DOC_SUBJECTS_SIMPLE    DS,
         SI_V_SUBJECTS               S
  WHERE  DS.N_DOC_ID      = D.N_DOC_ID
  AND    DS.N_DOC_ROLE_ID = SYS_CONTEXT('CONST', 'SUBJ_ROLE_Receiver')
  AND    S.N_SUBJECT_ID   = DS.N_SUBJECT_ID
  AND    S.N_SUBJ_TYPE_ID = SYS_CONTEXT('CONST', 'SUBJ_TYPE_User');
 
  SELECT N_VALUE
  INTO   num_LicenseUsers
  FROM   SS_PARS       P,
         SS_PARVALUES  PV
  WHERE  P.N_PARGROUP_ID = SYS_CONTEXT('CONST', 'PARAM_GRP_System')
  AND    P.VC_CODE       = 'PAR_LicensedUsers'
  AND    P.C_ACTIVE      = 'Y'
  AND    PV.N_PAR_ID     = P.N_PAR_ID
  AND    PV.C_ACTIVE     = 'Y';
 
  DBMS_OUTPUT.PUT_LINE('{'||
                       '"active_users1": "'||num_ActiveUsers1||'", '||
                       '"active_users2": "'||num_ActiveUsers2||'", '||
                       '"active_users3": "'||num_ActiveUsers3||'", '||
                       '"license_users": "'||num_LicenseUsers||'"'||
                       '}');
END;
/

Hydra OMS

  1. The logic of business processes complies with their description and expected behaviorbehaviour.
  2. Integration with external systems runs normally.
  3. Standard Default passwords for Hydra OMS,  ActivitiCamunda, and external systems have been changed.
  4. Implemented business processes have been tested for all possible usage scenarios.