Class: AWSCDK::ECS::CfnCapacityProvider::ManagedInstancesNetworkConfigurationProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
ecs/cfn_capacity_provider.rb

Overview

The network configuration for Amazon ECS Managed Instances.

This specifies the VPC subnets and security groups that instances use for network connectivity. Amazon ECS Managed Instances support multiple network modes including awsvpc (instances receive ENIs for task isolation), host (instances share network namespace with tasks), and none (no external network connectivity), ensuring backward compatibility for migrating workloads from Fargate or Amazon EC2.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(security_groups:, subnets:) ⇒ ManagedInstancesNetworkConfigurationProperty

Returns a new instance of ManagedInstancesNetworkConfigurationProperty.

Parameters:

  • security_groups (Array<String>)

    The list of security group IDs to apply to Amazon ECS Managed Instances.

  • subnets (Array<String>)

    The list of subnet IDs where Amazon ECS can launch Amazon ECS Managed Instances.



1391
1392
1393
1394
1395
1396
# File 'ecs/cfn_capacity_provider.rb', line 1391

def initialize(security_groups:, subnets:)
  @security_groups = security_groups
  Jsii::Type.check_type(@security_groups, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "securityGroups")
  @subnets = subnets
  Jsii::Type.check_type(@subnets, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "subnets")
end

Instance Attribute Details

#security_groupsArray<String> (readonly)

The list of security group IDs to apply to Amazon ECS Managed Instances.

These security groups control the network traffic allowed to and from the instances.



1404
1405
1406
# File 'ecs/cfn_capacity_provider.rb', line 1404

def security_groups
  @security_groups
end

#subnetsArray<String> (readonly)

The list of subnet IDs where Amazon ECS can launch Amazon ECS Managed Instances.

Instances are distributed across the specified subnets for high availability. All subnets must be in the same VPC.



1411
1412
1413
# File 'ecs/cfn_capacity_provider.rb', line 1411

def subnets
  @subnets
end

Class Method Details

.jsii_propertiesObject



1413
1414
1415
1416
1417
1418
# File 'ecs/cfn_capacity_provider.rb', line 1413

def self.jsii_properties
  {
    :security_groups => "securityGroups",
    :subnets => "subnets",
  }
end

Instance Method Details

#to_jsiiObject



1420
1421
1422
1423
1424
1425
1426
1427
# File 'ecs/cfn_capacity_provider.rb', line 1420

def to_jsii
  result = {}
  result.merge!({
    "securityGroups" => @security_groups,
    "subnets" => @subnets,
  })
  result.compact
end