1. Packages
  2. Oracle Cloud Infrastructure
  3. API Docs
  4. Core
  5. InstancePool
Oracle Cloud Infrastructure v2.17.0 published on Friday, Nov 15, 2024 by Pulumi

oci.Core.InstancePool

Explore with Pulumi AI

oci logo
Oracle Cloud Infrastructure v2.17.0 published on Friday, Nov 15, 2024 by Pulumi

    This resource provides the Instance Pool resource in Oracle Cloud Infrastructure Core service.

    Creates an instance pool.

    To determine whether capacity is available for a specific shape before you create an instance pool, use the CreateComputeCapacityReport operation.

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as oci from "@pulumi/oci";
    
    const testInstancePool = new oci.core.InstancePool("test_instance_pool", {
        compartmentId: compartmentId,
        instanceConfigurationId: testInstanceConfiguration.id,
        placementConfigurations: [{
            availabilityDomain: instancePoolPlacementConfigurationsAvailabilityDomain,
            faultDomains: instancePoolPlacementConfigurationsFaultDomains,
            primarySubnetId: testSubnet.id,
            primaryVnicSubnets: {
                subnetId: testSubnet.id,
                ipv6addressIpv6subnetCidrPairDetails: [{
                    ipv6subnetCidr: instancePoolPlacementConfigurationsPrimaryVnicSubnetsIpv6addressIpv6subnetCidrPairDetailsIpv6subnetCidr,
                }],
                isAssignIpv6ip: instancePoolPlacementConfigurationsPrimaryVnicSubnetsIsAssignIpv6ip,
            },
            secondaryVnicSubnets: [{
                subnetId: testSubnet.id,
                displayName: instancePoolPlacementConfigurationsSecondaryVnicSubnetsDisplayName,
                ipv6addressIpv6subnetCidrPairDetails: [{
                    ipv6subnetCidr: instancePoolPlacementConfigurationsSecondaryVnicSubnetsIpv6addressIpv6subnetCidrPairDetailsIpv6subnetCidr,
                }],
                isAssignIpv6ip: instancePoolPlacementConfigurationsSecondaryVnicSubnetsIsAssignIpv6ip,
            }],
        }],
        size: instancePoolSize,
        definedTags: {
            "Operations.CostCenter": "42",
        },
        displayName: instancePoolDisplayName,
        freeformTags: {
            Department: "Finance",
        },
        instanceDisplayNameFormatter: instancePoolInstanceDisplayNameFormatter,
        instanceHostnameFormatter: instancePoolInstanceHostnameFormatter,
        loadBalancers: [{
            backendSetName: testBackendSet.name,
            loadBalancerId: testLoadBalancer.id,
            port: instancePoolLoadBalancersPort,
            vnicSelection: instancePoolLoadBalancersVnicSelection,
        }],
    });
    
    import pulumi
    import pulumi_oci as oci
    
    test_instance_pool = oci.core.InstancePool("test_instance_pool",
        compartment_id=compartment_id,
        instance_configuration_id=test_instance_configuration["id"],
        placement_configurations=[{
            "availability_domain": instance_pool_placement_configurations_availability_domain,
            "fault_domains": instance_pool_placement_configurations_fault_domains,
            "primary_subnet_id": test_subnet["id"],
            "primary_vnic_subnets": {
                "subnet_id": test_subnet["id"],
                "ipv6address_ipv6subnet_cidr_pair_details": [{
                    "ipv6subnet_cidr": instance_pool_placement_configurations_primary_vnic_subnets_ipv6address_ipv6subnet_cidr_pair_details_ipv6subnet_cidr,
                }],
                "is_assign_ipv6ip": instance_pool_placement_configurations_primary_vnic_subnets_is_assign_ipv6ip,
            },
            "secondary_vnic_subnets": [{
                "subnet_id": test_subnet["id"],
                "display_name": instance_pool_placement_configurations_secondary_vnic_subnets_display_name,
                "ipv6address_ipv6subnet_cidr_pair_details": [{
                    "ipv6subnet_cidr": instance_pool_placement_configurations_secondary_vnic_subnets_ipv6address_ipv6subnet_cidr_pair_details_ipv6subnet_cidr,
                }],
                "is_assign_ipv6ip": instance_pool_placement_configurations_secondary_vnic_subnets_is_assign_ipv6ip,
            }],
        }],
        size=instance_pool_size,
        defined_tags={
            "Operations.CostCenter": "42",
        },
        display_name=instance_pool_display_name,
        freeform_tags={
            "Department": "Finance",
        },
        instance_display_name_formatter=instance_pool_instance_display_name_formatter,
        instance_hostname_formatter=instance_pool_instance_hostname_formatter,
        load_balancers=[{
            "backend_set_name": test_backend_set["name"],
            "load_balancer_id": test_load_balancer["id"],
            "port": instance_pool_load_balancers_port,
            "vnic_selection": instance_pool_load_balancers_vnic_selection,
        }])
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-oci/sdk/v2/go/oci/Core"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := Core.NewInstancePool(ctx, "test_instance_pool", &Core.InstancePoolArgs{
    			CompartmentId:           pulumi.Any(compartmentId),
    			InstanceConfigurationId: pulumi.Any(testInstanceConfiguration.Id),
    			PlacementConfigurations: core.InstancePoolPlacementConfigurationArray{
    				&core.InstancePoolPlacementConfigurationArgs{
    					AvailabilityDomain: pulumi.Any(instancePoolPlacementConfigurationsAvailabilityDomain),
    					FaultDomains:       pulumi.Any(instancePoolPlacementConfigurationsFaultDomains),
    					PrimarySubnetId:    pulumi.Any(testSubnet.Id),
    					PrimaryVnicSubnets: &core.InstancePoolPlacementConfigurationPrimaryVnicSubnetsArgs{
    						SubnetId: pulumi.Any(testSubnet.Id),
    						Ipv6addressIpv6subnetCidrPairDetails: core.InstancePoolPlacementConfigurationPrimaryVnicSubnetsIpv6addressIpv6subnetCidrPairDetailArray{
    							&core.InstancePoolPlacementConfigurationPrimaryVnicSubnetsIpv6addressIpv6subnetCidrPairDetailArgs{
    								Ipv6subnetCidr: pulumi.Any(instancePoolPlacementConfigurationsPrimaryVnicSubnetsIpv6addressIpv6subnetCidrPairDetailsIpv6subnetCidr),
    							},
    						},
    						IsAssignIpv6ip: pulumi.Any(instancePoolPlacementConfigurationsPrimaryVnicSubnetsIsAssignIpv6ip),
    					},
    					SecondaryVnicSubnets: core.InstancePoolPlacementConfigurationSecondaryVnicSubnetArray{
    						&core.InstancePoolPlacementConfigurationSecondaryVnicSubnetArgs{
    							SubnetId:    pulumi.Any(testSubnet.Id),
    							DisplayName: pulumi.Any(instancePoolPlacementConfigurationsSecondaryVnicSubnetsDisplayName),
    							Ipv6addressIpv6subnetCidrPairDetails: core.InstancePoolPlacementConfigurationSecondaryVnicSubnetIpv6addressIpv6subnetCidrPairDetailArray{
    								&core.InstancePoolPlacementConfigurationSecondaryVnicSubnetIpv6addressIpv6subnetCidrPairDetailArgs{
    									Ipv6subnetCidr: pulumi.Any(instancePoolPlacementConfigurationsSecondaryVnicSubnetsIpv6addressIpv6subnetCidrPairDetailsIpv6subnetCidr),
    								},
    							},
    							IsAssignIpv6ip: pulumi.Any(instancePoolPlacementConfigurationsSecondaryVnicSubnetsIsAssignIpv6ip),
    						},
    					},
    				},
    			},
    			Size: pulumi.Any(instancePoolSize),
    			DefinedTags: pulumi.StringMap{
    				"Operations.CostCenter": pulumi.String("42"),
    			},
    			DisplayName: pulumi.Any(instancePoolDisplayName),
    			FreeformTags: pulumi.StringMap{
    				"Department": pulumi.String("Finance"),
    			},
    			InstanceDisplayNameFormatter: pulumi.Any(instancePoolInstanceDisplayNameFormatter),
    			InstanceHostnameFormatter:    pulumi.Any(instancePoolInstanceHostnameFormatter),
    			LoadBalancers: core.InstancePoolLoadBalancerArray{
    				&core.InstancePoolLoadBalancerArgs{
    					BackendSetName: pulumi.Any(testBackendSet.Name),
    					LoadBalancerId: pulumi.Any(testLoadBalancer.Id),
    					Port:           pulumi.Any(instancePoolLoadBalancersPort),
    					VnicSelection:  pulumi.Any(instancePoolLoadBalancersVnicSelection),
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Oci = Pulumi.Oci;
    
    return await Deployment.RunAsync(() => 
    {
        var testInstancePool = new Oci.Core.InstancePool("test_instance_pool", new()
        {
            CompartmentId = compartmentId,
            InstanceConfigurationId = testInstanceConfiguration.Id,
            PlacementConfigurations = new[]
            {
                new Oci.Core.Inputs.InstancePoolPlacementConfigurationArgs
                {
                    AvailabilityDomain = instancePoolPlacementConfigurationsAvailabilityDomain,
                    FaultDomains = instancePoolPlacementConfigurationsFaultDomains,
                    PrimarySubnetId = testSubnet.Id,
                    PrimaryVnicSubnets = new Oci.Core.Inputs.InstancePoolPlacementConfigurationPrimaryVnicSubnetsArgs
                    {
                        SubnetId = testSubnet.Id,
                        Ipv6addressIpv6subnetCidrPairDetails = new[]
                        {
                            new Oci.Core.Inputs.InstancePoolPlacementConfigurationPrimaryVnicSubnetsIpv6addressIpv6subnetCidrPairDetailArgs
                            {
                                Ipv6subnetCidr = instancePoolPlacementConfigurationsPrimaryVnicSubnetsIpv6addressIpv6subnetCidrPairDetailsIpv6subnetCidr,
                            },
                        },
                        IsAssignIpv6ip = instancePoolPlacementConfigurationsPrimaryVnicSubnetsIsAssignIpv6ip,
                    },
                    SecondaryVnicSubnets = new[]
                    {
                        new Oci.Core.Inputs.InstancePoolPlacementConfigurationSecondaryVnicSubnetArgs
                        {
                            SubnetId = testSubnet.Id,
                            DisplayName = instancePoolPlacementConfigurationsSecondaryVnicSubnetsDisplayName,
                            Ipv6addressIpv6subnetCidrPairDetails = new[]
                            {
                                new Oci.Core.Inputs.InstancePoolPlacementConfigurationSecondaryVnicSubnetIpv6addressIpv6subnetCidrPairDetailArgs
                                {
                                    Ipv6subnetCidr = instancePoolPlacementConfigurationsSecondaryVnicSubnetsIpv6addressIpv6subnetCidrPairDetailsIpv6subnetCidr,
                                },
                            },
                            IsAssignIpv6ip = instancePoolPlacementConfigurationsSecondaryVnicSubnetsIsAssignIpv6ip,
                        },
                    },
                },
            },
            Size = instancePoolSize,
            DefinedTags = 
            {
                { "Operations.CostCenter", "42" },
            },
            DisplayName = instancePoolDisplayName,
            FreeformTags = 
            {
                { "Department", "Finance" },
            },
            InstanceDisplayNameFormatter = instancePoolInstanceDisplayNameFormatter,
            InstanceHostnameFormatter = instancePoolInstanceHostnameFormatter,
            LoadBalancers = new[]
            {
                new Oci.Core.Inputs.InstancePoolLoadBalancerArgs
                {
                    BackendSetName = testBackendSet.Name,
                    LoadBalancerId = testLoadBalancer.Id,
                    Port = instancePoolLoadBalancersPort,
                    VnicSelection = instancePoolLoadBalancersVnicSelection,
                },
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.oci.Core.InstancePool;
    import com.pulumi.oci.Core.InstancePoolArgs;
    import com.pulumi.oci.Core.inputs.InstancePoolPlacementConfigurationArgs;
    import com.pulumi.oci.Core.inputs.InstancePoolPlacementConfigurationPrimaryVnicSubnetsArgs;
    import com.pulumi.oci.Core.inputs.InstancePoolLoadBalancerArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            var testInstancePool = new InstancePool("testInstancePool", InstancePoolArgs.builder()
                .compartmentId(compartmentId)
                .instanceConfigurationId(testInstanceConfiguration.id())
                .placementConfigurations(InstancePoolPlacementConfigurationArgs.builder()
                    .availabilityDomain(instancePoolPlacementConfigurationsAvailabilityDomain)
                    .faultDomains(instancePoolPlacementConfigurationsFaultDomains)
                    .primarySubnetId(testSubnet.id())
                    .primaryVnicSubnets(InstancePoolPlacementConfigurationPrimaryVnicSubnetsArgs.builder()
                        .subnetId(testSubnet.id())
                        .ipv6addressIpv6subnetCidrPairDetails(InstancePoolPlacementConfigurationPrimaryVnicSubnetsIpv6addressIpv6subnetCidrPairDetailArgs.builder()
                            .ipv6subnetCidr(instancePoolPlacementConfigurationsPrimaryVnicSubnetsIpv6addressIpv6subnetCidrPairDetailsIpv6subnetCidr)
                            .build())
                        .isAssignIpv6ip(instancePoolPlacementConfigurationsPrimaryVnicSubnetsIsAssignIpv6ip)
                        .build())
                    .secondaryVnicSubnets(InstancePoolPlacementConfigurationSecondaryVnicSubnetArgs.builder()
                        .subnetId(testSubnet.id())
                        .displayName(instancePoolPlacementConfigurationsSecondaryVnicSubnetsDisplayName)
                        .ipv6addressIpv6subnetCidrPairDetails(InstancePoolPlacementConfigurationSecondaryVnicSubnetIpv6addressIpv6subnetCidrPairDetailArgs.builder()
                            .ipv6subnetCidr(instancePoolPlacementConfigurationsSecondaryVnicSubnetsIpv6addressIpv6subnetCidrPairDetailsIpv6subnetCidr)
                            .build())
                        .isAssignIpv6ip(instancePoolPlacementConfigurationsSecondaryVnicSubnetsIsAssignIpv6ip)
                        .build())
                    .build())
                .size(instancePoolSize)
                .definedTags(Map.of("Operations.CostCenter", "42"))
                .displayName(instancePoolDisplayName)
                .freeformTags(Map.of("Department", "Finance"))
                .instanceDisplayNameFormatter(instancePoolInstanceDisplayNameFormatter)
                .instanceHostnameFormatter(instancePoolInstanceHostnameFormatter)
                .loadBalancers(InstancePoolLoadBalancerArgs.builder()
                    .backendSetName(testBackendSet.name())
                    .loadBalancerId(testLoadBalancer.id())
                    .port(instancePoolLoadBalancersPort)
                    .vnicSelection(instancePoolLoadBalancersVnicSelection)
                    .build())
                .build());
    
        }
    }
    
    resources:
      testInstancePool:
        type: oci:Core:InstancePool
        name: test_instance_pool
        properties:
          compartmentId: ${compartmentId}
          instanceConfigurationId: ${testInstanceConfiguration.id}
          placementConfigurations:
            - availabilityDomain: ${instancePoolPlacementConfigurationsAvailabilityDomain}
              faultDomains: ${instancePoolPlacementConfigurationsFaultDomains}
              primarySubnetId: ${testSubnet.id}
              primaryVnicSubnets:
                subnetId: ${testSubnet.id}
                ipv6addressIpv6subnetCidrPairDetails:
                  - ipv6subnetCidr: ${instancePoolPlacementConfigurationsPrimaryVnicSubnetsIpv6addressIpv6subnetCidrPairDetailsIpv6subnetCidr}
                isAssignIpv6ip: ${instancePoolPlacementConfigurationsPrimaryVnicSubnetsIsAssignIpv6ip}
              secondaryVnicSubnets:
                - subnetId: ${testSubnet.id}
                  displayName: ${instancePoolPlacementConfigurationsSecondaryVnicSubnetsDisplayName}
                  ipv6addressIpv6subnetCidrPairDetails:
                    - ipv6subnetCidr: ${instancePoolPlacementConfigurationsSecondaryVnicSubnetsIpv6addressIpv6subnetCidrPairDetailsIpv6subnetCidr}
                  isAssignIpv6ip: ${instancePoolPlacementConfigurationsSecondaryVnicSubnetsIsAssignIpv6ip}
          size: ${instancePoolSize}
          definedTags:
            Operations.CostCenter: '42'
          displayName: ${instancePoolDisplayName}
          freeformTags:
            Department: Finance
          instanceDisplayNameFormatter: ${instancePoolInstanceDisplayNameFormatter}
          instanceHostnameFormatter: ${instancePoolInstanceHostnameFormatter}
          loadBalancers:
            - backendSetName: ${testBackendSet.name}
              loadBalancerId: ${testLoadBalancer.id}
              port: ${instancePoolLoadBalancersPort}
              vnicSelection: ${instancePoolLoadBalancersVnicSelection}
    

    Create InstancePool Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new InstancePool(name: string, args: InstancePoolArgs, opts?: CustomResourceOptions);
    @overload
    def InstancePool(resource_name: str,
                     args: InstancePoolArgs,
                     opts: Optional[ResourceOptions] = None)
    
    @overload
    def InstancePool(resource_name: str,
                     opts: Optional[ResourceOptions] = None,
                     compartment_id: Optional[str] = None,
                     instance_configuration_id: Optional[str] = None,
                     placement_configurations: Optional[Sequence[_core.InstancePoolPlacementConfigurationArgs]] = None,
                     size: Optional[int] = None,
                     defined_tags: Optional[Mapping[str, str]] = None,
                     display_name: Optional[str] = None,
                     freeform_tags: Optional[Mapping[str, str]] = None,
                     instance_display_name_formatter: Optional[str] = None,
                     instance_hostname_formatter: Optional[str] = None,
                     load_balancers: Optional[Sequence[_core.InstancePoolLoadBalancerArgs]] = None,
                     state: Optional[str] = None)
    func NewInstancePool(ctx *Context, name string, args InstancePoolArgs, opts ...ResourceOption) (*InstancePool, error)
    public InstancePool(string name, InstancePoolArgs args, CustomResourceOptions? opts = null)
    public InstancePool(String name, InstancePoolArgs args)
    public InstancePool(String name, InstancePoolArgs args, CustomResourceOptions options)
    
    type: oci:Core:InstancePool
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    

    Parameters

    name string
    The unique name of the resource.
    args InstancePoolArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args InstancePoolArgs
    The arguments to resource properties.
    opts ResourceOptions
    Bag of options to control resource's behavior.
    ctx Context
    Context object for the current deployment.
    name string
    The unique name of the resource.
    args InstancePoolArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args InstancePoolArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args InstancePoolArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Constructor example

    The following reference example uses placeholder values for all input properties.

    var instancePoolResource = new Oci.Core.InstancePool("instancePoolResource", new()
    {
        CompartmentId = "string",
        InstanceConfigurationId = "string",
        PlacementConfigurations = new[]
        {
            new Oci.Core.Inputs.InstancePoolPlacementConfigurationArgs
            {
                AvailabilityDomain = "string",
                FaultDomains = new[]
                {
                    "string",
                },
                PrimarySubnetId = "string",
                PrimaryVnicSubnets = new Oci.Core.Inputs.InstancePoolPlacementConfigurationPrimaryVnicSubnetsArgs
                {
                    SubnetId = "string",
                    Ipv6addressIpv6subnetCidrPairDetails = new[]
                    {
                        new Oci.Core.Inputs.InstancePoolPlacementConfigurationPrimaryVnicSubnetsIpv6addressIpv6subnetCidrPairDetailArgs
                        {
                            Ipv6subnetCidr = "string",
                        },
                    },
                    IsAssignIpv6ip = false,
                },
                SecondaryVnicSubnets = new[]
                {
                    new Oci.Core.Inputs.InstancePoolPlacementConfigurationSecondaryVnicSubnetArgs
                    {
                        SubnetId = "string",
                        DisplayName = "string",
                        Ipv6addressIpv6subnetCidrPairDetails = new[]
                        {
                            new Oci.Core.Inputs.InstancePoolPlacementConfigurationSecondaryVnicSubnetIpv6addressIpv6subnetCidrPairDetailArgs
                            {
                                Ipv6subnetCidr = "string",
                            },
                        },
                        IsAssignIpv6ip = false,
                    },
                },
            },
        },
        Size = 0,
        DefinedTags = 
        {
            { "string", "string" },
        },
        DisplayName = "string",
        FreeformTags = 
        {
            { "string", "string" },
        },
        InstanceDisplayNameFormatter = "string",
        InstanceHostnameFormatter = "string",
        LoadBalancers = new[]
        {
            new Oci.Core.Inputs.InstancePoolLoadBalancerArgs
            {
                BackendSetName = "string",
                LoadBalancerId = "string",
                Port = 0,
                VnicSelection = "string",
                Id = "string",
                InstancePoolId = "string",
                State = "string",
            },
        },
        State = "string",
    });
    
    example, err := Core.NewInstancePool(ctx, "instancePoolResource", &Core.InstancePoolArgs{
    	CompartmentId:           pulumi.String("string"),
    	InstanceConfigurationId: pulumi.String("string"),
    	PlacementConfigurations: core.InstancePoolPlacementConfigurationArray{
    		&core.InstancePoolPlacementConfigurationArgs{
    			AvailabilityDomain: pulumi.String("string"),
    			FaultDomains: pulumi.StringArray{
    				pulumi.String("string"),
    			},
    			PrimarySubnetId: pulumi.String("string"),
    			PrimaryVnicSubnets: &core.InstancePoolPlacementConfigurationPrimaryVnicSubnetsArgs{
    				SubnetId: pulumi.String("string"),
    				Ipv6addressIpv6subnetCidrPairDetails: core.InstancePoolPlacementConfigurationPrimaryVnicSubnetsIpv6addressIpv6subnetCidrPairDetailArray{
    					&core.InstancePoolPlacementConfigurationPrimaryVnicSubnetsIpv6addressIpv6subnetCidrPairDetailArgs{
    						Ipv6subnetCidr: pulumi.String("string"),
    					},
    				},
    				IsAssignIpv6ip: pulumi.Bool(false),
    			},
    			SecondaryVnicSubnets: core.InstancePoolPlacementConfigurationSecondaryVnicSubnetArray{
    				&core.InstancePoolPlacementConfigurationSecondaryVnicSubnetArgs{
    					SubnetId:    pulumi.String("string"),
    					DisplayName: pulumi.String("string"),
    					Ipv6addressIpv6subnetCidrPairDetails: core.InstancePoolPlacementConfigurationSecondaryVnicSubnetIpv6addressIpv6subnetCidrPairDetailArray{
    						&core.InstancePoolPlacementConfigurationSecondaryVnicSubnetIpv6addressIpv6subnetCidrPairDetailArgs{
    							Ipv6subnetCidr: pulumi.String("string"),
    						},
    					},
    					IsAssignIpv6ip: pulumi.Bool(false),
    				},
    			},
    		},
    	},
    	Size: pulumi.Int(0),
    	DefinedTags: pulumi.StringMap{
    		"string": pulumi.String("string"),
    	},
    	DisplayName: pulumi.String("string"),
    	FreeformTags: pulumi.StringMap{
    		"string": pulumi.String("string"),
    	},
    	InstanceDisplayNameFormatter: pulumi.String("string"),
    	InstanceHostnameFormatter:    pulumi.String("string"),
    	LoadBalancers: core.InstancePoolLoadBalancerArray{
    		&core.InstancePoolLoadBalancerArgs{
    			BackendSetName: pulumi.String("string"),
    			LoadBalancerId: pulumi.String("string"),
    			Port:           pulumi.Int(0),
    			VnicSelection:  pulumi.String("string"),
    			Id:             pulumi.String("string"),
    			InstancePoolId: pulumi.String("string"),
    			State:          pulumi.String("string"),
    		},
    	},
    	State: pulumi.String("string"),
    })
    
    var instancePoolResource = new InstancePool("instancePoolResource", InstancePoolArgs.builder()
        .compartmentId("string")
        .instanceConfigurationId("string")
        .placementConfigurations(InstancePoolPlacementConfigurationArgs.builder()
            .availabilityDomain("string")
            .faultDomains("string")
            .primarySubnetId("string")
            .primaryVnicSubnets(InstancePoolPlacementConfigurationPrimaryVnicSubnetsArgs.builder()
                .subnetId("string")
                .ipv6addressIpv6subnetCidrPairDetails(InstancePoolPlacementConfigurationPrimaryVnicSubnetsIpv6addressIpv6subnetCidrPairDetailArgs.builder()
                    .ipv6subnetCidr("string")
                    .build())
                .isAssignIpv6ip(false)
                .build())
            .secondaryVnicSubnets(InstancePoolPlacementConfigurationSecondaryVnicSubnetArgs.builder()
                .subnetId("string")
                .displayName("string")
                .ipv6addressIpv6subnetCidrPairDetails(InstancePoolPlacementConfigurationSecondaryVnicSubnetIpv6addressIpv6subnetCidrPairDetailArgs.builder()
                    .ipv6subnetCidr("string")
                    .build())
                .isAssignIpv6ip(false)
                .build())
            .build())
        .size(0)
        .definedTags(Map.of("string", "string"))
        .displayName("string")
        .freeformTags(Map.of("string", "string"))
        .instanceDisplayNameFormatter("string")
        .instanceHostnameFormatter("string")
        .loadBalancers(InstancePoolLoadBalancerArgs.builder()
            .backendSetName("string")
            .loadBalancerId("string")
            .port(0)
            .vnicSelection("string")
            .id("string")
            .instancePoolId("string")
            .state("string")
            .build())
        .state("string")
        .build());
    
    instance_pool_resource = oci.core.InstancePool("instancePoolResource",
        compartment_id="string",
        instance_configuration_id="string",
        placement_configurations=[{
            "availability_domain": "string",
            "fault_domains": ["string"],
            "primary_subnet_id": "string",
            "primary_vnic_subnets": {
                "subnet_id": "string",
                "ipv6address_ipv6subnet_cidr_pair_details": [{
                    "ipv6subnet_cidr": "string",
                }],
                "is_assign_ipv6ip": False,
            },
            "secondary_vnic_subnets": [{
                "subnet_id": "string",
                "display_name": "string",
                "ipv6address_ipv6subnet_cidr_pair_details": [{
                    "ipv6subnet_cidr": "string",
                }],
                "is_assign_ipv6ip": False,
            }],
        }],
        size=0,
        defined_tags={
            "string": "string",
        },
        display_name="string",
        freeform_tags={
            "string": "string",
        },
        instance_display_name_formatter="string",
        instance_hostname_formatter="string",
        load_balancers=[{
            "backend_set_name": "string",
            "load_balancer_id": "string",
            "port": 0,
            "vnic_selection": "string",
            "id": "string",
            "instance_pool_id": "string",
            "state": "string",
        }],
        state="string")
    
    const instancePoolResource = new oci.core.InstancePool("instancePoolResource", {
        compartmentId: "string",
        instanceConfigurationId: "string",
        placementConfigurations: [{
            availabilityDomain: "string",
            faultDomains: ["string"],
            primarySubnetId: "string",
            primaryVnicSubnets: {
                subnetId: "string",
                ipv6addressIpv6subnetCidrPairDetails: [{
                    ipv6subnetCidr: "string",
                }],
                isAssignIpv6ip: false,
            },
            secondaryVnicSubnets: [{
                subnetId: "string",
                displayName: "string",
                ipv6addressIpv6subnetCidrPairDetails: [{
                    ipv6subnetCidr: "string",
                }],
                isAssignIpv6ip: false,
            }],
        }],
        size: 0,
        definedTags: {
            string: "string",
        },
        displayName: "string",
        freeformTags: {
            string: "string",
        },
        instanceDisplayNameFormatter: "string",
        instanceHostnameFormatter: "string",
        loadBalancers: [{
            backendSetName: "string",
            loadBalancerId: "string",
            port: 0,
            vnicSelection: "string",
            id: "string",
            instancePoolId: "string",
            state: "string",
        }],
        state: "string",
    });
    
    type: oci:Core:InstancePool
    properties:
        compartmentId: string
        definedTags:
            string: string
        displayName: string
        freeformTags:
            string: string
        instanceConfigurationId: string
        instanceDisplayNameFormatter: string
        instanceHostnameFormatter: string
        loadBalancers:
            - backendSetName: string
              id: string
              instancePoolId: string
              loadBalancerId: string
              port: 0
              state: string
              vnicSelection: string
        placementConfigurations:
            - availabilityDomain: string
              faultDomains:
                - string
              primarySubnetId: string
              primaryVnicSubnets:
                ipv6addressIpv6subnetCidrPairDetails:
                    - ipv6subnetCidr: string
                isAssignIpv6ip: false
                subnetId: string
              secondaryVnicSubnets:
                - displayName: string
                  ipv6addressIpv6subnetCidrPairDetails:
                    - ipv6subnetCidr: string
                  isAssignIpv6ip: false
                  subnetId: string
        size: 0
        state: string
    

    InstancePool Resource Properties

    To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

    Inputs

    In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.

    The InstancePool resource accepts the following input properties:

    CompartmentId string
    (Updatable) The OCID of the compartment containing the instance pool.
    InstanceConfigurationId string
    (Updatable) The OCID of the instance configuration associated with the instance pool.
    PlacementConfigurations List<InstancePoolPlacementConfiguration>

    (Updatable) The placement configurations for the instance pool. Provide one placement configuration for each availability domain.

    To use the instance pool with a regional subnet, provide a placement configuration for each availability domain, and include the regional subnet in each placement configuration.

    Size int
    (Updatable) The number of instances that should be in the instance pool. Modifying this value will override the size of the instance pool. If the instance pool is linked with autoscaling configuration, autoscaling configuration could resize the instance pool at a later point. The instance pool's actual size may differ from the configured size if it is associated with an autoscaling configuration, instance pool's actual size will be reflected in this size attribute.
    DefinedTags Dictionary<string, string>
    (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags. Example: {"Operations.CostCenter": "42"}
    DisplayName string
    (Updatable) A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information.
    FreeformTags Dictionary<string, string>
    (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see Resource Tags. Example: {"Department": "Finance"}
    InstanceDisplayNameFormatter string
    (Updatable) A user-friendly formatter for the instance pool's instances. Instance displaynames follow the format. The formatter does not retroactively change instance's displaynames, only instance displaynames in the future follow the format
    InstanceHostnameFormatter string
    (Updatable) A user-friendly formatter for the instance pool's instances. Instance hostnames follow the format. The formatter does not retroactively change instance's hostnames, only instance hostnames in the future follow the format
    LoadBalancers List<InstancePoolLoadBalancer>
    The load balancers to attach to the instance pool. (Note: From 6.16.0 load_balancers field in oci.Core.InstancePool is changed from TypeList to TypeSet - to support load balancer insert operation. Also, LB cant by accessed by index)
    State string

    (Updatable) The target state for the instance pool update operation (ignored at create time and should not be set). Could be set to RUNNING or STOPPED.

    ** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

    CompartmentId string
    (Updatable) The OCID of the compartment containing the instance pool.
    InstanceConfigurationId string
    (Updatable) The OCID of the instance configuration associated with the instance pool.
    PlacementConfigurations []InstancePoolPlacementConfigurationArgs

    (Updatable) The placement configurations for the instance pool. Provide one placement configuration for each availability domain.

    To use the instance pool with a regional subnet, provide a placement configuration for each availability domain, and include the regional subnet in each placement configuration.

    Size int
    (Updatable) The number of instances that should be in the instance pool. Modifying this value will override the size of the instance pool. If the instance pool is linked with autoscaling configuration, autoscaling configuration could resize the instance pool at a later point. The instance pool's actual size may differ from the configured size if it is associated with an autoscaling configuration, instance pool's actual size will be reflected in this size attribute.
    DefinedTags map[string]string
    (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags. Example: {"Operations.CostCenter": "42"}
    DisplayName string
    (Updatable) A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information.
    FreeformTags map[string]string
    (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see Resource Tags. Example: {"Department": "Finance"}
    InstanceDisplayNameFormatter string
    (Updatable) A user-friendly formatter for the instance pool's instances. Instance displaynames follow the format. The formatter does not retroactively change instance's displaynames, only instance displaynames in the future follow the format
    InstanceHostnameFormatter string
    (Updatable) A user-friendly formatter for the instance pool's instances. Instance hostnames follow the format. The formatter does not retroactively change instance's hostnames, only instance hostnames in the future follow the format
    LoadBalancers []InstancePoolLoadBalancerArgs
    The load balancers to attach to the instance pool. (Note: From 6.16.0 load_balancers field in oci.Core.InstancePool is changed from TypeList to TypeSet - to support load balancer insert operation. Also, LB cant by accessed by index)
    State string

    (Updatable) The target state for the instance pool update operation (ignored at create time and should not be set). Could be set to RUNNING or STOPPED.

    ** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

    compartmentId String
    (Updatable) The OCID of the compartment containing the instance pool.
    instanceConfigurationId String
    (Updatable) The OCID of the instance configuration associated with the instance pool.
    placementConfigurations List<InstancePoolPlacementConfiguration>

    (Updatable) The placement configurations for the instance pool. Provide one placement configuration for each availability domain.

    To use the instance pool with a regional subnet, provide a placement configuration for each availability domain, and include the regional subnet in each placement configuration.

    size Integer
    (Updatable) The number of instances that should be in the instance pool. Modifying this value will override the size of the instance pool. If the instance pool is linked with autoscaling configuration, autoscaling configuration could resize the instance pool at a later point. The instance pool's actual size may differ from the configured size if it is associated with an autoscaling configuration, instance pool's actual size will be reflected in this size attribute.
    definedTags Map<String,String>
    (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags. Example: {"Operations.CostCenter": "42"}
    displayName String
    (Updatable) A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information.
    freeformTags Map<String,String>
    (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see Resource Tags. Example: {"Department": "Finance"}
    instanceDisplayNameFormatter String
    (Updatable) A user-friendly formatter for the instance pool's instances. Instance displaynames follow the format. The formatter does not retroactively change instance's displaynames, only instance displaynames in the future follow the format
    instanceHostnameFormatter String
    (Updatable) A user-friendly formatter for the instance pool's instances. Instance hostnames follow the format. The formatter does not retroactively change instance's hostnames, only instance hostnames in the future follow the format
    loadBalancers List<InstancePoolLoadBalancer>
    The load balancers to attach to the instance pool. (Note: From 6.16.0 load_balancers field in oci.Core.InstancePool is changed from TypeList to TypeSet - to support load balancer insert operation. Also, LB cant by accessed by index)
    state String

    (Updatable) The target state for the instance pool update operation (ignored at create time and should not be set). Could be set to RUNNING or STOPPED.

    ** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

    compartmentId string
    (Updatable) The OCID of the compartment containing the instance pool.
    instanceConfigurationId string
    (Updatable) The OCID of the instance configuration associated with the instance pool.
    placementConfigurations InstancePoolPlacementConfiguration[]

    (Updatable) The placement configurations for the instance pool. Provide one placement configuration for each availability domain.

    To use the instance pool with a regional subnet, provide a placement configuration for each availability domain, and include the regional subnet in each placement configuration.

    size number
    (Updatable) The number of instances that should be in the instance pool. Modifying this value will override the size of the instance pool. If the instance pool is linked with autoscaling configuration, autoscaling configuration could resize the instance pool at a later point. The instance pool's actual size may differ from the configured size if it is associated with an autoscaling configuration, instance pool's actual size will be reflected in this size attribute.
    definedTags {[key: string]: string}
    (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags. Example: {"Operations.CostCenter": "42"}
    displayName string
    (Updatable) A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information.
    freeformTags {[key: string]: string}
    (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see Resource Tags. Example: {"Department": "Finance"}
    instanceDisplayNameFormatter string
    (Updatable) A user-friendly formatter for the instance pool's instances. Instance displaynames follow the format. The formatter does not retroactively change instance's displaynames, only instance displaynames in the future follow the format
    instanceHostnameFormatter string
    (Updatable) A user-friendly formatter for the instance pool's instances. Instance hostnames follow the format. The formatter does not retroactively change instance's hostnames, only instance hostnames in the future follow the format
    loadBalancers InstancePoolLoadBalancer[]
    The load balancers to attach to the instance pool. (Note: From 6.16.0 load_balancers field in oci.Core.InstancePool is changed from TypeList to TypeSet - to support load balancer insert operation. Also, LB cant by accessed by index)
    state string

    (Updatable) The target state for the instance pool update operation (ignored at create time and should not be set). Could be set to RUNNING or STOPPED.

    ** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

    compartment_id str
    (Updatable) The OCID of the compartment containing the instance pool.
    instance_configuration_id str
    (Updatable) The OCID of the instance configuration associated with the instance pool.
    placement_configurations Sequence[core.InstancePoolPlacementConfigurationArgs]

    (Updatable) The placement configurations for the instance pool. Provide one placement configuration for each availability domain.

    To use the instance pool with a regional subnet, provide a placement configuration for each availability domain, and include the regional subnet in each placement configuration.

    size int
    (Updatable) The number of instances that should be in the instance pool. Modifying this value will override the size of the instance pool. If the instance pool is linked with autoscaling configuration, autoscaling configuration could resize the instance pool at a later point. The instance pool's actual size may differ from the configured size if it is associated with an autoscaling configuration, instance pool's actual size will be reflected in this size attribute.
    defined_tags Mapping[str, str]
    (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags. Example: {"Operations.CostCenter": "42"}
    display_name str
    (Updatable) A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information.
    freeform_tags Mapping[str, str]
    (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see Resource Tags. Example: {"Department": "Finance"}
    instance_display_name_formatter str
    (Updatable) A user-friendly formatter for the instance pool's instances. Instance displaynames follow the format. The formatter does not retroactively change instance's displaynames, only instance displaynames in the future follow the format
    instance_hostname_formatter str
    (Updatable) A user-friendly formatter for the instance pool's instances. Instance hostnames follow the format. The formatter does not retroactively change instance's hostnames, only instance hostnames in the future follow the format
    load_balancers Sequence[core.InstancePoolLoadBalancerArgs]
    The load balancers to attach to the instance pool. (Note: From 6.16.0 load_balancers field in oci.Core.InstancePool is changed from TypeList to TypeSet - to support load balancer insert operation. Also, LB cant by accessed by index)
    state str

    (Updatable) The target state for the instance pool update operation (ignored at create time and should not be set). Could be set to RUNNING or STOPPED.

    ** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

    compartmentId String
    (Updatable) The OCID of the compartment containing the instance pool.
    instanceConfigurationId String
    (Updatable) The OCID of the instance configuration associated with the instance pool.
    placementConfigurations List<Property Map>

    (Updatable) The placement configurations for the instance pool. Provide one placement configuration for each availability domain.

    To use the instance pool with a regional subnet, provide a placement configuration for each availability domain, and include the regional subnet in each placement configuration.

    size Number
    (Updatable) The number of instances that should be in the instance pool. Modifying this value will override the size of the instance pool. If the instance pool is linked with autoscaling configuration, autoscaling configuration could resize the instance pool at a later point. The instance pool's actual size may differ from the configured size if it is associated with an autoscaling configuration, instance pool's actual size will be reflected in this size attribute.
    definedTags Map<String>
    (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags. Example: {"Operations.CostCenter": "42"}
    displayName String
    (Updatable) A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information.
    freeformTags Map<String>
    (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see Resource Tags. Example: {"Department": "Finance"}
    instanceDisplayNameFormatter String
    (Updatable) A user-friendly formatter for the instance pool's instances. Instance displaynames follow the format. The formatter does not retroactively change instance's displaynames, only instance displaynames in the future follow the format
    instanceHostnameFormatter String
    (Updatable) A user-friendly formatter for the instance pool's instances. Instance hostnames follow the format. The formatter does not retroactively change instance's hostnames, only instance hostnames in the future follow the format
    loadBalancers List<Property Map>
    The load balancers to attach to the instance pool. (Note: From 6.16.0 load_balancers field in oci.Core.InstancePool is changed from TypeList to TypeSet - to support load balancer insert operation. Also, LB cant by accessed by index)
    state String

    (Updatable) The target state for the instance pool update operation (ignored at create time and should not be set). Could be set to RUNNING or STOPPED.

    ** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

    Outputs

    All input properties are implicitly available as output properties. Additionally, the InstancePool resource produces the following output properties:

    ActualSize int
    The number of actual instances in the instance pool on the cloud. This attribute will be different when instance pool is used along with autoScaling Configuration.
    Id string
    The provider-assigned unique ID for this managed resource.
    TimeCreated string
    The date and time the instance pool was created, in the format defined by RFC3339. Example: 2016-08-25T21:10:29.600Z
    ActualSize int
    The number of actual instances in the instance pool on the cloud. This attribute will be different when instance pool is used along with autoScaling Configuration.
    Id string
    The provider-assigned unique ID for this managed resource.
    TimeCreated string
    The date and time the instance pool was created, in the format defined by RFC3339. Example: 2016-08-25T21:10:29.600Z
    actualSize Integer
    The number of actual instances in the instance pool on the cloud. This attribute will be different when instance pool is used along with autoScaling Configuration.
    id String
    The provider-assigned unique ID for this managed resource.
    timeCreated String
    The date and time the instance pool was created, in the format defined by RFC3339. Example: 2016-08-25T21:10:29.600Z
    actualSize number
    The number of actual instances in the instance pool on the cloud. This attribute will be different when instance pool is used along with autoScaling Configuration.
    id string
    The provider-assigned unique ID for this managed resource.
    timeCreated string
    The date and time the instance pool was created, in the format defined by RFC3339. Example: 2016-08-25T21:10:29.600Z
    actual_size int
    The number of actual instances in the instance pool on the cloud. This attribute will be different when instance pool is used along with autoScaling Configuration.
    id str
    The provider-assigned unique ID for this managed resource.
    time_created str
    The date and time the instance pool was created, in the format defined by RFC3339. Example: 2016-08-25T21:10:29.600Z
    actualSize Number
    The number of actual instances in the instance pool on the cloud. This attribute will be different when instance pool is used along with autoScaling Configuration.
    id String
    The provider-assigned unique ID for this managed resource.
    timeCreated String
    The date and time the instance pool was created, in the format defined by RFC3339. Example: 2016-08-25T21:10:29.600Z

    Look up Existing InstancePool Resource

    Get an existing InstancePool resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

    public static get(name: string, id: Input<ID>, state?: InstancePoolState, opts?: CustomResourceOptions): InstancePool
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            actual_size: Optional[int] = None,
            compartment_id: Optional[str] = None,
            defined_tags: Optional[Mapping[str, str]] = None,
            display_name: Optional[str] = None,
            freeform_tags: Optional[Mapping[str, str]] = None,
            instance_configuration_id: Optional[str] = None,
            instance_display_name_formatter: Optional[str] = None,
            instance_hostname_formatter: Optional[str] = None,
            load_balancers: Optional[Sequence[_core.InstancePoolLoadBalancerArgs]] = None,
            placement_configurations: Optional[Sequence[_core.InstancePoolPlacementConfigurationArgs]] = None,
            size: Optional[int] = None,
            state: Optional[str] = None,
            time_created: Optional[str] = None) -> InstancePool
    func GetInstancePool(ctx *Context, name string, id IDInput, state *InstancePoolState, opts ...ResourceOption) (*InstancePool, error)
    public static InstancePool Get(string name, Input<string> id, InstancePoolState? state, CustomResourceOptions? opts = null)
    public static InstancePool get(String name, Output<String> id, InstancePoolState state, CustomResourceOptions options)
    Resource lookup is not supported in YAML
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    resource_name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    The following state arguments are supported:
    ActualSize int
    The number of actual instances in the instance pool on the cloud. This attribute will be different when instance pool is used along with autoScaling Configuration.
    CompartmentId string
    (Updatable) The OCID of the compartment containing the instance pool.
    DefinedTags Dictionary<string, string>
    (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags. Example: {"Operations.CostCenter": "42"}
    DisplayName string
    (Updatable) A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information.
    FreeformTags Dictionary<string, string>
    (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see Resource Tags. Example: {"Department": "Finance"}
    InstanceConfigurationId string
    (Updatable) The OCID of the instance configuration associated with the instance pool.
    InstanceDisplayNameFormatter string
    (Updatable) A user-friendly formatter for the instance pool's instances. Instance displaynames follow the format. The formatter does not retroactively change instance's displaynames, only instance displaynames in the future follow the format
    InstanceHostnameFormatter string
    (Updatable) A user-friendly formatter for the instance pool's instances. Instance hostnames follow the format. The formatter does not retroactively change instance's hostnames, only instance hostnames in the future follow the format
    LoadBalancers List<InstancePoolLoadBalancer>
    The load balancers to attach to the instance pool. (Note: From 6.16.0 load_balancers field in oci.Core.InstancePool is changed from TypeList to TypeSet - to support load balancer insert operation. Also, LB cant by accessed by index)
    PlacementConfigurations List<InstancePoolPlacementConfiguration>

    (Updatable) The placement configurations for the instance pool. Provide one placement configuration for each availability domain.

    To use the instance pool with a regional subnet, provide a placement configuration for each availability domain, and include the regional subnet in each placement configuration.

    Size int
    (Updatable) The number of instances that should be in the instance pool. Modifying this value will override the size of the instance pool. If the instance pool is linked with autoscaling configuration, autoscaling configuration could resize the instance pool at a later point. The instance pool's actual size may differ from the configured size if it is associated with an autoscaling configuration, instance pool's actual size will be reflected in this size attribute.
    State string

    (Updatable) The target state for the instance pool update operation (ignored at create time and should not be set). Could be set to RUNNING or STOPPED.

    ** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

    TimeCreated string
    The date and time the instance pool was created, in the format defined by RFC3339. Example: 2016-08-25T21:10:29.600Z
    ActualSize int
    The number of actual instances in the instance pool on the cloud. This attribute will be different when instance pool is used along with autoScaling Configuration.
    CompartmentId string
    (Updatable) The OCID of the compartment containing the instance pool.
    DefinedTags map[string]string
    (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags. Example: {"Operations.CostCenter": "42"}
    DisplayName string
    (Updatable) A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information.
    FreeformTags map[string]string
    (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see Resource Tags. Example: {"Department": "Finance"}
    InstanceConfigurationId string
    (Updatable) The OCID of the instance configuration associated with the instance pool.
    InstanceDisplayNameFormatter string
    (Updatable) A user-friendly formatter for the instance pool's instances. Instance displaynames follow the format. The formatter does not retroactively change instance's displaynames, only instance displaynames in the future follow the format
    InstanceHostnameFormatter string
    (Updatable) A user-friendly formatter for the instance pool's instances. Instance hostnames follow the format. The formatter does not retroactively change instance's hostnames, only instance hostnames in the future follow the format
    LoadBalancers []InstancePoolLoadBalancerArgs
    The load balancers to attach to the instance pool. (Note: From 6.16.0 load_balancers field in oci.Core.InstancePool is changed from TypeList to TypeSet - to support load balancer insert operation. Also, LB cant by accessed by index)
    PlacementConfigurations []InstancePoolPlacementConfigurationArgs

    (Updatable) The placement configurations for the instance pool. Provide one placement configuration for each availability domain.

    To use the instance pool with a regional subnet, provide a placement configuration for each availability domain, and include the regional subnet in each placement configuration.

    Size int
    (Updatable) The number of instances that should be in the instance pool. Modifying this value will override the size of the instance pool. If the instance pool is linked with autoscaling configuration, autoscaling configuration could resize the instance pool at a later point. The instance pool's actual size may differ from the configured size if it is associated with an autoscaling configuration, instance pool's actual size will be reflected in this size attribute.
    State string

    (Updatable) The target state for the instance pool update operation (ignored at create time and should not be set). Could be set to RUNNING or STOPPED.

    ** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

    TimeCreated string
    The date and time the instance pool was created, in the format defined by RFC3339. Example: 2016-08-25T21:10:29.600Z
    actualSize Integer
    The number of actual instances in the instance pool on the cloud. This attribute will be different when instance pool is used along with autoScaling Configuration.
    compartmentId String
    (Updatable) The OCID of the compartment containing the instance pool.
    definedTags Map<String,String>
    (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags. Example: {"Operations.CostCenter": "42"}
    displayName String
    (Updatable) A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information.
    freeformTags Map<String,String>
    (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see Resource Tags. Example: {"Department": "Finance"}
    instanceConfigurationId String
    (Updatable) The OCID of the instance configuration associated with the instance pool.
    instanceDisplayNameFormatter String
    (Updatable) A user-friendly formatter for the instance pool's instances. Instance displaynames follow the format. The formatter does not retroactively change instance's displaynames, only instance displaynames in the future follow the format
    instanceHostnameFormatter String
    (Updatable) A user-friendly formatter for the instance pool's instances. Instance hostnames follow the format. The formatter does not retroactively change instance's hostnames, only instance hostnames in the future follow the format
    loadBalancers List<InstancePoolLoadBalancer>
    The load balancers to attach to the instance pool. (Note: From 6.16.0 load_balancers field in oci.Core.InstancePool is changed from TypeList to TypeSet - to support load balancer insert operation. Also, LB cant by accessed by index)
    placementConfigurations List<InstancePoolPlacementConfiguration>

    (Updatable) The placement configurations for the instance pool. Provide one placement configuration for each availability domain.

    To use the instance pool with a regional subnet, provide a placement configuration for each availability domain, and include the regional subnet in each placement configuration.

    size Integer
    (Updatable) The number of instances that should be in the instance pool. Modifying this value will override the size of the instance pool. If the instance pool is linked with autoscaling configuration, autoscaling configuration could resize the instance pool at a later point. The instance pool's actual size may differ from the configured size if it is associated with an autoscaling configuration, instance pool's actual size will be reflected in this size attribute.
    state String

    (Updatable) The target state for the instance pool update operation (ignored at create time and should not be set). Could be set to RUNNING or STOPPED.

    ** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

    timeCreated String
    The date and time the instance pool was created, in the format defined by RFC3339. Example: 2016-08-25T21:10:29.600Z
    actualSize number
    The number of actual instances in the instance pool on the cloud. This attribute will be different when instance pool is used along with autoScaling Configuration.
    compartmentId string
    (Updatable) The OCID of the compartment containing the instance pool.
    definedTags {[key: string]: string}
    (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags. Example: {"Operations.CostCenter": "42"}
    displayName string
    (Updatable) A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information.
    freeformTags {[key: string]: string}
    (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see Resource Tags. Example: {"Department": "Finance"}
    instanceConfigurationId string
    (Updatable) The OCID of the instance configuration associated with the instance pool.
    instanceDisplayNameFormatter string
    (Updatable) A user-friendly formatter for the instance pool's instances. Instance displaynames follow the format. The formatter does not retroactively change instance's displaynames, only instance displaynames in the future follow the format
    instanceHostnameFormatter string
    (Updatable) A user-friendly formatter for the instance pool's instances. Instance hostnames follow the format. The formatter does not retroactively change instance's hostnames, only instance hostnames in the future follow the format
    loadBalancers InstancePoolLoadBalancer[]
    The load balancers to attach to the instance pool. (Note: From 6.16.0 load_balancers field in oci.Core.InstancePool is changed from TypeList to TypeSet - to support load balancer insert operation. Also, LB cant by accessed by index)
    placementConfigurations InstancePoolPlacementConfiguration[]

    (Updatable) The placement configurations for the instance pool. Provide one placement configuration for each availability domain.

    To use the instance pool with a regional subnet, provide a placement configuration for each availability domain, and include the regional subnet in each placement configuration.

    size number
    (Updatable) The number of instances that should be in the instance pool. Modifying this value will override the size of the instance pool. If the instance pool is linked with autoscaling configuration, autoscaling configuration could resize the instance pool at a later point. The instance pool's actual size may differ from the configured size if it is associated with an autoscaling configuration, instance pool's actual size will be reflected in this size attribute.
    state string

    (Updatable) The target state for the instance pool update operation (ignored at create time and should not be set). Could be set to RUNNING or STOPPED.

    ** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

    timeCreated string
    The date and time the instance pool was created, in the format defined by RFC3339. Example: 2016-08-25T21:10:29.600Z
    actual_size int
    The number of actual instances in the instance pool on the cloud. This attribute will be different when instance pool is used along with autoScaling Configuration.
    compartment_id str
    (Updatable) The OCID of the compartment containing the instance pool.
    defined_tags Mapping[str, str]
    (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags. Example: {"Operations.CostCenter": "42"}
    display_name str
    (Updatable) A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information.
    freeform_tags Mapping[str, str]
    (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see Resource Tags. Example: {"Department": "Finance"}
    instance_configuration_id str
    (Updatable) The OCID of the instance configuration associated with the instance pool.
    instance_display_name_formatter str
    (Updatable) A user-friendly formatter for the instance pool's instances. Instance displaynames follow the format. The formatter does not retroactively change instance's displaynames, only instance displaynames in the future follow the format
    instance_hostname_formatter str
    (Updatable) A user-friendly formatter for the instance pool's instances. Instance hostnames follow the format. The formatter does not retroactively change instance's hostnames, only instance hostnames in the future follow the format
    load_balancers Sequence[core.InstancePoolLoadBalancerArgs]
    The load balancers to attach to the instance pool. (Note: From 6.16.0 load_balancers field in oci.Core.InstancePool is changed from TypeList to TypeSet - to support load balancer insert operation. Also, LB cant by accessed by index)
    placement_configurations Sequence[core.InstancePoolPlacementConfigurationArgs]

    (Updatable) The placement configurations for the instance pool. Provide one placement configuration for each availability domain.

    To use the instance pool with a regional subnet, provide a placement configuration for each availability domain, and include the regional subnet in each placement configuration.

    size int
    (Updatable) The number of instances that should be in the instance pool. Modifying this value will override the size of the instance pool. If the instance pool is linked with autoscaling configuration, autoscaling configuration could resize the instance pool at a later point. The instance pool's actual size may differ from the configured size if it is associated with an autoscaling configuration, instance pool's actual size will be reflected in this size attribute.
    state str

    (Updatable) The target state for the instance pool update operation (ignored at create time and should not be set). Could be set to RUNNING or STOPPED.

    ** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

    time_created str
    The date and time the instance pool was created, in the format defined by RFC3339. Example: 2016-08-25T21:10:29.600Z
    actualSize Number
    The number of actual instances in the instance pool on the cloud. This attribute will be different when instance pool is used along with autoScaling Configuration.
    compartmentId String
    (Updatable) The OCID of the compartment containing the instance pool.
    definedTags Map<String>
    (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags. Example: {"Operations.CostCenter": "42"}
    displayName String
    (Updatable) A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information.
    freeformTags Map<String>
    (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see Resource Tags. Example: {"Department": "Finance"}
    instanceConfigurationId String
    (Updatable) The OCID of the instance configuration associated with the instance pool.
    instanceDisplayNameFormatter String
    (Updatable) A user-friendly formatter for the instance pool's instances. Instance displaynames follow the format. The formatter does not retroactively change instance's displaynames, only instance displaynames in the future follow the format
    instanceHostnameFormatter String
    (Updatable) A user-friendly formatter for the instance pool's instances. Instance hostnames follow the format. The formatter does not retroactively change instance's hostnames, only instance hostnames in the future follow the format
    loadBalancers List<Property Map>
    The load balancers to attach to the instance pool. (Note: From 6.16.0 load_balancers field in oci.Core.InstancePool is changed from TypeList to TypeSet - to support load balancer insert operation. Also, LB cant by accessed by index)
    placementConfigurations List<Property Map>

    (Updatable) The placement configurations for the instance pool. Provide one placement configuration for each availability domain.

    To use the instance pool with a regional subnet, provide a placement configuration for each availability domain, and include the regional subnet in each placement configuration.

    size Number
    (Updatable) The number of instances that should be in the instance pool. Modifying this value will override the size of the instance pool. If the instance pool is linked with autoscaling configuration, autoscaling configuration could resize the instance pool at a later point. The instance pool's actual size may differ from the configured size if it is associated with an autoscaling configuration, instance pool's actual size will be reflected in this size attribute.
    state String

    (Updatable) The target state for the instance pool update operation (ignored at create time and should not be set). Could be set to RUNNING or STOPPED.

    ** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

    timeCreated String
    The date and time the instance pool was created, in the format defined by RFC3339. Example: 2016-08-25T21:10:29.600Z

    Supporting Types

    InstancePoolLoadBalancer, InstancePoolLoadBalancerArgs

    BackendSetName string
    The name of the backend set on the load balancer to add instances to.
    LoadBalancerId string
    The OCID of the load balancer to attach to the instance pool.
    Port int
    The port value to use when creating the backend set.
    VnicSelection string
    Indicates which VNIC on each instance in the pool should be used to associate with the load balancer. Possible values are "PrimaryVnic" or the displayName of one of the secondary VNICs on the instance configuration that is associated with the instance pool.
    Id string
    The OCID of the load balancer attachment.
    InstancePoolId string
    The OCID of the instance pool of the load balancer attachment.
    State string

    (Updatable) The target state for the instance pool update operation (ignored at create time and should not be set). Could be set to RUNNING or STOPPED.

    ** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

    BackendSetName string
    The name of the backend set on the load balancer to add instances to.
    LoadBalancerId string
    The OCID of the load balancer to attach to the instance pool.
    Port int
    The port value to use when creating the backend set.
    VnicSelection string
    Indicates which VNIC on each instance in the pool should be used to associate with the load balancer. Possible values are "PrimaryVnic" or the displayName of one of the secondary VNICs on the instance configuration that is associated with the instance pool.
    Id string
    The OCID of the load balancer attachment.
    InstancePoolId string
    The OCID of the instance pool of the load balancer attachment.
    State string

    (Updatable) The target state for the instance pool update operation (ignored at create time and should not be set). Could be set to RUNNING or STOPPED.

    ** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

    backendSetName String
    The name of the backend set on the load balancer to add instances to.
    loadBalancerId String
    The OCID of the load balancer to attach to the instance pool.
    port Integer
    The port value to use when creating the backend set.
    vnicSelection String
    Indicates which VNIC on each instance in the pool should be used to associate with the load balancer. Possible values are "PrimaryVnic" or the displayName of one of the secondary VNICs on the instance configuration that is associated with the instance pool.
    id String
    The OCID of the load balancer attachment.
    instancePoolId String
    The OCID of the instance pool of the load balancer attachment.
    state String

    (Updatable) The target state for the instance pool update operation (ignored at create time and should not be set). Could be set to RUNNING or STOPPED.

    ** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

    backendSetName string
    The name of the backend set on the load balancer to add instances to.
    loadBalancerId string
    The OCID of the load balancer to attach to the instance pool.
    port number
    The port value to use when creating the backend set.
    vnicSelection string
    Indicates which VNIC on each instance in the pool should be used to associate with the load balancer. Possible values are "PrimaryVnic" or the displayName of one of the secondary VNICs on the instance configuration that is associated with the instance pool.
    id string
    The OCID of the load balancer attachment.
    instancePoolId string
    The OCID of the instance pool of the load balancer attachment.
    state string

    (Updatable) The target state for the instance pool update operation (ignored at create time and should not be set). Could be set to RUNNING or STOPPED.

    ** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

    backend_set_name str
    The name of the backend set on the load balancer to add instances to.
    load_balancer_id str
    The OCID of the load balancer to attach to the instance pool.
    port int
    The port value to use when creating the backend set.
    vnic_selection str
    Indicates which VNIC on each instance in the pool should be used to associate with the load balancer. Possible values are "PrimaryVnic" or the displayName of one of the secondary VNICs on the instance configuration that is associated with the instance pool.
    id str
    The OCID of the load balancer attachment.
    instance_pool_id str
    The OCID of the instance pool of the load balancer attachment.
    state str

    (Updatable) The target state for the instance pool update operation (ignored at create time and should not be set). Could be set to RUNNING or STOPPED.

    ** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

    backendSetName String
    The name of the backend set on the load balancer to add instances to.
    loadBalancerId String
    The OCID of the load balancer to attach to the instance pool.
    port Number
    The port value to use when creating the backend set.
    vnicSelection String
    Indicates which VNIC on each instance in the pool should be used to associate with the load balancer. Possible values are "PrimaryVnic" or the displayName of one of the secondary VNICs on the instance configuration that is associated with the instance pool.
    id String
    The OCID of the load balancer attachment.
    instancePoolId String
    The OCID of the instance pool of the load balancer attachment.
    state String

    (Updatable) The target state for the instance pool update operation (ignored at create time and should not be set). Could be set to RUNNING or STOPPED.

    ** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

    InstancePoolPlacementConfiguration, InstancePoolPlacementConfigurationArgs

    AvailabilityDomain string
    (Updatable) The availability domain to place instances. Example: Uocm:PHX-AD-1
    FaultDomains List<string>

    (Updatable) The fault domains to place instances.

    If you don't provide any values, the system makes a best effort to distribute instances across all fault domains based on capacity.

    To distribute the instances evenly across selected fault domains, provide a set of fault domains. For example, you might want instances to be evenly distributed if your applications require high availability.

    To get a list of fault domains, use the ListFaultDomains operation in the Identity and Access Management Service API.

    Example: [FAULT-DOMAIN-1, FAULT-DOMAIN-2, FAULT-DOMAIN-3]

    PrimarySubnetId string
    (Updatable) The OCID of the primary subnet to place instances. This field is deprecated. Use primaryVnicSubnets instead to set VNIC data for instances in the pool.
    PrimaryVnicSubnets InstancePoolPlacementConfigurationPrimaryVnicSubnets
    (Updatable) Details about the IPv6 primary subnet.
    SecondaryVnicSubnets List<InstancePoolPlacementConfigurationSecondaryVnicSubnet>
    (Updatable) The set of secondary VNIC data for instances in the pool.
    AvailabilityDomain string
    (Updatable) The availability domain to place instances. Example: Uocm:PHX-AD-1
    FaultDomains []string

    (Updatable) The fault domains to place instances.

    If you don't provide any values, the system makes a best effort to distribute instances across all fault domains based on capacity.

    To distribute the instances evenly across selected fault domains, provide a set of fault domains. For example, you might want instances to be evenly distributed if your applications require high availability.

    To get a list of fault domains, use the ListFaultDomains operation in the Identity and Access Management Service API.

    Example: [FAULT-DOMAIN-1, FAULT-DOMAIN-2, FAULT-DOMAIN-3]

    PrimarySubnetId string
    (Updatable) The OCID of the primary subnet to place instances. This field is deprecated. Use primaryVnicSubnets instead to set VNIC data for instances in the pool.
    PrimaryVnicSubnets InstancePoolPlacementConfigurationPrimaryVnicSubnets
    (Updatable) Details about the IPv6 primary subnet.
    SecondaryVnicSubnets []InstancePoolPlacementConfigurationSecondaryVnicSubnet
    (Updatable) The set of secondary VNIC data for instances in the pool.
    availabilityDomain String
    (Updatable) The availability domain to place instances. Example: Uocm:PHX-AD-1
    faultDomains List<String>

    (Updatable) The fault domains to place instances.

    If you don't provide any values, the system makes a best effort to distribute instances across all fault domains based on capacity.

    To distribute the instances evenly across selected fault domains, provide a set of fault domains. For example, you might want instances to be evenly distributed if your applications require high availability.

    To get a list of fault domains, use the ListFaultDomains operation in the Identity and Access Management Service API.

    Example: [FAULT-DOMAIN-1, FAULT-DOMAIN-2, FAULT-DOMAIN-3]

    primarySubnetId String
    (Updatable) The OCID of the primary subnet to place instances. This field is deprecated. Use primaryVnicSubnets instead to set VNIC data for instances in the pool.
    primaryVnicSubnets InstancePoolPlacementConfigurationPrimaryVnicSubnets
    (Updatable) Details about the IPv6 primary subnet.
    secondaryVnicSubnets List<InstancePoolPlacementConfigurationSecondaryVnicSubnet>
    (Updatable) The set of secondary VNIC data for instances in the pool.
    availabilityDomain string
    (Updatable) The availability domain to place instances. Example: Uocm:PHX-AD-1
    faultDomains string[]

    (Updatable) The fault domains to place instances.

    If you don't provide any values, the system makes a best effort to distribute instances across all fault domains based on capacity.

    To distribute the instances evenly across selected fault domains, provide a set of fault domains. For example, you might want instances to be evenly distributed if your applications require high availability.

    To get a list of fault domains, use the ListFaultDomains operation in the Identity and Access Management Service API.

    Example: [FAULT-DOMAIN-1, FAULT-DOMAIN-2, FAULT-DOMAIN-3]

    primarySubnetId string
    (Updatable) The OCID of the primary subnet to place instances. This field is deprecated. Use primaryVnicSubnets instead to set VNIC data for instances in the pool.
    primaryVnicSubnets InstancePoolPlacementConfigurationPrimaryVnicSubnets
    (Updatable) Details about the IPv6 primary subnet.
    secondaryVnicSubnets InstancePoolPlacementConfigurationSecondaryVnicSubnet[]
    (Updatable) The set of secondary VNIC data for instances in the pool.
    availability_domain str
    (Updatable) The availability domain to place instances. Example: Uocm:PHX-AD-1
    fault_domains Sequence[str]

    (Updatable) The fault domains to place instances.

    If you don't provide any values, the system makes a best effort to distribute instances across all fault domains based on capacity.

    To distribute the instances evenly across selected fault domains, provide a set of fault domains. For example, you might want instances to be evenly distributed if your applications require high availability.

    To get a list of fault domains, use the ListFaultDomains operation in the Identity and Access Management Service API.

    Example: [FAULT-DOMAIN-1, FAULT-DOMAIN-2, FAULT-DOMAIN-3]

    primary_subnet_id str
    (Updatable) The OCID of the primary subnet to place instances. This field is deprecated. Use primaryVnicSubnets instead to set VNIC data for instances in the pool.
    primary_vnic_subnets core.InstancePoolPlacementConfigurationPrimaryVnicSubnets
    (Updatable) Details about the IPv6 primary subnet.
    secondary_vnic_subnets Sequence[core.InstancePoolPlacementConfigurationSecondaryVnicSubnet]
    (Updatable) The set of secondary VNIC data for instances in the pool.
    availabilityDomain String
    (Updatable) The availability domain to place instances. Example: Uocm:PHX-AD-1
    faultDomains List<String>

    (Updatable) The fault domains to place instances.

    If you don't provide any values, the system makes a best effort to distribute instances across all fault domains based on capacity.

    To distribute the instances evenly across selected fault domains, provide a set of fault domains. For example, you might want instances to be evenly distributed if your applications require high availability.

    To get a list of fault domains, use the ListFaultDomains operation in the Identity and Access Management Service API.

    Example: [FAULT-DOMAIN-1, FAULT-DOMAIN-2, FAULT-DOMAIN-3]

    primarySubnetId String
    (Updatable) The OCID of the primary subnet to place instances. This field is deprecated. Use primaryVnicSubnets instead to set VNIC data for instances in the pool.
    primaryVnicSubnets Property Map
    (Updatable) Details about the IPv6 primary subnet.
    secondaryVnicSubnets List<Property Map>
    (Updatable) The set of secondary VNIC data for instances in the pool.

    InstancePoolPlacementConfigurationPrimaryVnicSubnets, InstancePoolPlacementConfigurationPrimaryVnicSubnetsArgs

    SubnetId string
    (Updatable) The subnet OCID for the secondary VNIC.
    Ipv6addressIpv6subnetCidrPairDetails List<InstancePoolPlacementConfigurationPrimaryVnicSubnetsIpv6addressIpv6subnetCidrPairDetail>
    (Updatable) A list of IPv6 prefix ranges from which the VNIC should be assigned an IPv6 address. You can provide only the prefix ranges and Oracle Cloud Infrastructure will select an available address from the range. You can optionally choose to leave the prefix range empty and instead provide the specific IPv6 address that should be used from within that range.
    IsAssignIpv6ip bool
    (Updatable) Whether to allocate an IPv6 address at instance and VNIC creation from an IPv6 enabled subnet. Default: False. When provided you may optionally provide an IPv6 prefix (ipv6SubnetCidr) of your choice to assign the IPv6 address from. If ipv6SubnetCidr is not provided then an IPv6 prefix is chosen for you.
    SubnetId string
    (Updatable) The subnet OCID for the secondary VNIC.
    Ipv6addressIpv6subnetCidrPairDetails []InstancePoolPlacementConfigurationPrimaryVnicSubnetsIpv6addressIpv6subnetCidrPairDetail
    (Updatable) A list of IPv6 prefix ranges from which the VNIC should be assigned an IPv6 address. You can provide only the prefix ranges and Oracle Cloud Infrastructure will select an available address from the range. You can optionally choose to leave the prefix range empty and instead provide the specific IPv6 address that should be used from within that range.
    IsAssignIpv6ip bool
    (Updatable) Whether to allocate an IPv6 address at instance and VNIC creation from an IPv6 enabled subnet. Default: False. When provided you may optionally provide an IPv6 prefix (ipv6SubnetCidr) of your choice to assign the IPv6 address from. If ipv6SubnetCidr is not provided then an IPv6 prefix is chosen for you.
    subnetId String
    (Updatable) The subnet OCID for the secondary VNIC.
    ipv6addressIpv6subnetCidrPairDetails List<InstancePoolPlacementConfigurationPrimaryVnicSubnetsIpv6addressIpv6subnetCidrPairDetail>
    (Updatable) A list of IPv6 prefix ranges from which the VNIC should be assigned an IPv6 address. You can provide only the prefix ranges and Oracle Cloud Infrastructure will select an available address from the range. You can optionally choose to leave the prefix range empty and instead provide the specific IPv6 address that should be used from within that range.
    isAssignIpv6ip Boolean
    (Updatable) Whether to allocate an IPv6 address at instance and VNIC creation from an IPv6 enabled subnet. Default: False. When provided you may optionally provide an IPv6 prefix (ipv6SubnetCidr) of your choice to assign the IPv6 address from. If ipv6SubnetCidr is not provided then an IPv6 prefix is chosen for you.
    subnetId string
    (Updatable) The subnet OCID for the secondary VNIC.
    ipv6addressIpv6subnetCidrPairDetails InstancePoolPlacementConfigurationPrimaryVnicSubnetsIpv6addressIpv6subnetCidrPairDetail[]
    (Updatable) A list of IPv6 prefix ranges from which the VNIC should be assigned an IPv6 address. You can provide only the prefix ranges and Oracle Cloud Infrastructure will select an available address from the range. You can optionally choose to leave the prefix range empty and instead provide the specific IPv6 address that should be used from within that range.
    isAssignIpv6ip boolean
    (Updatable) Whether to allocate an IPv6 address at instance and VNIC creation from an IPv6 enabled subnet. Default: False. When provided you may optionally provide an IPv6 prefix (ipv6SubnetCidr) of your choice to assign the IPv6 address from. If ipv6SubnetCidr is not provided then an IPv6 prefix is chosen for you.
    subnet_id str
    (Updatable) The subnet OCID for the secondary VNIC.
    ipv6address_ipv6subnet_cidr_pair_details Sequence[core.InstancePoolPlacementConfigurationPrimaryVnicSubnetsIpv6addressIpv6subnetCidrPairDetail]
    (Updatable) A list of IPv6 prefix ranges from which the VNIC should be assigned an IPv6 address. You can provide only the prefix ranges and Oracle Cloud Infrastructure will select an available address from the range. You can optionally choose to leave the prefix range empty and instead provide the specific IPv6 address that should be used from within that range.
    is_assign_ipv6ip bool
    (Updatable) Whether to allocate an IPv6 address at instance and VNIC creation from an IPv6 enabled subnet. Default: False. When provided you may optionally provide an IPv6 prefix (ipv6SubnetCidr) of your choice to assign the IPv6 address from. If ipv6SubnetCidr is not provided then an IPv6 prefix is chosen for you.
    subnetId String
    (Updatable) The subnet OCID for the secondary VNIC.
    ipv6addressIpv6subnetCidrPairDetails List<Property Map>
    (Updatable) A list of IPv6 prefix ranges from which the VNIC should be assigned an IPv6 address. You can provide only the prefix ranges and Oracle Cloud Infrastructure will select an available address from the range. You can optionally choose to leave the prefix range empty and instead provide the specific IPv6 address that should be used from within that range.
    isAssignIpv6ip Boolean
    (Updatable) Whether to allocate an IPv6 address at instance and VNIC creation from an IPv6 enabled subnet. Default: False. When provided you may optionally provide an IPv6 prefix (ipv6SubnetCidr) of your choice to assign the IPv6 address from. If ipv6SubnetCidr is not provided then an IPv6 prefix is chosen for you.

    InstancePoolPlacementConfigurationPrimaryVnicSubnetsIpv6addressIpv6subnetCidrPairDetail, InstancePoolPlacementConfigurationPrimaryVnicSubnetsIpv6addressIpv6subnetCidrPairDetailArgs

    Ipv6subnetCidr string
    (Updatable) Optional. Used to disambiguate which subnet prefix should be used to create an IPv6 allocation.
    Ipv6subnetCidr string
    (Updatable) Optional. Used to disambiguate which subnet prefix should be used to create an IPv6 allocation.
    ipv6subnetCidr String
    (Updatable) Optional. Used to disambiguate which subnet prefix should be used to create an IPv6 allocation.
    ipv6subnetCidr string
    (Updatable) Optional. Used to disambiguate which subnet prefix should be used to create an IPv6 allocation.
    ipv6subnet_cidr str
    (Updatable) Optional. Used to disambiguate which subnet prefix should be used to create an IPv6 allocation.
    ipv6subnetCidr String
    (Updatable) Optional. Used to disambiguate which subnet prefix should be used to create an IPv6 allocation.

    InstancePoolPlacementConfigurationSecondaryVnicSubnet, InstancePoolPlacementConfigurationSecondaryVnicSubnetArgs

    SubnetId string
    (Updatable) The subnet OCID for the secondary VNIC.
    DisplayName string
    (Updatable) The display name of the VNIC. This is also used to match against the instance configuration defined secondary VNIC.
    Ipv6addressIpv6subnetCidrPairDetails List<InstancePoolPlacementConfigurationSecondaryVnicSubnetIpv6addressIpv6subnetCidrPairDetail>
    (Updatable) A list of IPv6 prefix ranges from which the VNIC should be assigned an IPv6 address. You can provide only the prefix ranges and Oracle Cloud Infrastructure will select an available address from the range. You can optionally choose to leave the prefix range empty and instead provide the specific IPv6 address that should be used from within that range.
    IsAssignIpv6ip bool
    (Updatable) Whether to allocate an IPv6 address at instance and VNIC creation from an IPv6 enabled subnet. Default: False. When provided you may optionally provide an IPv6 prefix (ipv6SubnetCidr) of your choice to assign the IPv6 address from. If ipv6SubnetCidr is not provided then an IPv6 prefix is chosen for you.
    SubnetId string
    (Updatable) The subnet OCID for the secondary VNIC.
    DisplayName string
    (Updatable) The display name of the VNIC. This is also used to match against the instance configuration defined secondary VNIC.
    Ipv6addressIpv6subnetCidrPairDetails []InstancePoolPlacementConfigurationSecondaryVnicSubnetIpv6addressIpv6subnetCidrPairDetail
    (Updatable) A list of IPv6 prefix ranges from which the VNIC should be assigned an IPv6 address. You can provide only the prefix ranges and Oracle Cloud Infrastructure will select an available address from the range. You can optionally choose to leave the prefix range empty and instead provide the specific IPv6 address that should be used from within that range.
    IsAssignIpv6ip bool
    (Updatable) Whether to allocate an IPv6 address at instance and VNIC creation from an IPv6 enabled subnet. Default: False. When provided you may optionally provide an IPv6 prefix (ipv6SubnetCidr) of your choice to assign the IPv6 address from. If ipv6SubnetCidr is not provided then an IPv6 prefix is chosen for you.
    subnetId String
    (Updatable) The subnet OCID for the secondary VNIC.
    displayName String
    (Updatable) The display name of the VNIC. This is also used to match against the instance configuration defined secondary VNIC.
    ipv6addressIpv6subnetCidrPairDetails List<InstancePoolPlacementConfigurationSecondaryVnicSubnetIpv6addressIpv6subnetCidrPairDetail>
    (Updatable) A list of IPv6 prefix ranges from which the VNIC should be assigned an IPv6 address. You can provide only the prefix ranges and Oracle Cloud Infrastructure will select an available address from the range. You can optionally choose to leave the prefix range empty and instead provide the specific IPv6 address that should be used from within that range.
    isAssignIpv6ip Boolean
    (Updatable) Whether to allocate an IPv6 address at instance and VNIC creation from an IPv6 enabled subnet. Default: False. When provided you may optionally provide an IPv6 prefix (ipv6SubnetCidr) of your choice to assign the IPv6 address from. If ipv6SubnetCidr is not provided then an IPv6 prefix is chosen for you.
    subnetId string
    (Updatable) The subnet OCID for the secondary VNIC.
    displayName string
    (Updatable) The display name of the VNIC. This is also used to match against the instance configuration defined secondary VNIC.
    ipv6addressIpv6subnetCidrPairDetails InstancePoolPlacementConfigurationSecondaryVnicSubnetIpv6addressIpv6subnetCidrPairDetail[]
    (Updatable) A list of IPv6 prefix ranges from which the VNIC should be assigned an IPv6 address. You can provide only the prefix ranges and Oracle Cloud Infrastructure will select an available address from the range. You can optionally choose to leave the prefix range empty and instead provide the specific IPv6 address that should be used from within that range.
    isAssignIpv6ip boolean
    (Updatable) Whether to allocate an IPv6 address at instance and VNIC creation from an IPv6 enabled subnet. Default: False. When provided you may optionally provide an IPv6 prefix (ipv6SubnetCidr) of your choice to assign the IPv6 address from. If ipv6SubnetCidr is not provided then an IPv6 prefix is chosen for you.
    subnet_id str
    (Updatable) The subnet OCID for the secondary VNIC.
    display_name str
    (Updatable) The display name of the VNIC. This is also used to match against the instance configuration defined secondary VNIC.
    ipv6address_ipv6subnet_cidr_pair_details Sequence[core.InstancePoolPlacementConfigurationSecondaryVnicSubnetIpv6addressIpv6subnetCidrPairDetail]
    (Updatable) A list of IPv6 prefix ranges from which the VNIC should be assigned an IPv6 address. You can provide only the prefix ranges and Oracle Cloud Infrastructure will select an available address from the range. You can optionally choose to leave the prefix range empty and instead provide the specific IPv6 address that should be used from within that range.
    is_assign_ipv6ip bool
    (Updatable) Whether to allocate an IPv6 address at instance and VNIC creation from an IPv6 enabled subnet. Default: False. When provided you may optionally provide an IPv6 prefix (ipv6SubnetCidr) of your choice to assign the IPv6 address from. If ipv6SubnetCidr is not provided then an IPv6 prefix is chosen for you.
    subnetId String
    (Updatable) The subnet OCID for the secondary VNIC.
    displayName String
    (Updatable) The display name of the VNIC. This is also used to match against the instance configuration defined secondary VNIC.
    ipv6addressIpv6subnetCidrPairDetails List<Property Map>
    (Updatable) A list of IPv6 prefix ranges from which the VNIC should be assigned an IPv6 address. You can provide only the prefix ranges and Oracle Cloud Infrastructure will select an available address from the range. You can optionally choose to leave the prefix range empty and instead provide the specific IPv6 address that should be used from within that range.
    isAssignIpv6ip Boolean
    (Updatable) Whether to allocate an IPv6 address at instance and VNIC creation from an IPv6 enabled subnet. Default: False. When provided you may optionally provide an IPv6 prefix (ipv6SubnetCidr) of your choice to assign the IPv6 address from. If ipv6SubnetCidr is not provided then an IPv6 prefix is chosen for you.

    InstancePoolPlacementConfigurationSecondaryVnicSubnetIpv6addressIpv6subnetCidrPairDetail, InstancePoolPlacementConfigurationSecondaryVnicSubnetIpv6addressIpv6subnetCidrPairDetailArgs

    Ipv6subnetCidr string
    (Updatable) Optional. Used to disambiguate which subnet prefix should be used to create an IPv6 allocation.
    Ipv6subnetCidr string
    (Updatable) Optional. Used to disambiguate which subnet prefix should be used to create an IPv6 allocation.
    ipv6subnetCidr String
    (Updatable) Optional. Used to disambiguate which subnet prefix should be used to create an IPv6 allocation.
    ipv6subnetCidr string
    (Updatable) Optional. Used to disambiguate which subnet prefix should be used to create an IPv6 allocation.
    ipv6subnet_cidr str
    (Updatable) Optional. Used to disambiguate which subnet prefix should be used to create an IPv6 allocation.
    ipv6subnetCidr String
    (Updatable) Optional. Used to disambiguate which subnet prefix should be used to create an IPv6 allocation.

    Import

    InstancePools can be imported using the id, e.g.

    $ pulumi import oci:Core/instancePool:InstancePool test_instance_pool "id"
    

    To learn more about importing existing cloud resources, see Importing resources.

    Package Details

    Repository
    oci pulumi/pulumi-oci
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the oci Terraform Provider.
    oci logo
    Oracle Cloud Infrastructure v2.17.0 published on Friday, Nov 15, 2024 by Pulumi