Class: AWSCDK::PCS::CfnCluster::NetworkingProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
pcs/cfn_cluster.rb

Overview

The networking configuration for the cluster's control plane.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(network_type: nil, security_group_ids: nil, subnet_ids: nil) ⇒ NetworkingProperty

Returns a new instance of NetworkingProperty.

Parameters:

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

    The IP address version the cluster uses.

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

    The list of security group IDs associated with the Elastic Network Interface (ENI) created in subnets.

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

    The ID of the subnet where AWS PCS creates an Elastic Network Interface (ENI) to enable communication between managed controllers and AWS PCS resources.



963
964
965
966
967
968
969
970
# File 'pcs/cfn_cluster.rb', line 963

def initialize(network_type: nil, security_group_ids: nil, subnet_ids: nil)
  @network_type = network_type
  Jsii::Type.check_type(@network_type, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "networkType") unless @network_type.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

#network_typeString? (readonly)

The IP address version the cluster uses.

The default is IPV4 .



978
979
980
# File 'pcs/cfn_cluster.rb', line 978

def network_type
  @network_type
end

#security_group_idsArray<String>? (readonly)

The list of security group IDs associated with the Elastic Network Interface (ENI) created in subnets.

The following rules are required:

  • Inbound rule 1
  • Protocol: All
  • Ports: All
  • Source: Self
  • Outbound rule 1
  • Protocol: All
  • Ports: All
  • Destination: 0.0.0.0/0 (IPv4) or ::/0 (IPv6)
  • Outbound rule 2
  • Protocol: All
  • Ports: All
  • Destination: Self


998
999
1000
# File 'pcs/cfn_cluster.rb', line 998

def security_group_ids
  @security_group_ids
end

#subnet_idsArray<String>? (readonly)

The ID of the subnet where AWS PCS creates an Elastic Network Interface (ENI) to enable communication between managed controllers and AWS PCS resources.

The subnet must have an available IP address, cannot reside in AWS Outposts , AWS Wavelength , or an AWS Local Zone.

Example: subnet-abcd1234



1007
1008
1009
# File 'pcs/cfn_cluster.rb', line 1007

def subnet_ids
  @subnet_ids
end

Class Method Details

.jsii_propertiesObject



1009
1010
1011
1012
1013
1014
1015
# File 'pcs/cfn_cluster.rb', line 1009

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

Instance Method Details

#to_jsiiObject



1017
1018
1019
1020
1021
1022
1023
1024
1025
# File 'pcs/cfn_cluster.rb', line 1017

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