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:
- Ensure the prerequisites.
- 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:
|
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: {}
--- components: usagecollector: javaheapsize: -XX:InitialRAMPercentage=30.0 -XX:MaxRAMPercentage=70.0 db_secret: usagecollector-db jdbcconnectionparams: ?sslmode=require&ApplicationName=usagecollector period: 1800 period_type: SECONDS charges_limit: 5000 charge_dates_validation: true persistence: storageClass: azurefile volumeSize: 10000Mi resources: requests: cpu: 1 memory: 1280Mi limits: cpu: 1 memory: 1280Mi
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.