I've been hearing about AWS Graviton (ARM-based) instances and their potential to save costs compared to traditional x86 instances. I've mostly been using x86 out of habit, but I'm curious about making the switch. Have any of you moved your Kubernetes workloads to Graviton? What has your experience been like? Did you face any performance issues or migration challenges?
5 Answers
Moving my Kubernetes workloads to Graviton was a breeze! For straightforward Lambda functions, it was just a one-line config change. However, if you have any binary dependencies, make sure to bundle the ARM versions instead of the x86 ones. Also, if your CI/CD setup is x86-based, don’t forget tools like docker buildx for ARM architecture builds. It’s worth it!
Could you share any tips on setting up ARM64 runners on GitHub Actions? I’ve been hunting for guidance!
We definitely saw a drop in costs after moving, but it wasn't all smooth sailing. We had a big legacy application with tons of dependencies, and transitioning to the ARM versions took some work. Keep an eye out for libraries that are bundled for x86—it can be quite the hassle!
That sounds like our situation too! Transitioning everything seems daunting, especially for components managed by Terraform.
I hope the cost savings were worth the effort! It sounds like a big job.
I switched a regular application from x86 to Graviton and saw both savings and performance gains. It's a solid option if you're thinking of making the move!
For us, the switch from m6i to c8g instances resulted in over a 40% performance increase per core at similar costs. We're running over a thousand c8g.2xlarge nodes! It's definitely worth considering if performance is a concern.
What kinds of workloads do you run that need that kind of processing power, if you don’t mind sharing?
What's your overall spend for that scale? I'm curious how it all adds up!
Out of our workloads, around 90% are now on ARM. We do have a specialized node pool for the few containers that still need amd64. Honestly, I’d say go for it!
I actually found it easier to use an ARM-based GitLab runner for builds instead of docker buildx. We’ve seen good results running all our infrastructure on ARM. Have you tried that approach?