In the AWS Elastic Beanstalk web console for an existing environment, under "Configuration" -> "Capacity" -> "Instance Types", I can't select a Graviton instance, e.g. c6g.large
, m6g.large
, or r6g.large
. None of those appear on the list of options, but c6i.large
, m6i.large
, and r6i.large
do appear.
An Elastic Beanstalk environment gets created with architecture set to either x86 or arm64, and it can never be changed after creation. If your environment is set to x86 architecture, only the c6i
, m6i
, r6i
, etc. series will appear. To use Graviton instances, you'll need to create a new Elastic Beanstalk environment and set its architecture to arm64. According to the AWS docs:
By default, Elastic Beanstalk selects the x86 processor architecture when you create a new environment. You can choose the processor architecture (x86, arm64) for the instance types only when you’re creating a new environment. After you create an environment, you can only change the instance types to others within the same processor architecture of your running environment. You can't change the processor architecture.
If you're creating a new environment via the AWS web console, you need to select "Configure more options" -> "Capacity" -> "Processor" to select arm64 architecture.