Tenancy
- class aws_cdk.aws_imagebuilder_alpha.Tenancy(*values)
Bases:
Enum(experimental) The tenancy to use for an instance.
- See:
- Stability:
experimental
- ExampleMetadata:
infused
Example:
infrastructure_configuration = imagebuilder.InfrastructureConfiguration(self, "InfrastructureConfiguration", infrastructure_configuration_name="test-infrastructure-configuration", description="An Infrastructure Configuration", # Optional - instance types to use for build/test instance_types=[ ec2.InstanceType.of(ec2.InstanceClass.STANDARD7_INTEL, ec2.InstanceSize.LARGE), ec2.InstanceType.of(ec2.InstanceClass.BURSTABLE3, ec2.InstanceSize.LARGE) ], # Optional - create an instance profile with necessary permissions instance_profile=iam.InstanceProfile(self, "InstanceProfile", instance_profile_name="test-instance-profile", role=iam.Role(self, "InstanceProfileRole", assumed_by=iam.ServicePrincipal.from_static_service_principle_name("ec2.amazonaws.com"), managed_policies=[ iam.ManagedPolicy.from_aws_managed_policy_name("AmazonSSMManagedInstanceCore"), iam.ManagedPolicy.from_aws_managed_policy_name("EC2InstanceProfileForImageBuilder") ] ) ), # Use VPC network configuration vpc=vpc, subnet_selection=ec2.SubnetSelection(subnet_type=ec2.SubnetType.PUBLIC), security_groups=[ec2.SecurityGroup.from_security_group_id(self, "SecurityGroup", vpc.vpc_default_security_group)], key_pair=ec2.KeyPair.from_key_pair_name(self, "KeyPair", "imagebuilder-instance-key-pair"), terminate_instance_on_failure=True, # Optional - IMDSv2 settings http_tokens=imagebuilder.HttpTokens.REQUIRED, http_put_response_hop_limit=1, # Optional - publish image completion messages to an SNS topic notification_topic=sns.Topic.from_topic_arn(self, "Topic", self.format_arn(service="sns", resource="image-builder-topic")), # Optional - log settings. Logging is enabled by default logging=imagebuilder.InfrastructureConfigurationLogging( s3_bucket=s3.Bucket.from_bucket_name(self, "LogBucket", f"imagebuilder-logging-{Aws.ACCOUNT_ID}"), s3_key_prefix="imagebuilder-logs" ), # Optional - host placement settings ec2_instance_availability_zone=Stack.of(self).availability_zones[0], ec2_instance_host_id=dedicated_host.attr_host_id, ec2_instance_tenancy=imagebuilder.Tenancy.HOST, resource_tags={ "Environment": "production" } )
Attributes
- DEDICATED
(experimental) Instances will be launched with dedicated tenancy.
- Stability:
experimental
- DEFAULT
(experimental) Instances will be launched with default tenancy.
- Stability:
experimental
- HOST
(experimental) Instances will be launched on a dedicated host.
- Stability:
experimental