- Newest
- Most votes
- Most comments
Go through once by following steps:
=> Create IAM Role Go to the IAM console. Create a new role for EC2. Attach the necessary policies (e.g., AWSElasticBeanstalkWebTier, AWSElasticBeanstalkWorkerTier).
Set the trust relationship:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "ec2.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
=> Create Instance Profile Go to IAM console. Select "Roles" -> your created role. Go to the "Instance profile" tab. Click "Create instance profile". Name it (same as role name).
=> Associate Role with Instance Profile In the IAM console, select "Instance profiles". Ensure the new profile includes the role.
=> Verify and Use in Elastic Beanstalk Go to Elastic Beanstalk environment creation wizard. Select the newly created instance profile.
Hello.
Try creating an instance profile using the AWS CLI command below.
In my AWS account, I created an instance profile with the following command and was able to select it when configuring ElasticBeanstalk.
AWS CLI can be executed from CloudShell.
https://docs.aws.amazon.com/cloudshell/latest/userguide/welcome.html
aws iam create-instance-profile --instance-profile-name eb-instance-profile-test
aws iam add-role-to-instance-profile --instance-profile-name eb-instance-profile-test --role-name ec-beanstalk-instance-role
Thanks, that did solve my problem! I still think there's a problem in the console, but at least I can keep going now.

There is no "Instance profiles" menu option in the IAM console, it simply is not there. I got the same instructions from the AWS AI bot (I suspect you did too).