AmazonLinuxImage
- class aws_cdk.aws_ec2.AmazonLinuxImage(*, cached_in_context=None, cpu_type=None, edition=None, generation=None, kernel=None, storage=None, user_data=None, virtualization=None)
Bases:
GenericSSMParameterImage
Selects the latest version of Amazon Linux.
This Machine Image automatically updates to the latest version on every deployment. Be aware this will cause your instances to be replaced when a new version of the image becomes available. Do not store stateful information on the instance if you are using this image.
The AMI ID is selected using the values published to the SSM parameter store.
- ExampleMetadata:
infused
Example:
# vpc: ec2.IVpc lb = elb.LoadBalancer(self, "LB", vpc=vpc, internet_facing=True ) # instance to add as the target for load balancer. instance = ec2.Instance(self, "targetInstance", vpc=vpc, instance_type=ec2.InstanceType.of(ec2.InstanceClass.BURSTABLE2, ec2.InstanceSize.MICRO), machine_image=ec2.AmazonLinuxImage(generation=ec2.AmazonLinuxGeneration.AMAZON_LINUX_2) ) lb.add_target(elb.InstanceTarget(instance))
- Parameters:
cached_in_context (
Optional
[bool
]) – Whether the AMI ID is cached to be stable between deployments. By default, the newest image is used on each deployment. This will cause instances to be replaced whenever a new version is released, and may cause downtime if there aren’t enough running instances in the AutoScalingGroup to reschedule the tasks on. If set to true, the AMI ID will be cached incdk.context.json
and the same value will be used on future runs. Your instances will not be replaced but your AMI version will grow old over time. To refresh the AMI lookup, you will have to evict the value from the cache using thecdk context
command. See https://docs.aws.amazon.com/cdk/latest/guide/context.html for more information. Can not be set totrue
in environment-agnostic stacks. Default: falsecpu_type (
Optional
[AmazonLinuxCpuType
]) – CPU Type. Default: X86_64edition (
Optional
[AmazonLinuxEdition
]) – What edition of Amazon Linux to use. Default: Standardgeneration (
Optional
[AmazonLinuxGeneration
]) – What generation of Amazon Linux to use. Default: AmazonLinuxkernel (
Optional
[AmazonLinuxKernel
]) – What kernel version of Amazon Linux to use. Default: -storage (
Optional
[AmazonLinuxStorage
]) – What storage backed image to use. Default: GeneralPurposeuser_data (
Optional
[UserData
]) – Initial user data. Default: - Empty UserData for Linux machinesvirtualization (
Optional
[AmazonLinuxVirt
]) – Virtualization type. Default: HVM
Methods
- get_image(scope)
Return the image to use in the given context.
- Parameters:
scope (
Construct
) –- Return type:
Attributes
- parameter_name
Name of the SSM parameter we’re looking up.
Static Methods
- classmethod ssm_parameter_name(*, cached_in_context=None, cpu_type=None, edition=None, generation=None, kernel=None, storage=None, user_data=None, virtualization=None)
Return the SSM parameter name that will contain the Amazon Linux image with the given attributes.
- Parameters:
cached_in_context (
Optional
[bool
]) – Whether the AMI ID is cached to be stable between deployments. By default, the newest image is used on each deployment. This will cause instances to be replaced whenever a new version is released, and may cause downtime if there aren’t enough running instances in the AutoScalingGroup to reschedule the tasks on. If set to true, the AMI ID will be cached incdk.context.json
and the same value will be used on future runs. Your instances will not be replaced but your AMI version will grow old over time. To refresh the AMI lookup, you will have to evict the value from the cache using thecdk context
command. See https://docs.aws.amazon.com/cdk/latest/guide/context.html for more information. Can not be set totrue
in environment-agnostic stacks. Default: falsecpu_type (
Optional
[AmazonLinuxCpuType
]) – CPU Type. Default: X86_64edition (
Optional
[AmazonLinuxEdition
]) – What edition of Amazon Linux to use. Default: Standardgeneration (
Optional
[AmazonLinuxGeneration
]) – What generation of Amazon Linux to use. Default: AmazonLinuxkernel (
Optional
[AmazonLinuxKernel
]) – What kernel version of Amazon Linux to use. Default: -storage (
Optional
[AmazonLinuxStorage
]) – What storage backed image to use. Default: GeneralPurposeuser_data (
Optional
[UserData
]) – Initial user data. Default: - Empty UserData for Linux machinesvirtualization (
Optional
[AmazonLinuxVirt
]) – Virtualization type. Default: HVM
- Return type:
str