Deploying Usage Collector

Installation Prerequisites

  • The Component Cluster is deployed and configured.
  • If you used Vendor-rated Data Manager (VRDM), you must perform migration before installing Usage Collector. VRDM is still supported in 21.0, however, its functionality is now provided by Rating Engine, Usage Collector, and Rating Orchestrator combined. Together, these components provide more capabilities than VRDM, such as the ability to view a detailed usage report log in UX1, download the usage file, and to upload QT usage schema. All other new features will also be delivered with those three components.

    Warning: If migration is skipped or performed incorrectly, the usage processing will break.

  • A K8s storage class is created to store source usage report files. The storage class must support ReadWriteMany access mode.

    Note: A file storage is created automatically when deploying the Usage Collector application. For Azure deployments, please follow the Azure File Storage class creation instructions.

Kubernetes Resource Requirements

The minimum Kubernetes resources required for the microservice deployment, including on-premise Kubernetes cluster deployment, are:

Container CPU cores RAM in GiB
usagecollector 1.0 1.25

Persistent Storage Requirements

10.0 GiB

Firewall Requirements

The following ports must be open:

From To Protocol Port Purpose
oss-node pod

Usage Collector service

TCP 8081 For Usage Collector service
Usage Collector pod OSS service TCP 6308 For Usage Collector service

Usage Collector Database

TCP 5432 For connection to the PostgreSQL database

Deploying Usage Collector

To deploy Usage Collector:

  1. Ensure the prerequisites.
  2. Follow the common CloudBlue Commerce component deployment procedure using the Usage Collector deployment parameters in the config.yaml.

Note: The database for the component, the database structure, and the secret with database access settings are automatically created during the component's deployment.

Upgrading Usage Collector

To update Usage Collector, follow the common CloudBlue Commerce component update procedure using the Usage Collector deployment parameters below in the config.yaml.

Usage Collector Deployment Parameters

When installing or updating Usage Collector using the common CloudBlue Commerce component deployment procedure, use the parameters below in config.yaml.

Component Name

usagecollector

Common Parameters

Parameter Default value
components.usagecollector.javaheapsize -XX:InitialRAMPercentage=30.0 -XX:MaxRAMPercentage=70.0
components.usagecollector.jdbcconnectionparams ?sslmode=require&ApplicationName=usagecollector
components.usagecollector.db_secret usagecollector-db
components.usagecollector.resources.requests.cpu 1
components.usagecollector.resources.requests.memory 1280Mi
components.usagecollector.resources.limits.cpu 1
components.usagecollector.resources.limits.memory 1280Mi

Specific Parameters

Parameter Default value Description
components.usagecollector.bss.db_secret bss-db A Kubernetes secret with credentials to access BSS database.
components.usagecollector.period 1800 The interval at which the periodic task 'PAYG Rating Engine periodic rate task' starts.
components.usagecollector.period_type SECONDS
components.usagecollector.charges_limit 5000 Maximum number of charges in one ChargesPacket (see Charge Import API).
components.usagecollector.charge_dates_validation true

This setting enables or disables the validation of the start and end datetimes of the usage data collection period.

Note: Shifting dates to the future may be necessary for testing purposes.

Values:

  • true: if the start and end date-times of the usage data collection period of a usage record are future date-times, data validation will fail and the usage report will not be processed.

  • false (used for testing purposes): the start and end date-times of the usage data collection period are not validated for usage records, and usage data reports are processed even if the usage data collection period is not in the past.

components.usagecollector.persistence.storageClass azurefile A K8s storage class that will be used to create a volume for storing usage report source files.
components.usagecollector.persistence.volumeSize 10000Mi The size of the volume for storing usage report source files.

Sample config.yaml

Default config.yaml:

---
components:
  usagecollector: {}

How to Obtain the Current config.yaml from CloudBlue Commerce

When updating CloudBlue Commerce components, you may need to obtain the current config.yaml.

To obtain the current config.yaml from CloudBlue Commerce, on a machine with kubectl, execute the following request:

kubectl -n NAMESPACE get secret config-yaml-backup -o "jsonpath={.data['config\.yaml']}" | base64 -d

Note: NAMESPACE is the namespace of your CloudBlue Commerce installation.
To find it, execute the following command:
kubectl describe svc oss-proxy | grep namespace

How to View the Deployment Parameters with Default Values for the Component Version You Want to Install (values.yaml)

To view the deployment parameters with default values (values.yaml) for the component version you want to install, run the following command from the machine with kubectl:

helm show values <component_name_for_config.yaml> --version <component_version> --username <username_for_deployment_repository> --password <username_for_deployment_repository> --repo <a_link_to_repository_with_CloudBlue Commerce_components>

For username and password to the deployment repository, please contact your Technical Account Manager.

Related Topics

CloudBlue, an Ingram Micro business, uses cookies to improve the usability of our site. By continuing to use this site and/or logging in you are accepting the use of these cookies. For more information, visit our Privacy Policy.