1. Packages
  2. Ionoscloud Provider
  3. API Docs
  4. TargetGroup
ionoscloud 6.7.6 published on Monday, Apr 14, 2025 by ionos-cloud

ionoscloud.TargetGroup

Explore with Pulumi AI

ionoscloud logo
ionoscloud 6.7.6 published on Monday, Apr 14, 2025 by ionos-cloud

    Manages a Target Group on IonosCloud.

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as ionoscloud from "@pulumi/ionoscloud";
    
    const example = new ionoscloud.TargetGroup("example", {
        algorithm: "ROUND_ROBIN",
        healthCheck: {
            checkInterval: 50000,
            checkTimeout: 5000,
            retries: 2,
        },
        httpHealthCheck: {
            matchType: "STATUS_CODE",
            method: "GET",
            negate: true,
            path: "/.",
            regex: true,
            response: "200",
        },
        protocol: "HTTP",
        protocolVersion: "HTTP1",
        targets: [
            {
                healthCheckEnabled: true,
                ip: "22.231.2.2",
                maintenanceEnabled: false,
                port: 8080,
                proxyProtocol: "v2ssl",
                weight: 1,
            },
            {
                healthCheckEnabled: false,
                ip: "22.231.2.3",
                maintenanceEnabled: false,
                port: 8081,
                proxyProtocol: "v2",
                weight: 124,
            },
        ],
    });
    
    import pulumi
    import pulumi_ionoscloud as ionoscloud
    
    example = ionoscloud.TargetGroup("example",
        algorithm="ROUND_ROBIN",
        health_check={
            "check_interval": 50000,
            "check_timeout": 5000,
            "retries": 2,
        },
        http_health_check={
            "match_type": "STATUS_CODE",
            "method": "GET",
            "negate": True,
            "path": "/.",
            "regex": True,
            "response": "200",
        },
        protocol="HTTP",
        protocol_version="HTTP1",
        targets=[
            {
                "health_check_enabled": True,
                "ip": "22.231.2.2",
                "maintenance_enabled": False,
                "port": 8080,
                "proxy_protocol": "v2ssl",
                "weight": 1,
            },
            {
                "health_check_enabled": False,
                "ip": "22.231.2.3",
                "maintenance_enabled": False,
                "port": 8081,
                "proxy_protocol": "v2",
                "weight": 124,
            },
        ])
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-terraform-provider/sdks/go/ionoscloud/v6/ionoscloud"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := ionoscloud.NewTargetGroup(ctx, "example", &ionoscloud.TargetGroupArgs{
    			Algorithm: pulumi.String("ROUND_ROBIN"),
    			HealthCheck: &ionoscloud.TargetGroupHealthCheckArgs{
    				CheckInterval: pulumi.Float64(50000),
    				CheckTimeout:  pulumi.Float64(5000),
    				Retries:       pulumi.Float64(2),
    			},
    			HttpHealthCheck: &ionoscloud.TargetGroupHttpHealthCheckArgs{
    				MatchType: pulumi.String("STATUS_CODE"),
    				Method:    pulumi.String("GET"),
    				Negate:    pulumi.Bool(true),
    				Path:      pulumi.String("/."),
    				Regex:     pulumi.Bool(true),
    				Response:  pulumi.String("200"),
    			},
    			Protocol:        pulumi.String("HTTP"),
    			ProtocolVersion: pulumi.String("HTTP1"),
    			Targets: ionoscloud.TargetGroupTargetArray{
    				&ionoscloud.TargetGroupTargetArgs{
    					HealthCheckEnabled: pulumi.Bool(true),
    					Ip:                 pulumi.String("22.231.2.2"),
    					MaintenanceEnabled: pulumi.Bool(false),
    					Port:               pulumi.Float64(8080),
    					ProxyProtocol:      pulumi.String("v2ssl"),
    					Weight:             pulumi.Float64(1),
    				},
    				&ionoscloud.TargetGroupTargetArgs{
    					HealthCheckEnabled: pulumi.Bool(false),
    					Ip:                 pulumi.String("22.231.2.3"),
    					MaintenanceEnabled: pulumi.Bool(false),
    					Port:               pulumi.Float64(8081),
    					ProxyProtocol:      pulumi.String("v2"),
    					Weight:             pulumi.Float64(124),
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Ionoscloud = Pulumi.Ionoscloud;
    
    return await Deployment.RunAsync(() => 
    {
        var example = new Ionoscloud.TargetGroup("example", new()
        {
            Algorithm = "ROUND_ROBIN",
            HealthCheck = new Ionoscloud.Inputs.TargetGroupHealthCheckArgs
            {
                CheckInterval = 50000,
                CheckTimeout = 5000,
                Retries = 2,
            },
            HttpHealthCheck = new Ionoscloud.Inputs.TargetGroupHttpHealthCheckArgs
            {
                MatchType = "STATUS_CODE",
                Method = "GET",
                Negate = true,
                Path = "/.",
                Regex = true,
                Response = "200",
            },
            Protocol = "HTTP",
            ProtocolVersion = "HTTP1",
            Targets = new[]
            {
                new Ionoscloud.Inputs.TargetGroupTargetArgs
                {
                    HealthCheckEnabled = true,
                    Ip = "22.231.2.2",
                    MaintenanceEnabled = false,
                    Port = 8080,
                    ProxyProtocol = "v2ssl",
                    Weight = 1,
                },
                new Ionoscloud.Inputs.TargetGroupTargetArgs
                {
                    HealthCheckEnabled = false,
                    Ip = "22.231.2.3",
                    MaintenanceEnabled = false,
                    Port = 8081,
                    ProxyProtocol = "v2",
                    Weight = 124,
                },
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.ionoscloud.TargetGroup;
    import com.pulumi.ionoscloud.TargetGroupArgs;
    import com.pulumi.ionoscloud.inputs.TargetGroupHealthCheckArgs;
    import com.pulumi.ionoscloud.inputs.TargetGroupHttpHealthCheckArgs;
    import com.pulumi.ionoscloud.inputs.TargetGroupTargetArgs;
    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 example = new TargetGroup("example", TargetGroupArgs.builder()
                .algorithm("ROUND_ROBIN")
                .healthCheck(TargetGroupHealthCheckArgs.builder()
                    .checkInterval(50000)
                    .checkTimeout(5000)
                    .retries(2)
                    .build())
                .httpHealthCheck(TargetGroupHttpHealthCheckArgs.builder()
                    .matchType("STATUS_CODE")
                    .method("GET")
                    .negate(true)
                    .path("/.")
                    .regex(true)
                    .response("200")
                    .build())
                .protocol("HTTP")
                .protocolVersion("HTTP1")
                .targets(            
                    TargetGroupTargetArgs.builder()
                        .healthCheckEnabled(true)
                        .ip("22.231.2.2")
                        .maintenanceEnabled(false)
                        .port("8080")
                        .proxyProtocol("v2ssl")
                        .weight("1")
                        .build(),
                    TargetGroupTargetArgs.builder()
                        .healthCheckEnabled(false)
                        .ip("22.231.2.3")
                        .maintenanceEnabled(false)
                        .port("8081")
                        .proxyProtocol("v2")
                        .weight("124")
                        .build())
                .build());
    
        }
    }
    
    resources:
      example:
        type: ionoscloud:TargetGroup
        properties:
          algorithm: ROUND_ROBIN
          healthCheck:
            checkInterval: 50000
            checkTimeout: 5000
            retries: 2
          httpHealthCheck:
            matchType: STATUS_CODE
            method: GET
            negate: true
            path: /.
            regex: true
            response: '200'
          protocol: HTTP
          protocolVersion: HTTP1
          targets:
            - healthCheckEnabled: true
              ip: 22.231.2.2
              maintenanceEnabled: false
              port: '8080'
              proxyProtocol: v2ssl
              weight: '1'
            - healthCheckEnabled: false
              ip: 22.231.2.3
              maintenanceEnabled: false
              port: '8081'
              proxyProtocol: v2
              weight: '124'
    

    Create TargetGroup Resource

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

    Constructor syntax

    new TargetGroup(name: string, args: TargetGroupArgs, opts?: CustomResourceOptions);
    @overload
    def TargetGroup(resource_name: str,
                    args: TargetGroupArgs,
                    opts: Optional[ResourceOptions] = None)
    
    @overload
    def TargetGroup(resource_name: str,
                    opts: Optional[ResourceOptions] = None,
                    algorithm: Optional[str] = None,
                    protocol: Optional[str] = None,
                    protocol_version: Optional[str] = None,
                    health_check: Optional[TargetGroupHealthCheckArgs] = None,
                    http_health_check: Optional[TargetGroupHttpHealthCheckArgs] = None,
                    name: Optional[str] = None,
                    target_group_id: Optional[str] = None,
                    targets: Optional[Sequence[TargetGroupTargetArgs]] = None,
                    timeouts: Optional[TargetGroupTimeoutsArgs] = None)
    func NewTargetGroup(ctx *Context, name string, args TargetGroupArgs, opts ...ResourceOption) (*TargetGroup, error)
    public TargetGroup(string name, TargetGroupArgs args, CustomResourceOptions? opts = null)
    public TargetGroup(String name, TargetGroupArgs args)
    public TargetGroup(String name, TargetGroupArgs args, CustomResourceOptions options)
    
    type: ionoscloud:TargetGroup
    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 TargetGroupArgs
    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 TargetGroupArgs
    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 TargetGroupArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args TargetGroupArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args TargetGroupArgs
    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 targetGroupResource = new Ionoscloud.TargetGroup("targetGroupResource", new()
    {
        Algorithm = "string",
        Protocol = "string",
        ProtocolVersion = "string",
        HealthCheck = new Ionoscloud.Inputs.TargetGroupHealthCheckArgs
        {
            CheckInterval = 0,
            CheckTimeout = 0,
            Retries = 0,
        },
        HttpHealthCheck = new Ionoscloud.Inputs.TargetGroupHttpHealthCheckArgs
        {
            MatchType = "string",
            Response = "string",
            Method = "string",
            Negate = false,
            Path = "string",
            Regex = false,
        },
        Name = "string",
        TargetGroupId = "string",
        Targets = new[]
        {
            new Ionoscloud.Inputs.TargetGroupTargetArgs
            {
                Ip = "string",
                Port = 0,
                Weight = 0,
                HealthCheckEnabled = false,
                MaintenanceEnabled = false,
                ProxyProtocol = "string",
            },
        },
        Timeouts = new Ionoscloud.Inputs.TargetGroupTimeoutsArgs
        {
            Create = "string",
            Default = "string",
            Delete = "string",
            Update = "string",
        },
    });
    
    example, err := ionoscloud.NewTargetGroup(ctx, "targetGroupResource", &ionoscloud.TargetGroupArgs{
    	Algorithm:       pulumi.String("string"),
    	Protocol:        pulumi.String("string"),
    	ProtocolVersion: pulumi.String("string"),
    	HealthCheck: &ionoscloud.TargetGroupHealthCheckArgs{
    		CheckInterval: pulumi.Float64(0),
    		CheckTimeout:  pulumi.Float64(0),
    		Retries:       pulumi.Float64(0),
    	},
    	HttpHealthCheck: &ionoscloud.TargetGroupHttpHealthCheckArgs{
    		MatchType: pulumi.String("string"),
    		Response:  pulumi.String("string"),
    		Method:    pulumi.String("string"),
    		Negate:    pulumi.Bool(false),
    		Path:      pulumi.String("string"),
    		Regex:     pulumi.Bool(false),
    	},
    	Name:          pulumi.String("string"),
    	TargetGroupId: pulumi.String("string"),
    	Targets: ionoscloud.TargetGroupTargetArray{
    		&ionoscloud.TargetGroupTargetArgs{
    			Ip:                 pulumi.String("string"),
    			Port:               pulumi.Float64(0),
    			Weight:             pulumi.Float64(0),
    			HealthCheckEnabled: pulumi.Bool(false),
    			MaintenanceEnabled: pulumi.Bool(false),
    			ProxyProtocol:      pulumi.String("string"),
    		},
    	},
    	Timeouts: &ionoscloud.TargetGroupTimeoutsArgs{
    		Create:  pulumi.String("string"),
    		Default: pulumi.String("string"),
    		Delete:  pulumi.String("string"),
    		Update:  pulumi.String("string"),
    	},
    })
    
    var targetGroupResource = new TargetGroup("targetGroupResource", TargetGroupArgs.builder()
        .algorithm("string")
        .protocol("string")
        .protocolVersion("string")
        .healthCheck(TargetGroupHealthCheckArgs.builder()
            .checkInterval(0)
            .checkTimeout(0)
            .retries(0)
            .build())
        .httpHealthCheck(TargetGroupHttpHealthCheckArgs.builder()
            .matchType("string")
            .response("string")
            .method("string")
            .negate(false)
            .path("string")
            .regex(false)
            .build())
        .name("string")
        .targetGroupId("string")
        .targets(TargetGroupTargetArgs.builder()
            .ip("string")
            .port(0)
            .weight(0)
            .healthCheckEnabled(false)
            .maintenanceEnabled(false)
            .proxyProtocol("string")
            .build())
        .timeouts(TargetGroupTimeoutsArgs.builder()
            .create("string")
            .default_("string")
            .delete("string")
            .update("string")
            .build())
        .build());
    
    target_group_resource = ionoscloud.TargetGroup("targetGroupResource",
        algorithm="string",
        protocol="string",
        protocol_version="string",
        health_check={
            "check_interval": 0,
            "check_timeout": 0,
            "retries": 0,
        },
        http_health_check={
            "match_type": "string",
            "response": "string",
            "method": "string",
            "negate": False,
            "path": "string",
            "regex": False,
        },
        name="string",
        target_group_id="string",
        targets=[{
            "ip": "string",
            "port": 0,
            "weight": 0,
            "health_check_enabled": False,
            "maintenance_enabled": False,
            "proxy_protocol": "string",
        }],
        timeouts={
            "create": "string",
            "default": "string",
            "delete": "string",
            "update": "string",
        })
    
    const targetGroupResource = new ionoscloud.TargetGroup("targetGroupResource", {
        algorithm: "string",
        protocol: "string",
        protocolVersion: "string",
        healthCheck: {
            checkInterval: 0,
            checkTimeout: 0,
            retries: 0,
        },
        httpHealthCheck: {
            matchType: "string",
            response: "string",
            method: "string",
            negate: false,
            path: "string",
            regex: false,
        },
        name: "string",
        targetGroupId: "string",
        targets: [{
            ip: "string",
            port: 0,
            weight: 0,
            healthCheckEnabled: false,
            maintenanceEnabled: false,
            proxyProtocol: "string",
        }],
        timeouts: {
            create: "string",
            "default": "string",
            "delete": "string",
            update: "string",
        },
    });
    
    type: ionoscloud:TargetGroup
    properties:
        algorithm: string
        healthCheck:
            checkInterval: 0
            checkTimeout: 0
            retries: 0
        httpHealthCheck:
            matchType: string
            method: string
            negate: false
            path: string
            regex: false
            response: string
        name: string
        protocol: string
        protocolVersion: string
        targetGroupId: string
        targets:
            - healthCheckEnabled: false
              ip: string
              maintenanceEnabled: false
              port: 0
              proxyProtocol: string
              weight: 0
        timeouts:
            create: string
            default: string
            delete: string
            update: string
    

    TargetGroup 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 TargetGroup resource accepts the following input properties:

    Algorithm string
    [string] Balancing algorithm.
    Protocol string
    [string] Balancing protocol.
    ProtocolVersion string
    [string] The forwarding protocol version. Value is ignored when protocol is not 'HTTP'.
    HealthCheck TargetGroupHealthCheck
    Health check attributes for Target Group.
    HttpHealthCheck TargetGroupHttpHealthCheck
    Http health check attributes for Target Group
    Name string
    [string] The name of the target group.
    TargetGroupId string
    Targets List<TargetGroupTarget>
    [list] Array of items in the collection
    Timeouts TargetGroupTimeouts
    Algorithm string
    [string] Balancing algorithm.
    Protocol string
    [string] Balancing protocol.
    ProtocolVersion string
    [string] The forwarding protocol version. Value is ignored when protocol is not 'HTTP'.
    HealthCheck TargetGroupHealthCheckArgs
    Health check attributes for Target Group.
    HttpHealthCheck TargetGroupHttpHealthCheckArgs
    Http health check attributes for Target Group
    Name string
    [string] The name of the target group.
    TargetGroupId string
    Targets []TargetGroupTargetArgs
    [list] Array of items in the collection
    Timeouts TargetGroupTimeoutsArgs
    algorithm String
    [string] Balancing algorithm.
    protocol String
    [string] Balancing protocol.
    protocolVersion String
    [string] The forwarding protocol version. Value is ignored when protocol is not 'HTTP'.
    healthCheck TargetGroupHealthCheck
    Health check attributes for Target Group.
    httpHealthCheck TargetGroupHttpHealthCheck
    Http health check attributes for Target Group
    name String
    [string] The name of the target group.
    targetGroupId String
    targets List<TargetGroupTarget>
    [list] Array of items in the collection
    timeouts TargetGroupTimeouts
    algorithm string
    [string] Balancing algorithm.
    protocol string
    [string] Balancing protocol.
    protocolVersion string
    [string] The forwarding protocol version. Value is ignored when protocol is not 'HTTP'.
    healthCheck TargetGroupHealthCheck
    Health check attributes for Target Group.
    httpHealthCheck TargetGroupHttpHealthCheck
    Http health check attributes for Target Group
    name string
    [string] The name of the target group.
    targetGroupId string
    targets TargetGroupTarget[]
    [list] Array of items in the collection
    timeouts TargetGroupTimeouts
    algorithm str
    [string] Balancing algorithm.
    protocol str
    [string] Balancing protocol.
    protocol_version str
    [string] The forwarding protocol version. Value is ignored when protocol is not 'HTTP'.
    health_check TargetGroupHealthCheckArgs
    Health check attributes for Target Group.
    http_health_check TargetGroupHttpHealthCheckArgs
    Http health check attributes for Target Group
    name str
    [string] The name of the target group.
    target_group_id str
    targets Sequence[TargetGroupTargetArgs]
    [list] Array of items in the collection
    timeouts TargetGroupTimeoutsArgs
    algorithm String
    [string] Balancing algorithm.
    protocol String
    [string] Balancing protocol.
    protocolVersion String
    [string] The forwarding protocol version. Value is ignored when protocol is not 'HTTP'.
    healthCheck Property Map
    Health check attributes for Target Group.
    httpHealthCheck Property Map
    Http health check attributes for Target Group
    name String
    [string] The name of the target group.
    targetGroupId String
    targets List<Property Map>
    [list] Array of items in the collection
    timeouts Property Map

    Outputs

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

    Id string
    The provider-assigned unique ID for this managed resource.
    Id string
    The provider-assigned unique ID for this managed resource.
    id String
    The provider-assigned unique ID for this managed resource.
    id string
    The provider-assigned unique ID for this managed resource.
    id str
    The provider-assigned unique ID for this managed resource.
    id String
    The provider-assigned unique ID for this managed resource.

    Look up Existing TargetGroup Resource

    Get an existing TargetGroup 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?: TargetGroupState, opts?: CustomResourceOptions): TargetGroup
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            algorithm: Optional[str] = None,
            health_check: Optional[TargetGroupHealthCheckArgs] = None,
            http_health_check: Optional[TargetGroupHttpHealthCheckArgs] = None,
            name: Optional[str] = None,
            protocol: Optional[str] = None,
            protocol_version: Optional[str] = None,
            target_group_id: Optional[str] = None,
            targets: Optional[Sequence[TargetGroupTargetArgs]] = None,
            timeouts: Optional[TargetGroupTimeoutsArgs] = None) -> TargetGroup
    func GetTargetGroup(ctx *Context, name string, id IDInput, state *TargetGroupState, opts ...ResourceOption) (*TargetGroup, error)
    public static TargetGroup Get(string name, Input<string> id, TargetGroupState? state, CustomResourceOptions? opts = null)
    public static TargetGroup get(String name, Output<String> id, TargetGroupState state, CustomResourceOptions options)
    resources:  _:    type: ionoscloud:TargetGroup    get:      id: ${id}
    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:
    Algorithm string
    [string] Balancing algorithm.
    HealthCheck TargetGroupHealthCheck
    Health check attributes for Target Group.
    HttpHealthCheck TargetGroupHttpHealthCheck
    Http health check attributes for Target Group
    Name string
    [string] The name of the target group.
    Protocol string
    [string] Balancing protocol.
    ProtocolVersion string
    [string] The forwarding protocol version. Value is ignored when protocol is not 'HTTP'.
    TargetGroupId string
    Targets List<TargetGroupTarget>
    [list] Array of items in the collection
    Timeouts TargetGroupTimeouts
    Algorithm string
    [string] Balancing algorithm.
    HealthCheck TargetGroupHealthCheckArgs
    Health check attributes for Target Group.
    HttpHealthCheck TargetGroupHttpHealthCheckArgs
    Http health check attributes for Target Group
    Name string
    [string] The name of the target group.
    Protocol string
    [string] Balancing protocol.
    ProtocolVersion string
    [string] The forwarding protocol version. Value is ignored when protocol is not 'HTTP'.
    TargetGroupId string
    Targets []TargetGroupTargetArgs
    [list] Array of items in the collection
    Timeouts TargetGroupTimeoutsArgs
    algorithm String
    [string] Balancing algorithm.
    healthCheck TargetGroupHealthCheck
    Health check attributes for Target Group.
    httpHealthCheck TargetGroupHttpHealthCheck
    Http health check attributes for Target Group
    name String
    [string] The name of the target group.
    protocol String
    [string] Balancing protocol.
    protocolVersion String
    [string] The forwarding protocol version. Value is ignored when protocol is not 'HTTP'.
    targetGroupId String
    targets List<TargetGroupTarget>
    [list] Array of items in the collection
    timeouts TargetGroupTimeouts
    algorithm string
    [string] Balancing algorithm.
    healthCheck TargetGroupHealthCheck
    Health check attributes for Target Group.
    httpHealthCheck TargetGroupHttpHealthCheck
    Http health check attributes for Target Group
    name string
    [string] The name of the target group.
    protocol string
    [string] Balancing protocol.
    protocolVersion string
    [string] The forwarding protocol version. Value is ignored when protocol is not 'HTTP'.
    targetGroupId string
    targets TargetGroupTarget[]
    [list] Array of items in the collection
    timeouts TargetGroupTimeouts
    algorithm str
    [string] Balancing algorithm.
    health_check TargetGroupHealthCheckArgs
    Health check attributes for Target Group.
    http_health_check TargetGroupHttpHealthCheckArgs
    Http health check attributes for Target Group
    name str
    [string] The name of the target group.
    protocol str
    [string] Balancing protocol.
    protocol_version str
    [string] The forwarding protocol version. Value is ignored when protocol is not 'HTTP'.
    target_group_id str
    targets Sequence[TargetGroupTargetArgs]
    [list] Array of items in the collection
    timeouts TargetGroupTimeoutsArgs
    algorithm String
    [string] Balancing algorithm.
    healthCheck Property Map
    Health check attributes for Target Group.
    httpHealthCheck Property Map
    Http health check attributes for Target Group
    name String
    [string] The name of the target group.
    protocol String
    [string] Balancing protocol.
    protocolVersion String
    [string] The forwarding protocol version. Value is ignored when protocol is not 'HTTP'.
    targetGroupId String
    targets List<Property Map>
    [list] Array of items in the collection
    timeouts Property Map

    Supporting Types

    TargetGroupHealthCheck, TargetGroupHealthCheckArgs

    CheckInterval double
    [int] The interval in milliseconds between consecutive health checks; default is 2000.
    CheckTimeout double
    [int] The maximum time in milliseconds to wait for a target to respond to a check. For target VMs with 'Check Interval' set, the lesser of the two values is used once the TCP connection is established.
    Retries double
    [int] The maximum number of attempts to reconnect to a target after a connection failure. Valid range is 0 to 65535, and default is three reconnection.
    CheckInterval float64
    [int] The interval in milliseconds between consecutive health checks; default is 2000.
    CheckTimeout float64
    [int] The maximum time in milliseconds to wait for a target to respond to a check. For target VMs with 'Check Interval' set, the lesser of the two values is used once the TCP connection is established.
    Retries float64
    [int] The maximum number of attempts to reconnect to a target after a connection failure. Valid range is 0 to 65535, and default is three reconnection.
    checkInterval Double
    [int] The interval in milliseconds between consecutive health checks; default is 2000.
    checkTimeout Double
    [int] The maximum time in milliseconds to wait for a target to respond to a check. For target VMs with 'Check Interval' set, the lesser of the two values is used once the TCP connection is established.
    retries Double
    [int] The maximum number of attempts to reconnect to a target after a connection failure. Valid range is 0 to 65535, and default is three reconnection.
    checkInterval number
    [int] The interval in milliseconds between consecutive health checks; default is 2000.
    checkTimeout number
    [int] The maximum time in milliseconds to wait for a target to respond to a check. For target VMs with 'Check Interval' set, the lesser of the two values is used once the TCP connection is established.
    retries number
    [int] The maximum number of attempts to reconnect to a target after a connection failure. Valid range is 0 to 65535, and default is three reconnection.
    check_interval float
    [int] The interval in milliseconds between consecutive health checks; default is 2000.
    check_timeout float
    [int] The maximum time in milliseconds to wait for a target to respond to a check. For target VMs with 'Check Interval' set, the lesser of the two values is used once the TCP connection is established.
    retries float
    [int] The maximum number of attempts to reconnect to a target after a connection failure. Valid range is 0 to 65535, and default is three reconnection.
    checkInterval Number
    [int] The interval in milliseconds between consecutive health checks; default is 2000.
    checkTimeout Number
    [int] The maximum time in milliseconds to wait for a target to respond to a check. For target VMs with 'Check Interval' set, the lesser of the two values is used once the TCP connection is established.
    retries Number
    [int] The maximum number of attempts to reconnect to a target after a connection failure. Valid range is 0 to 65535, and default is three reconnection.

    TargetGroupHttpHealthCheck, TargetGroupHttpHealthCheckArgs

    MatchType string
    [string]
    Response string
    [string] The response returned by the request, depending on the match type.
    Method string
    [string] The method for the HTTP health check.
    Negate bool
    [bool]
    Path string
    [string] The path (destination URL) for the HTTP health check request; the default is /.
    Regex bool
    [bool]
    MatchType string
    [string]
    Response string
    [string] The response returned by the request, depending on the match type.
    Method string
    [string] The method for the HTTP health check.
    Negate bool
    [bool]
    Path string
    [string] The path (destination URL) for the HTTP health check request; the default is /.
    Regex bool
    [bool]
    matchType String
    [string]
    response String
    [string] The response returned by the request, depending on the match type.
    method String
    [string] The method for the HTTP health check.
    negate Boolean
    [bool]
    path String
    [string] The path (destination URL) for the HTTP health check request; the default is /.
    regex Boolean
    [bool]
    matchType string
    [string]
    response string
    [string] The response returned by the request, depending on the match type.
    method string
    [string] The method for the HTTP health check.
    negate boolean
    [bool]
    path string
    [string] The path (destination URL) for the HTTP health check request; the default is /.
    regex boolean
    [bool]
    match_type str
    [string]
    response str
    [string] The response returned by the request, depending on the match type.
    method str
    [string] The method for the HTTP health check.
    negate bool
    [bool]
    path str
    [string] The path (destination URL) for the HTTP health check request; the default is /.
    regex bool
    [bool]
    matchType String
    [string]
    response String
    [string] The response returned by the request, depending on the match type.
    method String
    [string] The method for the HTTP health check.
    negate Boolean
    [bool]
    path String
    [string] The path (destination URL) for the HTTP health check request; the default is /.
    regex Boolean
    [bool]

    TargetGroupTarget, TargetGroupTargetArgs

    Ip string
    [string] The IP of the balanced target VM.
    Port double
    [int] The port of the balanced target service; valid range is 1 to 65535.
    Weight double
    [int] Traffic is distributed in proportion to target weight, relative to the combined weight of all targets. A target with higher weight receives a greater share of traffic. Valid range is 0 to 256 and default is 1; targets with weight of 0 do not participate in load balancing but still accept persistent connections. It is best use values in the middle of the range to leave room for later adjustments.
    HealthCheckEnabled bool
    [bool] Makes the target available only if it accepts periodic health check TCP connection attempts; when turned off, the target is considered always available. The health check only consists of a connection attempt to the address and port of the target. Default is True.
    MaintenanceEnabled bool
    [bool] Maintenance mode prevents the target from receiving balanced traffic.
    ProxyProtocol string
    [string] The proxy protocol version. Accepted values are none, v1, v2, v2ssl. If unspecified, the default value of none is used.
    Ip string
    [string] The IP of the balanced target VM.
    Port float64
    [int] The port of the balanced target service; valid range is 1 to 65535.
    Weight float64
    [int] Traffic is distributed in proportion to target weight, relative to the combined weight of all targets. A target with higher weight receives a greater share of traffic. Valid range is 0 to 256 and default is 1; targets with weight of 0 do not participate in load balancing but still accept persistent connections. It is best use values in the middle of the range to leave room for later adjustments.
    HealthCheckEnabled bool
    [bool] Makes the target available only if it accepts periodic health check TCP connection attempts; when turned off, the target is considered always available. The health check only consists of a connection attempt to the address and port of the target. Default is True.
    MaintenanceEnabled bool
    [bool] Maintenance mode prevents the target from receiving balanced traffic.
    ProxyProtocol string
    [string] The proxy protocol version. Accepted values are none, v1, v2, v2ssl. If unspecified, the default value of none is used.
    ip String
    [string] The IP of the balanced target VM.
    port Double
    [int] The port of the balanced target service; valid range is 1 to 65535.
    weight Double
    [int] Traffic is distributed in proportion to target weight, relative to the combined weight of all targets. A target with higher weight receives a greater share of traffic. Valid range is 0 to 256 and default is 1; targets with weight of 0 do not participate in load balancing but still accept persistent connections. It is best use values in the middle of the range to leave room for later adjustments.
    healthCheckEnabled Boolean
    [bool] Makes the target available only if it accepts periodic health check TCP connection attempts; when turned off, the target is considered always available. The health check only consists of a connection attempt to the address and port of the target. Default is True.
    maintenanceEnabled Boolean
    [bool] Maintenance mode prevents the target from receiving balanced traffic.
    proxyProtocol String
    [string] The proxy protocol version. Accepted values are none, v1, v2, v2ssl. If unspecified, the default value of none is used.
    ip string
    [string] The IP of the balanced target VM.
    port number
    [int] The port of the balanced target service; valid range is 1 to 65535.
    weight number
    [int] Traffic is distributed in proportion to target weight, relative to the combined weight of all targets. A target with higher weight receives a greater share of traffic. Valid range is 0 to 256 and default is 1; targets with weight of 0 do not participate in load balancing but still accept persistent connections. It is best use values in the middle of the range to leave room for later adjustments.
    healthCheckEnabled boolean
    [bool] Makes the target available only if it accepts periodic health check TCP connection attempts; when turned off, the target is considered always available. The health check only consists of a connection attempt to the address and port of the target. Default is True.
    maintenanceEnabled boolean
    [bool] Maintenance mode prevents the target from receiving balanced traffic.
    proxyProtocol string
    [string] The proxy protocol version. Accepted values are none, v1, v2, v2ssl. If unspecified, the default value of none is used.
    ip str
    [string] The IP of the balanced target VM.
    port float
    [int] The port of the balanced target service; valid range is 1 to 65535.
    weight float
    [int] Traffic is distributed in proportion to target weight, relative to the combined weight of all targets. A target with higher weight receives a greater share of traffic. Valid range is 0 to 256 and default is 1; targets with weight of 0 do not participate in load balancing but still accept persistent connections. It is best use values in the middle of the range to leave room for later adjustments.
    health_check_enabled bool
    [bool] Makes the target available only if it accepts periodic health check TCP connection attempts; when turned off, the target is considered always available. The health check only consists of a connection attempt to the address and port of the target. Default is True.
    maintenance_enabled bool
    [bool] Maintenance mode prevents the target from receiving balanced traffic.
    proxy_protocol str
    [string] The proxy protocol version. Accepted values are none, v1, v2, v2ssl. If unspecified, the default value of none is used.
    ip String
    [string] The IP of the balanced target VM.
    port Number
    [int] The port of the balanced target service; valid range is 1 to 65535.
    weight Number
    [int] Traffic is distributed in proportion to target weight, relative to the combined weight of all targets. A target with higher weight receives a greater share of traffic. Valid range is 0 to 256 and default is 1; targets with weight of 0 do not participate in load balancing but still accept persistent connections. It is best use values in the middle of the range to leave room for later adjustments.
    healthCheckEnabled Boolean
    [bool] Makes the target available only if it accepts periodic health check TCP connection attempts; when turned off, the target is considered always available. The health check only consists of a connection attempt to the address and port of the target. Default is True.
    maintenanceEnabled Boolean
    [bool] Maintenance mode prevents the target from receiving balanced traffic.
    proxyProtocol String
    [string] The proxy protocol version. Accepted values are none, v1, v2, v2ssl. If unspecified, the default value of none is used.

    TargetGroupTimeouts, TargetGroupTimeoutsArgs

    Create string
    Default string
    Delete string
    Update string
    Create string
    Default string
    Delete string
    Update string
    create String
    default_ String
    delete String
    update String
    create string
    default string
    delete string
    update string
    create String
    default String
    delete String
    update String

    Import

    Resource Target Group can be imported using the resource id, e.g.

    $ pulumi import ionoscloud:index/targetGroup:TargetGroup myTargetGroup target group uuid
    

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

    Package Details

    Repository
    ionoscloud ionos-cloud/terraform-provider-ionoscloud
    License
    Notes
    This Pulumi package is based on the ionoscloud Terraform Provider.
    ionoscloud logo
    ionoscloud 6.7.6 published on Monday, Apr 14, 2025 by ionos-cloud