DevOps Engineer
Jatin is an AWS-certified SysOps Administrator Associate with extensive expertise in AWS cloud services and a broad spectrum of DevOps tools.
In this blog, we will address how organizations can migrate workloads from legacy x86- based Amazon EC2 and Amazon EKS environments to AWS Graviton2 ARM-based instances. We'll address both the business case—exploring cost savings, performance gains, and sustainability advantages—and the technical case, with step-by-step instructions, configuration snippets, and best practices. Whether you are a decision-maker who wants to maximize cloud expenditures or an engineering professional who wants to plan a hands-on migration, this blog will offer a complete roadmap to ensure your transition to Amazon Graviton2 is seamless, efficient, and future-proof.
Cloud adoption is no longer merely a matter of "lifting and shifting" workloads. Enterprises today must optimize for performance, cost savings, and sustainability—without compromising agility. AWS Graviton2, based on ARM processors, provides a special opportunity to achieve all three.
In this blog, we’ll explore how organizations can migrate workloads from x86-based Amazon EC2 and Amazon EKS (e.g., c5.xlarge, t3.xlarge) to Amazon Graviton2-based instances (c6g.xlarge, t4g.xlarge)—with real-world best practices for both technical and business stakeholders.
• Cost Savings: AWS benchmarks show up to 40% better price-performance compared to equivalent x86 instances.
• Sustainability: ARM-based Graviton2 instances are more energy-efficient per transaction, helping reduce carbon footprint directly.
• Scalability: The increased core density lets you accomplish more with fewer instances, reducing your infrastructure footprint.
• Future-Proofing: With increasing ARM adoption in cloud, mobile, IoT, and edge, being ARM-ready future-proofs long-term competitiveness.
• Comprehensive Ecosystem Support: From Spark to Kubernetes to serverless workloads, ARM64 is first-class in AWS.
• Tooling Support: Docker Buildx, Terraform, Helm, Jenkins, GitHub Actions, and CI/CD pipelines all support ARM builds.
• Versatility: Run workloads in multi-architecture modes (ARM + x86) during transition for zero downtime.
• Performance Tuning: ARM64 offers efficiency improvements in compute-intensive workloads (e.g., Spark joins, ML inference).
In the following, we detail the migration journey workload by workload with business impact and technical execution side by side.
Spark jobs tend to be large compute expenses. Moving them to Graviton2 can save as much as 30% of costs while decreasing data pipeline job completion times.
a. Verify Spark runtime and third-party JAR compatibility with ARM64.
b. Utilize ARM64-supported OpenJDK 8/11.
c. Revise provisioning scripts:
resource "aws_instance" "spark {
instance_type = "c6g.xlarge"
ami = "<Graviton2-AMI-ID>"
}
d. Run benchmarks comparing job throughput, CPU utilization, and $/job.
e. Use canary deployments on small datasets before full rollout.
Microservices clusters can realize ~30–40% savings on compute costs. ARM further enhances per-node density, saving scaling overhead.
a. Verify Amazon EKS version ≥ 1.20 supports ARM64.
b. Launch ARM64-optimized AMIs:
NodeGroup:
Type:
AWS::EKS::Nodegroup
Properties:
InstanceTypes:
- t4g.xlarge
AmiType: AL2_ARM_64
c. Check Helm charts for architecture-specific labels.
d. Utilize nodeSelector for ARM64 scheduling:
nodeSelector:
kubernetes.io/arch:
arm64
e. Verify operators and sidecars for ARM support; segregate incompatible workloads to x86 if necessary.
Execution of APIs, content delivery, or backend applications on Amazon Graviton2 lowers operational costs for always-on workloads.
Technical Steps:
a. Rebuild containers with ARM64 base images:
FROM arm64v8/nginx: latest
b.Update IaC templates (t4g or c6g).
c. Perform integration testing across runtimes (Node.js, Python, Ruby, Java).
Pay-as-you-go workloads on Amazon ECS and Fargate realize instant cost savings if ARM is embraced.
Technical Steps:
a. Create multi-arch images with Buildx:
docker buildx build --platform linux/arm64,linux/amd64 -t myapp:latest .
b. Update ECS task definitions to include ARM64 platform.
c. Staging test before production deployment.
CI/CD runners tend to create invisible infrastructure costs as a result of continuous builds. Migrating runners brings future cost savings and ARM-native mobile/IoT builds.
Technical Steps:
a. Jenkins/GitHub Actions runners to t4g.large.
b. Cross-check build tools and dependencies ARM64.
c. Benchmark runtime improvements and optimize caching.
Self-serviced databases on Graviton2 can reduce the cost of hosting while maintaining performance—essential for data-driven workloads.
Technical Steps:
a. Verify PostgreSQL, MySQL, and Redis binaries on ARM64.
b. Backup and restore databases to fresh instances.
c. Optimize configs for latency, IOPS, and throughput.
d. Monitor using AWS CloudWatch for regression detection.
Lambda functions that moved to ARM64 can observe as much as 34% reduced execution costs with negligible code modification.
Technical Steps:
a. Change Amazon Lambda architecture to ARM64 in the console or IaC.
b. Perform full regression test coverage.
c. Observe cold starts and pricing savings through Amazon CloudWatch.
A SaaS business was hosting its analytics pipeline on x86-based c5.xlarge Amazon EC2 instances and its Kubernetes-based microservices on t3.xlarge EKS nodes. Cloud expenses were increasing with growing workloads.
Migration Strategy:
a. Relocated Spark jobs from c5.xlarge to c6g.xlarge.
• Re-created Helm charts and container images to enable ARM64 for EKS workloads. • Implemented multi-arch Docker images for compatibility.
Results (3-month benchmark):
Takeaway:
By moving only two large workloads (analytics and microservices), the company lowered monthly compute expenses by ~35%, accelerated data processing pipelines, and made a measurable step toward sustainability objectives.
a. Benchmark before scaling—every workload acts differently.
b. Adopt iterative migration—use blue-green or rolling deployments.
c. Monitor costs—track savings with AWS Cost Explorer.
d. Plan rollbacks—keep x86 instances ready for fallbacks.
Moving to AWS Graviton2 is so much more than a cost-saving move—it's a strategic shift in cloud computing. For business executives, it provides real ROI through lower infrastructure expense, quantifiable steps toward sustainability targets, and the ability to scale with confidence. For technical professionals, it opens up new toolchains, improved performance, and the flexibility to execute workloads across multi-architecture environments without compromise.
By adopting ARM-based computing now, businesses are not just maximizing for today but also future-proofing their cloud strategy. Early adopters get a head start—getting the best of performance, cost savings, and sustainability in one sweeping transition.
Speak with our advisors to learn how you can take control of your Cloud Cost