mrjob.ami - building custom AMIs¶
Utilities for creating custom AMIs.
-
mrjob.ami.
describe_base_emr_images
(ec2_client)¶ Fetch a list of Amazon Linux AMI images that are usable with EMR, with the most recent first. This can take several seconds.
Parameters: ec2_client – a boto3 EC2 client, which can be obtained from mrjob.emr.EMRJobRunner.make_ec2_client()
orboto3.client('ec2')
For the sake of consistency, we have somewhat stricter requirements than the AWS documentation. Specifically:
- Amazon Linux (not Amazon Linux 2)
- HVM virtualization
- x86_64 architecture
- single EBS volume * standard volume type (not GP2)
- stable version (no “testing” or “rc”, only numbers and dots)
This only returns images going back to September 2016 (prior to that, EC2 used a different naming convention).
This returns a dictionary for each image, in the same response format as ec2_client.describe_images(). The ImageId field contains the AMI ID, and Description contains a human-readable description.