-
Feature
-
Resolution: Duplicate
-
Undefined
-
None
-
None
Proposed title of this feature request
Generate Billing Reports for RHOSO Usage
What is the nature and description of the request?
We are initiating a project to build showback capability for our OpenStack environment. To achieve a comprehensive view of IaaS consumption, we require the collection of specific metrics from the following services:
- Nova (Compute)
- Cinder (Block Storage)
- Manila (Shared File Systems)
- Neutron (Networking)
- Keystone (Identity)
- Ironic (Bare Metal)
- Octavia (Load Balancing, including OVN load balancers)
- Swift (Object Storage)
- Glance (Image Service)
- Barbican (Key Management)
- Designate (DNS)
- Heat (Orchestration)
Metrics by Service
Nova (Compute)
-
- Instance hours (total hours instances are running)
- vCPU usage (allocated CPU count or CPU time)
- Memory usage (RAM allocated in MB/GB)
- Ephemeral storage usage (local disk usage)
- Network I/O (optional, instance-level traffic, if available)
- Disk I/O (optional, read/write IOPS or throughput)
Cinder (Block Storage)
-
- Volume hours (allocated volume lifespan in hours)
- Volume size (allocated GB)
- Snapshot hours (optional, snapshot lifespan in hours)
- Snapshot size (allocated GB for snapshots)
- Volume I/O metrics (optional, read/write IOPS, throughput)
Manila (Shared File Systems)
-
- Share hours (allocated share lifespan in hours)
- Share size (allocated GB)
- Snapshot hours (optional, snapshot lifespan)
- Snapshot size (GB for snapshots)
- Share I/O stats (optional, if available)
Neutron (Networking)
-
- Floating IP hours (number of hours floating IPs are assigned)
- Network port usage (count of ports per tenant, possibly in hours)
- Ingress/Egress bandwidth (volume of data in/out)
- Router usage (optional, if using L3 routers)
- Subnet/Network counts (optional)
Keystone (Identity)
-
- Token requests/validations (optional)
- API calls (optional)
- Projects/Users count (optional for reporting or auditing)
Ironic (Bare Metal)
-
- Bare metal node hours (physical node allocation hours)
- CPU/Memory resources (total CPU cores, memory in GB)
- Node state changes (provisioning states, cleaning, etc.)
- Power usage (optional, if integrated with PDUs)
Octavia (Load Balancing)
-
- Load balancer hours (amphora or OVN LB usage)
- Listener hours (each load balancer can have multiple listeners)
- Pool hours (hours each pool is active)
- VIP usage (virtual IP addresses, similar to floating IPs)
- Traffic/connection metrics (optional: request counts, throughput, active connections)
- OVN Load Balancers
- For deployments leveraging OVN as a driver, please also track:
- OVN LB creation/tear-down events
- OVN LB VIP or router port usage (as applicable)
- Traffic metrics (if exposed via OVN)
- For deployments leveraging OVN as a driver, please also track:
Swift (Object Storage)
-
- Object storage usage (GB stored × hours)
- Object count (objects per container)
- Container count (containers per tenant)
- API operations (optional, GET/PUT/DELETE requests)
- Data transfer (egress) (optional, total downloaded volume)
Glance (Image Service)
-
- Image storage usage (GB stored × hours)
- Image count (number of active images per tenant)
- Image create/delete events (optional, track frequency)
- Image download operations (optional, track how often images are pulled)
Barbican (Key Management)
-
- Secrets count (number of secrets stored per tenant)
- Secret create/delete events (optional, track how many secrets are generated or revoked)
- Container usage (if using Barbican containers for key groups)
- API calls (optional, total requests for storing/retrieving secrets)
Designate (DNS)
-
- DNS zone hours (each zone allocated × hours)
- Record count (number of DNS records per zone, per tenant)
- DNS queries (optional, query volume if metering is enabled)
- Zone create/delete events (track frequency of new zones or removed zones)
Heat (Orchestration)
-
- Stack hours (how long each stack is active)
- Stack count (total active stacks per tenant)
- Stack events (creation, updates, deletions)
- Resource count (optional, number of resources per stack)
- Template usage (optional, if you need to track template versions or deployments)
- API calls (optional, total calls for stack actions)
Why does the customer need this? (List the business requirements)
Transparent Cost Recovery
-
- As a cloud provider, the organization operates at large scale, offering on-demand compute, storage, and network resources to multiple tenants. Showback provides a clear, itemized breakdown of resource usage per tenant, ensuring each customer understands what they are consuming and the associated costs.
- By attributing real-time or monthly costs to usage (e.g., compute hours, storage GB-month, bandwidth), the cloud provider can recoup operational expenses without surprising customers with opaque billing.
- Showback also encourages optimized resource usage. When tenants see how their consumption affects costs, they can make informed decisions (e.g., rightsizing virtual machines or archiving stale data).
Capacity Planning and Forecasting
-
- With showback, resource usage is continuously measured and reported, giving operators deep insights into consumption trends across compute, storage, and network services.
- Accurate, usage-based data enables the cloud provider to forecast resource demand, identifying when additional hardware or infrastructure investments are needed to maintain performance and availability.
- Proactive capacity planning ensures the cloud provider can scale its environment smoothly, avoiding sudden shortages or performance bottlenecks that could impact customer satisfaction.
Operational Efficiency and Accountability
-
- Showback data reveals where resource hotspots or inefficiencies exist—such as underutilized server nodes, over-provisioned volumes, or network segments with heavy traffic.
- Armed with these metrics, the cloud provider can fine-tune service tiers, automate resource rebalancing, or introduce new offerings that better match consumption patterns.
- Showback introduces accountability at every level (tenant, service, or project), helping both providers and customers justify costs and plan budgets effectively.
Customer Trust and Competitive Differentiation
-
- Offering transparent consumption reports increases customer trust. Tenants value clarity on how they are being charged or how their resource usage impacts their budget.
- In a competitive market, having robust showback capabilities can differentiate the cloud provider by demonstrating cost visibility, control, and capacity scaling best practices.
List any affected packages or components.
RHOSO Telemetry Operator, OpenShift Insights
Related projects: perses
Perses integration with Horizon and authentication https://perses.dev/perses/docs/auth/authentication/
- is blocked by
-
RHOSSTRAT-625 Implement multi-tenancy telemetry control
-
- Refinement
-
- is related to
-
COST-5067 Virtual Machines: Cost Management for OpenStack
-
- Backlog
-