stratosphere-0.1.6: EDSL for AWS CloudFormation

Safe HaskellNone
LanguageHaskell2010

Stratosphere.Resources.LaunchConfiguration

Description

The AWS::AutoScaling::LaunchConfiguration type creates an Auto Scaling launch configuration that can be used by an Auto Scaling group to configure Amazon EC2 instances in the Auto Scaling group.

Synopsis

Documentation

data LaunchConfiguration Source #

Full data type definition for LaunchConfiguration. See launchConfiguration for a more convenient constructor.

Instances

Show LaunchConfiguration Source # 
Generic LaunchConfiguration Source # 
FromJSON LaunchConfiguration Source # 
ToJSON LaunchConfiguration Source # 
type Rep LaunchConfiguration Source # 
type Rep LaunchConfiguration = D1 (MetaData "LaunchConfiguration" "Stratosphere.Resources.LaunchConfiguration" "stratosphere-0.1.6-LbRvRulwTkCDVIpKnpH4uK" False) (C1 (MetaCons "LaunchConfiguration" PrefixI True) ((:*:) ((:*:) ((:*:) ((:*:) (S1 (MetaSel (Just Symbol "_launchConfigurationAssociatePublicIpAddress") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe (Val Bool')))) (S1 (MetaSel (Just Symbol "_launchConfigurationBlockDeviceMappings") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe [AutoScalingBlockDeviceMapping])))) ((:*:) (S1 (MetaSel (Just Symbol "_launchConfigurationClassicLinkVPCId") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe (Val Text)))) (S1 (MetaSel (Just Symbol "_launchConfigurationClassicLinkVPCSecurityGroups") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe [Val Text]))))) ((:*:) ((:*:) (S1 (MetaSel (Just Symbol "_launchConfigurationEbsOptimized") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe (Val Bool')))) (S1 (MetaSel (Just Symbol "_launchConfigurationIamInstanceProfile") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe (Val Text))))) ((:*:) (S1 (MetaSel (Just Symbol "_launchConfigurationImageId") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Val Text))) (S1 (MetaSel (Just Symbol "_launchConfigurationInstanceId") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe (Val Text))))))) ((:*:) ((:*:) ((:*:) (S1 (MetaSel (Just Symbol "_launchConfigurationInstanceMonitoring") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe (Val Bool')))) (S1 (MetaSel (Just Symbol "_launchConfigurationInstanceType") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Val Text)))) ((:*:) (S1 (MetaSel (Just Symbol "_launchConfigurationKernelId") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe (Val Text)))) (S1 (MetaSel (Just Symbol "_launchConfigurationKeyName") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe (Val Text)))))) ((:*:) ((:*:) (S1 (MetaSel (Just Symbol "_launchConfigurationPlacementTenancy") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe (Val Text)))) (S1 (MetaSel (Just Symbol "_launchConfigurationRamDiskId") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe (Val Text))))) ((:*:) (S1 (MetaSel (Just Symbol "_launchConfigurationSecurityGroups") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe [Val Text]))) ((:*:) (S1 (MetaSel (Just Symbol "_launchConfigurationSpotPrice") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe (Val Text)))) (S1 (MetaSel (Just Symbol "_launchConfigurationUserData") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe (Val Text))))))))))

launchConfiguration Source #

Constructor for LaunchConfiguration containing required fields as arguments.

lcAssociatePublicIpAddress :: Lens' LaunchConfiguration (Maybe (Val Bool')) Source #

For Amazon EC2 instances in a VPC, indicates whether instances in the Auto Scaling group receive public IP addresses. If you specify true, each instance in the Auto Scaling receives a unique public IP address. Note If this resource has a public IP address and is also in a VPC that is defined in the same template, you must use the DependsOn attribute to declare a dependency on the VPC-gateway attachment. For more information, see DependsOn Attribute.

lcBlockDeviceMappings :: Lens' LaunchConfiguration (Maybe [AutoScalingBlockDeviceMapping]) Source #

Specifies how block devices are exposed to the instance. You can specify virtual devices and EBS volumes.

lcClassicLinkVPCId :: Lens' LaunchConfiguration (Maybe (Val Text)) Source #

The ID of a ClassicLink-enabled VPC to link your EC2-Classic instances to. You can specify this property only for EC2-Classic instances. For more information, see ClassicLink in the Amazon Elastic Compute Cloud User Guide.

lcClassicLinkVPCSecurityGroups :: Lens' LaunchConfiguration (Maybe [Val Text]) Source #

The IDs of one or more security groups for the VPC that you specified in the ClassicLinkVPCId property.

lcEbsOptimized :: Lens' LaunchConfiguration (Maybe (Val Bool')) Source #

Specifies whether the launch configuration is optimized for EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal EBS I/O performance. Additional fees are incurred when using EBS-optimized instances. For more information about fees and supported instance types, see EBS-Optimized Instances in the Amazon EC2 User Guide for Linux Instances.

lcIamInstanceProfile :: Lens' LaunchConfiguration (Maybe (Val Text)) Source #

Provides the name or the Amazon Resource Name (ARN) of the instance profile associated with the IAM role for the instance. The instance profile contains the IAM role.

lcImageId :: Lens' LaunchConfiguration (Val Text) Source #

Provides the unique ID of the Amazon Machine Image (AMI) that was assigned during registration.

lcInstanceId :: Lens' LaunchConfiguration (Maybe (Val Text)) Source #

The ID of the Amazon EC2 instance you want to use to create the launch configuration. Use this property if you want the launch configuration to use settings from an existing Amazon EC2 instance. When you use an instance to create a launch configuration, all properties are derived from the instance with the exception of BlockDeviceMapping and AssociatePublicIpAddress. You can override any properties from the instance by specifying them in the launch configuration.

lcInstanceMonitoring :: Lens' LaunchConfiguration (Maybe (Val Bool')) Source #

