Parent Issue
Tracked by datum-cloud/enhancements#682 (Launch Workload Compute Service — "UFOs")
Summary
Before the compute service can launch, the pricing model needs to be decided: which dimensions drive billing, what the rates are, what is included per tier, and what the default quota values are. This decision gates several other workstreams — compute#90 (quota integration) has open questions on default quota values that require GTM input, and the metering implementation in unikraft-provider#5 needs to know which dimensions matter.
Goals
- Decide which billing dimensions to use at launch (e.g. vCPU-seconds, instance-seconds, memory-GiB-seconds, or some combination)
- Define rates for each billable dimension
- Define what is included per tier (free tier, starter, growth, enterprise)
- Provide default quota values per tier to unblock compute#90 implementation
- Confirm which dimensions are deferred to a later phase (e.g. GPU, egress)
Non-Goals
- Implementing the billing or metering pipeline (tracked in unikraft-provider#5 and enhancements#681)
- Quota enforcement implementation (tracked in compute#90)
Open Questions
- Do we bill by allocated resources (reserved vCPUs/memory) or consumed resources (actual CPU-seconds)?
- Is there a minimum billing unit (e.g. per-minute rounding) or true second-granularity?
- How do we handle instances that fail to start — is there any charge?
- What is the free tier allowance, if any?
Parent Issue
Tracked by datum-cloud/enhancements#682 (Launch Workload Compute Service — "UFOs")
Summary
Before the compute service can launch, the pricing model needs to be decided: which dimensions drive billing, what the rates are, what is included per tier, and what the default quota values are. This decision gates several other workstreams — compute#90 (quota integration) has open questions on default quota values that require GTM input, and the metering implementation in unikraft-provider#5 needs to know which dimensions matter.
Goals
Non-Goals
Open Questions