Class: AWSCDK::EC2::CfnLaunchTemplate::PrivateDNSNameOptionsProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
ec2/cfn_launch_template.rb

Overview

The hostname type for EC2 instances launched into this subnet and how DNS A and AAAA record queries should be handled.

For more information, see Amazon EC2 instance hostname types in the Amazon Elastic Compute Cloud User Guide .

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(enable_resource_name_dns_aaaa_record: nil, enable_resource_name_dns_a_record: nil, hostname_type: nil) ⇒ PrivateDNSNameOptionsProperty

Returns a new instance of PrivateDNSNameOptionsProperty.

Parameters:

  • enable_resource_name_dns_aaaa_record (Boolean, AWSCDK::IResolvable, nil) (defaults to: nil)

    Indicates whether to respond to DNS queries for instance hostnames with DNS AAAA records.

  • enable_resource_name_dns_a_record (Boolean, AWSCDK::IResolvable, nil) (defaults to: nil)

    Indicates whether to respond to DNS queries for instance hostnames with DNS A records.

  • hostname_type (String, nil) (defaults to: nil)

    The type of hostname for EC2 instances.



3482
3483
3484
3485
3486
3487
3488
3489
# File 'ec2/cfn_launch_template.rb', line 3482

def initialize(enable_resource_name_dns_aaaa_record: nil, enable_resource_name_dns_a_record: nil, hostname_type: nil)
  @enable_resource_name_dns_aaaa_record = enable_resource_name_dns_aaaa_record
  Jsii::Type.check_type(@enable_resource_name_dns_aaaa_record, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoiYm9vbGVhbiJ9LHsiZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifV19fQ==")), "enableResourceNameDnsAaaaRecord") unless @enable_resource_name_dns_aaaa_record.nil?
  @enable_resource_name_dns_a_record = enable_resource_name_dns_a_record
  Jsii::Type.check_type(@enable_resource_name_dns_a_record, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoiYm9vbGVhbiJ9LHsiZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifV19fQ==")), "enableResourceNameDnsARecord") unless @enable_resource_name_dns_a_record.nil?
  @hostname_type = hostname_type
  Jsii::Type.check_type(@hostname_type, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "hostnameType") unless @hostname_type.nil?
end

Instance Attribute Details

#enable_resource_name_dns_a_recordBoolean, ... (readonly)

Indicates whether to respond to DNS queries for instance hostnames with DNS A records.



3500
3501
3502
# File 'ec2/cfn_launch_template.rb', line 3500

def enable_resource_name_dns_a_record
  @enable_resource_name_dns_a_record
end

#enable_resource_name_dns_aaaa_recordBoolean, ... (readonly)

Indicates whether to respond to DNS queries for instance hostnames with DNS AAAA records.



3495
3496
3497
# File 'ec2/cfn_launch_template.rb', line 3495

def enable_resource_name_dns_aaaa_record
  @enable_resource_name_dns_aaaa_record
end

#hostname_typeString? (readonly)

The type of hostname for EC2 instances.

For IPv4 only subnets, an instance DNS name must be based on the instance IPv4 address. For IPv6 only subnets, an instance DNS name must be based on the instance ID. For dual-stack subnets, you can specify whether DNS names use the instance IPv4 address or the instance ID. For more information, see Amazon EC2 instance hostname types in the Amazon Elastic Compute Cloud User Guide .



3507
3508
3509
# File 'ec2/cfn_launch_template.rb', line 3507

def hostname_type
  @hostname_type
end

Class Method Details

.jsii_propertiesObject



3509
3510
3511
3512
3513
3514
3515
# File 'ec2/cfn_launch_template.rb', line 3509

def self.jsii_properties
  {
    :enable_resource_name_dns_aaaa_record => "enableResourceNameDnsAaaaRecord",
    :enable_resource_name_dns_a_record => "enableResourceNameDnsARecord",
    :hostname_type => "hostnameType",
  }
end

Instance Method Details

#to_jsiiObject



3517
3518
3519
3520
3521
3522
3523
3524
3525
# File 'ec2/cfn_launch_template.rb', line 3517

def to_jsii
  result = {}
  result.merge!({
    "enableResourceNameDnsAaaaRecord" => @enable_resource_name_dns_aaaa_record,
    "enableResourceNameDnsARecord" => @enable_resource_name_dns_a_record,
    "hostnameType" => @hostname_type,
  })
  result.compact
end