github opscart/opscart-k8s-watcher v1.12.0
OpsCart v1.12.0 - Cost Intelligence uprades with provider-API-derived pricing

3 hours ago

OpsCart v1.12.0

OpsCart v1.12.0 delivers a major upgrade to Cost Intelligence, with provider-API-derived pricing, canonical workload allocation, explicit idle-cost visibility, improved pricing provenance, and a redesigned cost experience focused on actionable operational evidence.

This release also continues the broader effort to reduce Kubernetes API pressure by reusing scan data across analyzers and eliminating redundant reads from the Cost path.

Highlights

  • Provider API pricing as the source of truth

    • Azure pricing now comes from the Azure Retail Prices API.
    • AWS pricing continues to use the AWS Price List Query API.
    • Hardcoded monetary fallback pricing is no longer used for production cost calculations.
    • Unsupported or unresolved pricing remains unavailable instead of being represented as $0.
  • Canonical cost allocation

    • Node and node-pool compute cost is allocated consistently to Pods and Namespaces using Kubernetes resource requests.
    • Allocation explicitly reconciles:
      • Allocated compute cost
      • Idle compute cost
      • Unallocated compute cost
    • Overcommit is normalized within each resource dimension so allocation does not exceed resolved pool cost.
    • Excluded and unresolved Pods are tracked explicitly.
  • Kubernetes-aware request calculation

    • Effective Pod requests include:
      • application containers
      • init containers
      • restartable init containers
      • Pod overhead
    • Allocation uses requests, not limits.
    • Terminal, deleting, unbound, and unresolved Pods are handled explicitly rather than silently included.
  • Pricing provenance and capability disclosure

    • Cost results expose pricing source and provenance.
    • Azure and AWS capability disclosure reflects only what the provider integration actually supports.
    • Current displayed costs are clearly positioned as estimated public/list pricing, not invoice or billing data.
  • Redesigned Cost Intelligence UI

    • New estimated-cost header and pricing source context.
    • Clear cost composition for Allocated, Idle, and Unallocated compute.
    • Improved visual hierarchy and semantic coloring.
    • Node-pool cost share and namespace allocation are easier to scan.
    • Namespace allocation filtering added without additional Kubernetes API calls.
    • Negative-zero display issues such as $-0 are normalized at the allocation layer.
  • Optimization Signals

    • Cost Intelligence now surfaces evidence-based signals such as:
      • material request-based idle capacity
      • node pools dominating compute spend
      • CPU / memory request imbalance
      • scenarios requiring deeper simulation
    • Recommendations remain intentionally non-actionable until schedulability is validated.

Correctness and Safety

This release preserves several important boundaries:

  • No hardcoded provider-derived monetary pricing in production cost calculations.
  • No silent fallback from unresolved pricing to $0.
  • No Kubernetes mutation, eviction, autoscaling, or remediation actions.
  • No additional Kubernetes API fanout from normal Cost page rendering.
  • Cost page data continues to use the cached scan result.
  • Pricing and allocation failures remain visible through explicit coverage and unresolved-state reporting.

API and Performance Improvements

The Cost path now reuses existing scan snapshots instead of triggering separate live workload-cost queries.

This continues the broader OpsCart optimization work that reduced repeated Kubernetes API reads across analyzers and established shared scan data as the preferred input for new features.

What’s Next

The next major Cost Intelligence milestone is the Node Optimization Simulator.

The first version will remain read-only and will evaluate whether current workloads can fit safely on alternative node counts or shapes using:

  • CPU and memory requests
  • Kubernetes scheduling constraints
  • provider-API-derived pricing
  • explicit headroom and feasibility checks

Future work will also expand shared Kubernetes state management, historical trends, workload rightsizing, and deeper multi-cluster operational intelligence.

Upgrade

Container image:

ghcr.io/opscart/opscart-dashboard:v1.12.0
Helm users should set:

image:
  tag: v1.12.0

Don't miss a new opscart-k8s-watcher release

NewReleases is sending notifications on new releases.