Class: AWSCDK::Autoscaling::EbsDeviceOptionsBase
- Inherits:
-
Jsii::Struct
- Object
- Jsii::Struct
- AWSCDK::Autoscaling::EbsDeviceOptionsBase
- Defined in:
- autoscaling/ebs_device_options_base.rb
Overview
Base block device options for an EBS volume.
Direct Known Subclasses
Instance Attribute Summary collapse
-
#delete_on_termination ⇒ Boolean?
readonly
Indicates whether to delete the volume when the instance is terminated.
-
#iops ⇒ Numeric?
readonly
The number of I/O operations per second (IOPS) to provision for the volume.
-
#throughput ⇒ Numeric?
readonly
The throughput that the volume supports, in MiB/s Takes a minimum of 125 and maximum of 2000.
-
#volume_type ⇒ AWSCDK::Autoscaling::EbsDeviceVolumeType?
readonly
The EBS volume type.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(delete_on_termination: nil, iops: nil, throughput: nil, volume_type: nil) ⇒ EbsDeviceOptionsBase
constructor
A new instance of EbsDeviceOptionsBase.
- #to_jsii ⇒ Object
Constructor Details
#initialize(delete_on_termination: nil, iops: nil, throughput: nil, volume_type: nil) ⇒ EbsDeviceOptionsBase
Returns a new instance of EbsDeviceOptionsBase.
11 12 13 14 15 16 17 18 19 20 |
# File 'autoscaling/ebs_device_options_base.rb', line 11 def initialize(delete_on_termination: nil, iops: nil, throughput: nil, volume_type: nil) @delete_on_termination = delete_on_termination Jsii::Type.check_type(@delete_on_termination, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJib29sZWFuIn0=")), "deleteOnTermination") unless @delete_on_termination.nil? @iops = iops Jsii::Type.check_type(@iops, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "iops") unless @iops.nil? @throughput = throughput Jsii::Type.check_type(@throughput, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "throughput") unless @throughput.nil? @volume_type = volume_type Jsii::Type.check_type(@volume_type, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfYXV0b3NjYWxpbmcuRWJzRGV2aWNlVm9sdW1lVHlwZSJ9")), "volumeType") unless @volume_type.nil? end |
Instance Attribute Details
#delete_on_termination ⇒ Boolean? (readonly)
Default: - true for Amazon EC2 Auto Scaling, false otherwise (e.g. EBS)
Indicates whether to delete the volume when the instance is terminated.
26 27 28 |
# File 'autoscaling/ebs_device_options_base.rb', line 26 def delete_on_termination @delete_on_termination end |
#iops ⇒ Numeric? (readonly)
Default: - none, required for EbsDeviceVolumeType.IO1
The number of I/O operations per second (IOPS) to provision for the volume.
Must only be set for volume_type: EbsDeviceVolumeType.IO1
The maximum ratio of IOPS to volume size (in GiB) is 50:1, so for 5,000 provisioned IOPS, you need at least 100 GiB storage on the volume.
37 38 39 |
# File 'autoscaling/ebs_device_options_base.rb', line 37 def iops @iops end |
#throughput ⇒ Numeric? (readonly)
Default: - 125 MiB/s. Only valid on gp3 volumes.
The throughput that the volume supports, in MiB/s Takes a minimum of 125 and maximum of 2000.
43 44 45 |
# File 'autoscaling/ebs_device_options_base.rb', line 43 def throughput @throughput end |
#volume_type ⇒ AWSCDK::Autoscaling::EbsDeviceVolumeType? (readonly)
Default: EbsDeviceVolumeType.GP2
The EBS volume type.
49 50 51 |
# File 'autoscaling/ebs_device_options_base.rb', line 49 def volume_type @volume_type end |
Class Method Details
.jsii_properties ⇒ Object
51 52 53 54 55 56 57 58 |
# File 'autoscaling/ebs_device_options_base.rb', line 51 def self.jsii_properties { :delete_on_termination => "deleteOnTermination", :iops => "iops", :throughput => "throughput", :volume_type => "volumeType", } end |
Instance Method Details
#to_jsii ⇒ Object
60 61 62 63 64 65 66 67 68 69 |
# File 'autoscaling/ebs_device_options_base.rb', line 60 def to_jsii result = {} result.merge!({ "deleteOnTermination" => @delete_on_termination, "iops" => @iops, "throughput" => @throughput, "volumeType" => @volume_type, }) result.compact end |