Class: AWSCDK::OpenSearchService::CfnDomain::VPCOptionsProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
open_search_service/cfn_domain.rb

Overview

The virtual private cloud (VPC) configuration for the OpenSearch Service domain.

For more information, see Launching your Amazon OpenSearch Service domains using a VPC in the Amazon OpenSearch Service Developer Guide .

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(egress_enabled: nil, security_group_ids: nil, subnet_ids: nil) ⇒ VPCOptionsProperty

Returns a new instance of VPCOptionsProperty.

Parameters:

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

    Controls whether egress traffic from the domain is routed through the customer VPC.

  • security_group_ids (Array<String>, nil) (defaults to: nil)

    The list of security group IDs that are associated with the VPC endpoints for the domain.

  • subnet_ids (Array<String>, nil) (defaults to: nil)

    Provide one subnet ID for each Availability Zone that your domain uses.



2576
2577
2578
2579
2580
2581
2582
2583
# File 'open_search_service/cfn_domain.rb', line 2576

def initialize(egress_enabled: nil, security_group_ids: nil, subnet_ids: nil)
  @egress_enabled = egress_enabled
  Jsii::Type.check_type(@egress_enabled, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoiYm9vbGVhbiJ9LHsiZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifV19fQ==")), "egressEnabled") unless @egress_enabled.nil?
  @security_group_ids = security_group_ids
  Jsii::Type.check_type(@security_group_ids, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "securityGroupIds") unless @security_group_ids.nil?
  @subnet_ids = subnet_ids
  Jsii::Type.check_type(@subnet_ids, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "subnetIds") unless @subnet_ids.nil?
end

Instance Attribute Details

#egress_enabledBoolean, ... (readonly)

Controls whether egress traffic from the domain is routed through the customer VPC.



2589
2590
2591
# File 'open_search_service/cfn_domain.rb', line 2589

def egress_enabled
  @egress_enabled
end

#security_group_idsArray<String>? (readonly)

The list of security group IDs that are associated with the VPC endpoints for the domain.

If you don't provide a security group ID, OpenSearch Service uses the default security group for the VPC. To learn more, see Security groups for your VPC in the Amazon VPC User Guide .



2596
2597
2598
# File 'open_search_service/cfn_domain.rb', line 2596

def security_group_ids
  @security_group_ids
end

#subnet_idsArray<String>? (readonly)

Provide one subnet ID for each Availability Zone that your domain uses.

For example, you must specify three subnet IDs for a three-AZ domain. To learn more, see VPCs and subnets in the Amazon VPC User Guide .

If you specify more than one subnet, you must also configure ZoneAwarenessEnabled and ZoneAwarenessConfig within ClusterConfig , otherwise you'll see the error "You must specify exactly one subnet" during template creation.



2605
2606
2607
# File 'open_search_service/cfn_domain.rb', line 2605

def subnet_ids
  @subnet_ids
end

Class Method Details

.jsii_propertiesObject



2607
2608
2609
2610
2611
2612
2613
# File 'open_search_service/cfn_domain.rb', line 2607

def self.jsii_properties
  {
    :egress_enabled => "egressEnabled",
    :security_group_ids => "securityGroupIds",
    :subnet_ids => "subnetIds",
  }
end

Instance Method Details

#to_jsiiObject



2615
2616
2617
2618
2619
2620
2621
2622
2623
# File 'open_search_service/cfn_domain.rb', line 2615

def to_jsii
  result = {}
  result.merge!({
    "egressEnabled" => @egress_enabled,
    "securityGroupIds" => @security_group_ids,
    "subnetIds" => @subnet_ids,
  })
  result.compact
end