Upgrade to Kubecost Enterprise for 40% AWS cost savings without performance loss
Are your AWS cloud costs spiraling while your Kubernetes environments grow more complex? Many organizations find themselves in this position, using basic Kubecost features but missing out on the enterprise-grade capabilities that could dramatically reduce their AWS spending. Upgrading to Kubecost Enterprise provides the advanced tools needed to identify and automatically implement cost-saving opportunities across your AWS infrastructure.
Why upgrade to Kubecost Enterprise on AWS?
Kubecost Enterprise unlocks powerful capabilities for AWS users that the standard version simply doesn’t offer:
- Comprehensive AWS service coverage - Monitor and optimize costs beyond just your Kubernetes clusters, including RDS databases, S3 buckets, and other AWS services
- Advanced cost allocation - Map all AWS resources to business units, teams, or applications for accurate chargeback and showback
- Multi-cluster federation - Centralize cost management across all your AWS environments in different regions and accounts
- Automated optimization - Identify and implement savings opportunities with minimal engineering effort through actionable recommendations
When properly configured, these features can help reduce your AWS cloud costs by up to 40% without compromising performance – similar to the savings hykell achieves through their automated optimization platform.
Prerequisites for migration
Before beginning your upgrade to Kubecost Enterprise, ensure you have:
- Administrator access to your AWS account(s)
- Kubernetes cluster admin permissions
- Helm installed and configured
- AWS CLI configured with appropriate permissions
- AWS Cost and Usage Reports (CUR) enabled
Step-by-step migration process
1. Configure AWS Cost and Usage Reports (CUR)
For complete visibility into your AWS costs, proper CUR configuration is essential. This data forms the foundation for Kubecost Enterprise’s advanced cost allocation features:
# Deploy the CloudFormation stack in your management/payer accountaws cloudformation deploy --template-file kubecost-cur-setup.yaml --stack-name kubecost-cur \ --parameter-overrides S3CURBucket=your-bucket KubecostClusterID=your-cluster-id
According to the AWS Cloud Integration Guide, you’ll need to properly define parameters like S3CURBucket
to ensure accurate cost allocation. This S3 bucket will store your detailed billing data, providing Kubecost Enterprise with the granular information needed for precise cost allocation.
2. Set up AWS IAM roles and permissions
Create appropriate IAM roles with the least privilege principle to ensure secure access while maintaining functionality:
# Create IAM policy for Kubecostaws iam create-policy --policy-name KubecostEnterprisePolicy --policy-document file://kubecost-policy.json
# Create role and attach policyaws iam create-role --role-name KubecostEnterpriseRole --assume-role-policy-document file://kubecost-trust.jsonaws iam attach-role-policy --role-name KubecostEnterpriseRole --policy-arn arn:aws:iam::YOUR_ACCOUNT_ID:policy/KubecostEnterprisePolicy
This approach follows security best practices by avoiding direct credential exposure, instead leveraging AWS’s robust IAM role system to provide Kubecost with the access it needs.
3. Configure AWS Athena for CUR data
Athena configuration enables detailed cost analysis across all AWS services by allowing SQL-like queries against your cost data:
{ "athenaBucketName": "s3://your-bucket", "athenaRegion": "us-east-1", "athenaDatabase": "your_database", "athenaTable": "your_table", "projectID": "YOUR_AWS_ACCOUNT_ID"}
For multi-account environments, complete all CUR/Athena setup in the payer account as recommended in the AWS Out-of-Cluster Cost Allocation documentation. This ensures that you have a single source of truth for all cost data across your AWS organization.
4. Upgrade Kubecost using Helm
Use Helm to deploy or upgrade your Kubecost installation to the Enterprise version:
# Add/update the Kubecost Helm repositoryhelm repo add kubecost https://kubecost.github.io/cost-analyzer/helm repo update
# Create secret for AWS credentialskubectl create secret generic kubecost-aws-secret \ --from-file=service-key.json \ --namespace kubecost
# Install/upgrade Kubecost Enterprisehelm upgrade --install kubecost kubecost/cost-analyzer \ --namespace kubecost \ --set kubecostToken="YOUR_ENTERPRISE_TOKEN" \ --set serviceKeySecretName="kubecost-aws-secret" \ -f kubecost-enterprise-values.yaml
This Helm upgrade process preserves your existing configurations while adding the Enterprise features. The secret management approach keeps your AWS credentials secure within your Kubernetes environment.
5. Configure out-of-cluster cost allocation
To maximize your AWS cost visibility, implement proper mapping between AWS resources and Kubernetes entities in your Helm values file:
kubecostProductConfigs: cloudIntegration: enabled: true awsServiceKeyName: service-key.json athenaBucketName: "s3://your-bucket" athenaRegion: "us-east-1" athenaDatabase: "your_database" athenaTable: "your_table" projectID: "YOUR_AWS_ACCOUNT_ID"
This configuration connects your Kubecost installation to your AWS billing data, enabling the visibility into non-Kubernetes resources that makes Enterprise so powerful. Without this step, you’d only see costs directly associated with your Kubernetes clusters.
Best practices for AWS cost optimization with Kubecost Enterprise
1. Reserved Instances and Savings Plans optimization
Kubecost Enterprise provides reconciliation between billing data and cluster assets to maximize discounts. According to the AWS Out-of-Cluster Cost Allocation documentation, this can yield up to 40% savings on compute resources through accurate allocation.
For example, Kubecost can identify which workloads are stable and predictable enough to be covered by Reserved Instances or Savings Plans, and can even suggest the optimal term length based on your usage patterns. This alone can often justify the upgrade to Enterprise.
2. Multi-cluster federation for centralized management
For organizations with multiple AWS accounts or regions, implement cluster federation to gain a unified view of all costs:
kubecostProductConfigs: federatedETL: enabled: true remoteWriteServiceUrl: "http://federation-api:9003/federate" federationApiKey: "your-federation-key"
This approach reduces redundant infrastructure costs through centralized management as noted in the Kubecost Enterprise Deployment Guide. Federation allows you to apply cost-saving strategies across your entire infrastructure, rather than optimizing each cluster in isolation.
3. Integrate with AWS native tools
Enhance your cost optimization strategy by integrating with AWS-native services for improved performance and scalability:
prometheus: server: remoteWrite: - url: "https://aps-workspaces.us-east-1.amazonaws.com/workspaces/YOUR_WORKSPACE_ID/api/v1/remote_write" sigv4: region: us-east-1 queue_config: max_samples_per_send: 1000 max_shards: 200
The Amazon EKS Kubecost Bundle documentation recommends using AWS Managed Service for Prometheus for scalable monitoring. This integration allows Kubecost to handle large environments without becoming a performance bottleneck itself.
Real-world example: E-commerce company saves 37% on AWS costs
A large e-commerce company migrated from standard Kubecost to Kubecost Enterprise and implemented the following optimizations:
- Reserved Instance optimization: Properly allocated RIs to appropriate workloads based on Kubecost’s recommendations, saving 22% on their EC2 costs
- EBS volume right-sizing: Identified and resized over-provisioned volumes, reducing storage costs by 31%
- Namespace-based cost allocation: Implemented chargeback model that encouraged teams to optimize their resources, creating a culture of cost-consciousness
The result? A 37% reduction in monthly AWS spend without any performance degradation. The team was able to identify workloads that were significantly overprovisioned, instances that were idle during certain hours, and storage that was allocated but unused.
Similar results can be achieved through hykell’s automated cloud cost optimization services, which focus specifically on AWS environments and operate on autopilot to continuously identify and implement savings opportunities.
Common challenges and solutions
Challenge | Solution |
---|---|
Incomplete cost data | Ensure proper CUR configuration and IAM permissions; verify S3 bucket policies allow Athena access |
Performance concerns | Use AWS Managed Service for Prometheus for scalable monitoring; implement proper retention policies |
Multi-account complexity | Implement cross-account IAM roles instead of static credentials; configure organization-wide CUR in the payer account |
Cost allocation accuracy | Map OOC resources (RDS, S3) to Kubernetes namespaces/labels via Athena CUR; use consistent tagging strategies |
Maximizing your AWS savings with Kubecost Enterprise
Once you’ve completed your upgrade to Kubecost Enterprise, take these steps to maximize your AWS cost savings:
- Regularly review the Savings recommendations dashboard to identify new optimization opportunities
- Implement automated alerting for budget thresholds to catch cost anomalies before they become problems
- Use the allocation explorer to identify cost outliers by team, application, or namespace
- Leverage the multi-cloud dashboard to compare costs across environments and standardize on the most cost-effective configurations
With Kubecost Enterprise properly configured for your AWS environment, you’ll gain unprecedented visibility into your cloud spending and actionable insights to reduce costs by up to 40% - all while maintaining optimal performance for your applications.
Ready to take your AWS cost optimization to the next level? The right tooling makes all the difference between basic cloud cost reporting and true automated savings at scale.