SsmParameterImageOptions
- class aws_cdk.aws_ec2.SsmParameterImageOptions(*, cached_in_context=None, os=None, parameter_version=None, user_data=None)
Bases:
object
Properties for GenericSsmParameterImage.
- 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: falseos (
Optional
[OperatingSystemType
]) – Operating system. Default: OperatingSystemType.LINUXparameter_version (
Optional
[str
]) – The version of the SSM parameter. Default: no version specified.user_data (
Optional
[UserData
]) – Custom UserData. Default: - UserData appropriate for the OS
- ExampleMetadata:
lit=aws-ec2/test/example.images.lit.ts infused
Example:
# Pick the right Amazon Linux edition. All arguments shown are optional # and will default to these values when omitted. amzn_linux = ec2.MachineImage.latest_amazon_linux( generation=ec2.AmazonLinuxGeneration.AMAZON_LINUX, edition=ec2.AmazonLinuxEdition.STANDARD, virtualization=ec2.AmazonLinuxVirt.HVM, storage=ec2.AmazonLinuxStorage.GENERAL_PURPOSE, cpu_type=ec2.AmazonLinuxCpuType.X86_64 ) # Pick a Windows edition to use windows = ec2.MachineImage.latest_windows(ec2.WindowsVersion.WINDOWS_SERVER_2019_ENGLISH_FULL_BASE) # Read AMI id from SSM parameter store ssm = ec2.MachineImage.from_ssm_parameter("/my/ami", os=ec2.OperatingSystemType.LINUX) # Look up the most recent image matching a set of AMI filters. # In this case, look up the NAT instance AMI, by using a wildcard # in the 'name' field: nat_ami = ec2.MachineImage.lookup( name="amzn-ami-vpc-nat-*", owners=["amazon"] ) # For other custom (Linux) images, instantiate a `GenericLinuxImage` with # a map giving the AMI to in for each region: linux = ec2.MachineImage.generic_linux({ "us-east-1": "ami-97785bed", "eu-west-1": "ami-12345678" }) # For other custom (Windows) images, instantiate a `GenericWindowsImage` with # a map giving the AMI to in for each region: generic_windows = ec2.MachineImage.generic_windows({ "us-east-1": "ami-97785bed", "eu-west-1": "ami-12345678" })
Attributes
- cached_in_context
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 in
cdk.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 to
true
in environment-agnostic stacks.- Default:
false
- os
Operating system.
- Default:
OperatingSystemType.LINUX
- parameter_version
The version of the SSM parameter.
- Default:
no version specified.
- user_data
Custom UserData.
- Default:
UserData appropriate for the OS