Indicates whether detailed instance monitoring is enabled for the Auto Scaling group. By default, this property is set to true (enabled). When detailed monitoring is enabled, Amazon CloudWatch (CloudWatch) generates metrics every minute and your account is charged a fee. When you disable detailed monitoring, CloudWatch generates metrics every 5 minutes. For more information, see Monitor Your Auto Scaling Instances in the Auto Scaling Developer Guide.

lcInstanceType :: Lens' LaunchConfiguration (Val Text) Source #

Specifies the instance type of the EC2 instance.

lcKernelId :: Lens' LaunchConfiguration (Maybe (Val Text)) Source #

Provides the ID of the kernel associated with the EC2 AMI.

lcKeyName :: Lens' LaunchConfiguration (Maybe (Val Text)) Source #

Provides the name of the EC2 key pair.

lcPlacementTenancy :: Lens' LaunchConfiguration (Maybe (Val Text)) Source #

The tenancy of the instance. An instance with a tenancy of dedicated runs on single-tenant hardware and can only be launched in a VPC. You must set the value of this parameter to dedicated if want to launch dedicated instances in a shared tenancy VPC (a VPC with the instance placement tenancy attribute set to default). For more information, see CreateLaunchConfiguration in the Auto Scaling API Reference. If you specify this property, you must specify at least one subnet in the VPCZoneIdentifier property of the AWS::AutoScaling::AutoScalingGroup resource.

lcRamDiskId :: Lens' LaunchConfiguration (Maybe (Val Text)) Source #

The ID of the RAM disk to select. Some kernels require additional drivers at launch. Check the kernel requirements for information about whether you need to specify a RAM disk. To find kernel requirements, refer to the AWS Resource Center and search for the kernel ID.

lcSecurityGroups :: Lens' LaunchConfiguration (Maybe [Val Text]) Source #

A list that contains the EC2 security groups to assign to the Amazon EC2 instances in the Auto Scaling group. The list can contain the name of existing EC2 security groups or references to AWS::EC2::SecurityGroup resources created in the template. If your instances are launched within VPC, specify Amazon VPC security group IDs.

lcSpotPrice :: Lens' LaunchConfiguration (Maybe (Val Text)) Source #

The spot price for this autoscaling group. If a spot price is set, then the autoscaling group will launch when the current spot price is less than the amount specified in the template. When you have specified a spot price for an auto scaling group, the group will only launch when the spot price has been met, regardless of the setting in the autoscaling group's DesiredCapacity. For more information about configuring a spot price for an autoscaling group, see Using Auto Scaling to Launch Spot Instances in the AutoScaling Developer Guide.

lcUserData :: Lens' LaunchConfiguration (Maybe (Val Text)) Source #

The user data available to the launched EC2 instances.