Skip to content

Containers

Containers shows what each Amazon EKS cluster really costs. Not just the control plane fee, but the nodes, the volumes, the load balancers and the NAT traffic that the cluster drags along with it. It also tells you what it could not tie to a cluster, and why, so the number you take to a review is one you can defend.

Getting there

Open Overview, scroll to Service groups and pick Open cluster view on the Containers card. The link keeps your current scope. MSP partners get the same page inside each customer workspace.

The page uses the same scope bar as the rest of the product: accounts, dates in UTC and cost basis. The scope lives in the address bar, so a link you share opens the same view.

The summary band

  • Attributed cluster cost for the window, with the change against the same number of days just before.
  • Clusters, and how many of them are only known from billing lines (for example a payer-only scope that sees member account spend but not its inventory).
  • Nodes observed in the window, split into on-demand and spot, with the node cost.
  • Orphaned volumes: unattached EBS volumes that once belonged to a cluster, and what they cost in the window.
  • Unattributed Kubernetes spend: lines that look like Kubernetes spend but could not be tied to exactly one cluster.
  • Extended support: how many clusters run a Kubernetes version past standard support, and the control plane spend that carries the extended support fee.

The cluster table

One row per cluster, ranked by spend. You get the account, region, Kubernetes version with a support chip, node count and spot share, cost in the window, the prior window, the change, a daily sparkline and the attribution coverage.

The support chip reads the EKS release calendar. Green is standard support, amber is extended support, red is unsupported. Grey Calendar unknown means the version is newer than the calendar SpendShrink ships with, or the version is not known. Hover the chip to see the dates and the calendar date.

A cluster marked Seen in billing only has cost lines but no inventory row in this scope.

Select a row to open the cluster drawer:

  • Components: a stacked daily chart and the totals for control plane, nodes, storage, load balancers, VPC networking, Fargate and the registry. Credits and refunds are shown on their own line, never netted in.
  • Node groups: capacity type, instance types, min, desired and max size, and the instances observed.
  • Load balancers, with how each one was tied to the cluster (a cluster tag, or because its targets are cluster nodes).
  • Orphaned volumes, with size, type, age and cost.
  • Attribution: how many Kubernetes lines were attributed and how many were not, and which member kinds the collector could not read. When coverage is below 100% you get a nudge to activate the aws:eks:cluster-name cost allocation tag in the paying account, which lets AWS stamp each line with its cluster.

Every table has a CSV export, and Open in Explorer opens the EKS and EC2 rows behind the numbers with the same scope.

Unattributed spend

Below the table is everything SpendShrink saw as Kubernetes spend but could not pin on one cluster, grouped by reason. The common ones:

  • VPC shared by several clusters: a NAT gateway in a VPC that more than one cluster uses. SpendShrink does not guess a split.
  • No cluster member matched: the line has a Kubernetes tag, but its resource was not seen as part of any cluster.
  • Registry spend without a cluster tag: ECR spend with no tag naming a cluster.
  • Membership not collected or unavailable that day: the collector has not run for the account yet, or could not read that kind of resource (often a missing IAM permission).

When there is nothing to show

The page never shows an empty table as if all is well. You will see one of these instead:

  • EKS inventory not collected yet: the EKS collector has not run for these accounts.
  • No EKS clusters found in these accounts: the collector ran and listed none.
  • The EKS inventory collector failed: every latest run failed. The page lists what could not be read; Data Health names the missing permission.

Waiting, partial and failing billing data show the same evidence strip and banners as Spend Overview.