Provider Connectors
Clusters without the agent
See cost per namespace for an Amazon EKS or Google Kubernetes Engine cluster that does not run the LevelFour agent, from the cost allocation data in your bill.
AWS and Google Cloud can split a cluster's node cost by the pods that ran on each node, inside the bill itself. When your bill carries that split, LevelFour shows the cluster on the Kubernetes page with no agent installed.
Such a cluster shows the status No agent. It has cost per namespace, and per workload where the bill names one, with each node's unrequested capacity as idle. Usage, efficiency, reliability, recommendations and grouping by a virtual tag come from the agent, so the cluster has none of them.
To get them later, install the agent under the same cluster name. The agent takes the cluster over: the same cluster, with everything the agent reports from then on.
Amazon EKS
LevelFour reads EKS split cost allocation data from your Cost and Usage Report.
Turn on split cost allocation data
In the AWS Billing and Cost Management console, open Cost Management preferences, then Split cost allocation data, and turn it on for Amazon EKS. Only the management (payer) account, or a standalone account, can turn it on.
Choose the Resource requests method. It splits each node's cost by what each pod requested, so a pod without CPU or memory requests gets no share. AWS describes both steps in Enabling split cost allocation data.
Include it in your CUR export
The CUR 2.0 export LevelFour reads has to include split cost allocation data. The export the detailed cost data stack creates includes it, so a stack created from now on needs nothing more.
AWS fixes an export's table configuration when the export is created (CUR 2.0 table dictionary), so an export created by an earlier version of the stack can't add it. Ask LevelFour to recreate it with you; your cost history stays in LevelFour.
Wait for the data
AWS adds the split to the report within 24 hours of turning it on (Enabling split cost allocation data). The cluster appears on the Kubernetes page after the next report delivery that carries it.
Google Kubernetes Engine
LevelFour reads GKE cost allocation from the Cloud Billing detailed export.
Turn on cost allocation for the cluster
In the Google Cloud console, open the cluster, and under Features turn on Cost Allocation, as GKE cost allocation describes. Or run:
gcloud container clusters update CLUSTER_NAME --enable-cost-allocationConnect the detailed export
GKE cost allocation exists only in the detailed export (GKE cost allocation). Connect it as Billing export describes, for the project the cluster runs in.
Wait for the data
Google says the allocation can take up to three days to appear, and it covers usage from the day you turned it on, with no backfill (GKE cost allocation).
GKE splits cost by what pods request (GKE cost allocation). Capacity no pod requested shows as the node's idle cost.
What you see
| With the agent | Without the agent | |
|---|---|---|
| Cost per namespace | Yes | Yes |
| Cost per workload | Yes | Where the bill names the workload |
| Idle cost | Yes | Yes |
| Usage, efficiency and reliability | Yes | No |
| Recommendations | Yes | No |