ibm.CisGlobalLoadBalancer
Explore with Pulumi AI
Create, update, or delete an IBM CIS Global Load Balancer resource in a number of defined pools of origins, directs traffic to available origins and provides various options for geographically-aware load balancing. This resource is associated with an IBM Cloud Internet Services instance, a CIS Domain resource and CIS Origin pool resources. For more information, about Internet Services GLB, see GLB concepts.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as ibm from "@pulumi/ibm";
const exampleCisOriginPool = new ibm.CisOriginPool("exampleCisOriginPool", {
cisId: ibm_cis.instance.id,
origins: [{
name: "example-1",
address: "192.0.2.1",
enabled: false,
}],
});
// Define a global load balancer which directs traffic to defined origin pools
// In normal usage different pools would be set for data centers/availability zones and/or for different regions
// Within each availability zone or region we can define multiple pools in failover order
const exampleCisGlobalLoadBalancer = new ibm.CisGlobalLoadBalancer("exampleCisGlobalLoadBalancer", {
cisId: ibm_cis.instance.id,
domainId: ibm_cis_domain.example.id,
fallbackPoolId: exampleCisOriginPool.cisOriginPoolId,
defaultPoolIds: [exampleCisOriginPool.cisOriginPoolId],
description: "example load balancer using geo-balancing",
proxied: true,
steeringPolicy: "dynamic_latency",
regionPools: [{
region: "WEU",
poolIds: [exampleCisOriginPool.cisOriginPoolId],
}],
popPools: [{
pop: "LAX",
poolIds: [exampleCisOriginPool.cisOriginPoolId],
}],
});
import pulumi
import pulumi_ibm as ibm
example_cis_origin_pool = ibm.CisOriginPool("exampleCisOriginPool",
cis_id=ibm_cis["instance"]["id"],
origins=[{
"name": "example-1",
"address": "192.0.2.1",
"enabled": False,
}])
# Define a global load balancer which directs traffic to defined origin pools
# In normal usage different pools would be set for data centers/availability zones and/or for different regions
# Within each availability zone or region we can define multiple pools in failover order
example_cis_global_load_balancer = ibm.CisGlobalLoadBalancer("exampleCisGlobalLoadBalancer",
cis_id=ibm_cis["instance"]["id"],
domain_id=ibm_cis_domain["example"]["id"],
fallback_pool_id=example_cis_origin_pool.cis_origin_pool_id,
default_pool_ids=[example_cis_origin_pool.cis_origin_pool_id],
description="example load balancer using geo-balancing",
proxied=True,
steering_policy="dynamic_latency",
region_pools=[{
"region": "WEU",
"pool_ids": [example_cis_origin_pool.cis_origin_pool_id],
}],
pop_pools=[{
"pop": "LAX",
"pool_ids": [example_cis_origin_pool.cis_origin_pool_id],
}])
package main
import (
"github.com/pulumi/pulumi-terraform-provider/sdks/go/ibm/ibm"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
exampleCisOriginPool, err := ibm.NewCisOriginPool(ctx, "exampleCisOriginPool", &ibm.CisOriginPoolArgs{
CisId: pulumi.Any(ibm_cis.Instance.Id),
Origins: ibm.CisOriginPoolOriginArray{
&ibm.CisOriginPoolOriginArgs{
Name: pulumi.String("example-1"),
Address: pulumi.String("192.0.2.1"),
Enabled: pulumi.Bool(false),
},
},
})
if err != nil {
return err
}
// Define a global load balancer which directs traffic to defined origin pools
// In normal usage different pools would be set for data centers/availability zones and/or for different regions
// Within each availability zone or region we can define multiple pools in failover order
_, err = ibm.NewCisGlobalLoadBalancer(ctx, "exampleCisGlobalLoadBalancer", &ibm.CisGlobalLoadBalancerArgs{
CisId: pulumi.Any(ibm_cis.Instance.Id),
DomainId: pulumi.Any(ibm_cis_domain.Example.Id),
FallbackPoolId: exampleCisOriginPool.CisOriginPoolId,
DefaultPoolIds: pulumi.StringArray{
exampleCisOriginPool.CisOriginPoolId,
},
Description: pulumi.String("example load balancer using geo-balancing"),
Proxied: pulumi.Bool(true),
SteeringPolicy: pulumi.String("dynamic_latency"),
RegionPools: ibm.CisGlobalLoadBalancerRegionPoolArray{
&ibm.CisGlobalLoadBalancerRegionPoolArgs{
Region: pulumi.String("WEU"),
PoolIds: pulumi.StringArray{
exampleCisOriginPool.CisOriginPoolId,
},
},
},
PopPools: ibm.CisGlobalLoadBalancerPopPoolArray{
&ibm.CisGlobalLoadBalancerPopPoolArgs{
Pop: pulumi.String("LAX"),
PoolIds: pulumi.StringArray{
exampleCisOriginPool.CisOriginPoolId,
},
},
},
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Ibm = Pulumi.Ibm;
return await Deployment.RunAsync(() =>
{
var exampleCisOriginPool = new Ibm.CisOriginPool("exampleCisOriginPool", new()
{
CisId = ibm_cis.Instance.Id,
Origins = new[]
{
new Ibm.Inputs.CisOriginPoolOriginArgs
{
Name = "example-1",
Address = "192.0.2.1",
Enabled = false,
},
},
});
// Define a global load balancer which directs traffic to defined origin pools
// In normal usage different pools would be set for data centers/availability zones and/or for different regions
// Within each availability zone or region we can define multiple pools in failover order
var exampleCisGlobalLoadBalancer = new Ibm.CisGlobalLoadBalancer("exampleCisGlobalLoadBalancer", new()
{
CisId = ibm_cis.Instance.Id,
DomainId = ibm_cis_domain.Example.Id,
FallbackPoolId = exampleCisOriginPool.CisOriginPoolId,
DefaultPoolIds = new[]
{
exampleCisOriginPool.CisOriginPoolId,
},
Description = "example load balancer using geo-balancing",
Proxied = true,
SteeringPolicy = "dynamic_latency",
RegionPools = new[]
{
new Ibm.Inputs.CisGlobalLoadBalancerRegionPoolArgs
{
Region = "WEU",
PoolIds = new[]
{
exampleCisOriginPool.CisOriginPoolId,
},
},
},
PopPools = new[]
{
new Ibm.Inputs.CisGlobalLoadBalancerPopPoolArgs
{
Pop = "LAX",
PoolIds = new[]
{
exampleCisOriginPool.CisOriginPoolId,
},
},
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.ibm.CisOriginPool;
import com.pulumi.ibm.CisOriginPoolArgs;
import com.pulumi.ibm.inputs.CisOriginPoolOriginArgs;
import com.pulumi.ibm.CisGlobalLoadBalancer;
import com.pulumi.ibm.CisGlobalLoadBalancerArgs;
import com.pulumi.ibm.inputs.CisGlobalLoadBalancerRegionPoolArgs;
import com.pulumi.ibm.inputs.CisGlobalLoadBalancerPopPoolArgs;
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 exampleCisOriginPool = new CisOriginPool("exampleCisOriginPool", CisOriginPoolArgs.builder()
.cisId(ibm_cis.instance().id())
.origins(CisOriginPoolOriginArgs.builder()
.name("example-1")
.address("192.0.2.1")
.enabled(false)
.build())
.build());
// Define a global load balancer which directs traffic to defined origin pools
// In normal usage different pools would be set for data centers/availability zones and/or for different regions
// Within each availability zone or region we can define multiple pools in failover order
var exampleCisGlobalLoadBalancer = new CisGlobalLoadBalancer("exampleCisGlobalLoadBalancer", CisGlobalLoadBalancerArgs.builder()
.cisId(ibm_cis.instance().id())
.domainId(ibm_cis_domain.example().id())
.fallbackPoolId(exampleCisOriginPool.cisOriginPoolId())
.defaultPoolIds(exampleCisOriginPool.cisOriginPoolId())
.description("example load balancer using geo-balancing")
.proxied(true)
.steeringPolicy("dynamic_latency")
.regionPools(CisGlobalLoadBalancerRegionPoolArgs.builder()
.region("WEU")
.poolIds(exampleCisOriginPool.cisOriginPoolId())
.build())
.popPools(CisGlobalLoadBalancerPopPoolArgs.builder()
.pop("LAX")
.poolIds(exampleCisOriginPool.cisOriginPoolId())
.build())
.build());
}
}
resources:
# Define a global load balancer which directs traffic to defined origin pools
# In normal usage different pools would be set for data centers/availability zones and/or for different regions
# Within each availability zone or region we can define multiple pools in failover order
exampleCisGlobalLoadBalancer:
type: ibm:CisGlobalLoadBalancer
properties:
cisId: ${ibm_cis.instance.id}
domainId: ${ibm_cis_domain.example.id}
fallbackPoolId: ${exampleCisOriginPool.cisOriginPoolId}
defaultPoolIds:
- ${exampleCisOriginPool.cisOriginPoolId}
description: example load balancer using geo-balancing
proxied: true
steeringPolicy: dynamic_latency
regionPools:
- region: WEU
poolIds:
- ${exampleCisOriginPool.cisOriginPoolId}
popPools:
- pop: LAX
poolIds:
- ${exampleCisOriginPool.cisOriginPoolId}
exampleCisOriginPool:
type: ibm:CisOriginPool
properties:
cisId: ${ibm_cis.instance.id}
origins:
- name: example-1
address: 192.0.2.1
enabled: false
Create CisGlobalLoadBalancer Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new CisGlobalLoadBalancer(name: string, args: CisGlobalLoadBalancerArgs, opts?: CustomResourceOptions);
@overload
def CisGlobalLoadBalancer(resource_name: str,
args: CisGlobalLoadBalancerArgs,
opts: Optional[ResourceOptions] = None)
@overload
def CisGlobalLoadBalancer(resource_name: str,
opts: Optional[ResourceOptions] = None,
domain_id: Optional[str] = None,
cis_id: Optional[str] = None,
default_pool_ids: Optional[Sequence[str]] = None,
fallback_pool_id: Optional[str] = None,
description: Optional[str] = None,
enabled: Optional[bool] = None,
cis_global_load_balancer_id: Optional[str] = None,
name: Optional[str] = None,
pop_pools: Optional[Sequence[CisGlobalLoadBalancerPopPoolArgs]] = None,
proxied: Optional[bool] = None,
region_pools: Optional[Sequence[CisGlobalLoadBalancerRegionPoolArgs]] = None,
session_affinity: Optional[str] = None,
steering_policy: Optional[str] = None,
ttl: Optional[float] = None)
func NewCisGlobalLoadBalancer(ctx *Context, name string, args CisGlobalLoadBalancerArgs, opts ...ResourceOption) (*CisGlobalLoadBalancer, error)
public CisGlobalLoadBalancer(string name, CisGlobalLoadBalancerArgs args, CustomResourceOptions? opts = null)
public CisGlobalLoadBalancer(String name, CisGlobalLoadBalancerArgs args)
public CisGlobalLoadBalancer(String name, CisGlobalLoadBalancerArgs args, CustomResourceOptions options)
type: ibm:CisGlobalLoadBalancer
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 CisGlobalLoadBalancerArgs
- 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 CisGlobalLoadBalancerArgs
- 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 CisGlobalLoadBalancerArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args CisGlobalLoadBalancerArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args CisGlobalLoadBalancerArgs
- 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 cisGlobalLoadBalancerResource = new Ibm.CisGlobalLoadBalancer("cisGlobalLoadBalancerResource", new()
{
DomainId = "string",
CisId = "string",
DefaultPoolIds = new[]
{
"string",
},
FallbackPoolId = "string",
Description = "string",
Enabled = false,
CisGlobalLoadBalancerId = "string",
Name = "string",
PopPools = new[]
{
new Ibm.Inputs.CisGlobalLoadBalancerPopPoolArgs
{
PoolIds = new[]
{
"string",
},
Pop = "string",
},
},
Proxied = false,
RegionPools = new[]
{
new Ibm.Inputs.CisGlobalLoadBalancerRegionPoolArgs
{
PoolIds = new[]
{
"string",
},
Region = "string",
},
},
SessionAffinity = "string",
SteeringPolicy = "string",
Ttl = 0,
});
example, err := ibm.NewCisGlobalLoadBalancer(ctx, "cisGlobalLoadBalancerResource", &ibm.CisGlobalLoadBalancerArgs{
DomainId: pulumi.String("string"),
CisId: pulumi.String("string"),
DefaultPoolIds: pulumi.StringArray{
pulumi.String("string"),
},
FallbackPoolId: pulumi.String("string"),
Description: pulumi.String("string"),
Enabled: pulumi.Bool(false),
CisGlobalLoadBalancerId: pulumi.String("string"),
Name: pulumi.String("string"),
PopPools: ibm.CisGlobalLoadBalancerPopPoolArray{
&ibm.CisGlobalLoadBalancerPopPoolArgs{
PoolIds: pulumi.StringArray{
pulumi.String("string"),
},
Pop: pulumi.String("string"),
},
},
Proxied: pulumi.Bool(false),
RegionPools: ibm.CisGlobalLoadBalancerRegionPoolArray{
&ibm.CisGlobalLoadBalancerRegionPoolArgs{
PoolIds: pulumi.StringArray{
pulumi.String("string"),
},
Region: pulumi.String("string"),
},
},
SessionAffinity: pulumi.String("string"),
SteeringPolicy: pulumi.String("string"),
Ttl: pulumi.Float64(0),
})
var cisGlobalLoadBalancerResource = new CisGlobalLoadBalancer("cisGlobalLoadBalancerResource", CisGlobalLoadBalancerArgs.builder()
.domainId("string")
.cisId("string")
.defaultPoolIds("string")
.fallbackPoolId("string")
.description("string")
.enabled(false)
.cisGlobalLoadBalancerId("string")
.name("string")
.popPools(CisGlobalLoadBalancerPopPoolArgs.builder()
.poolIds("string")
.pop("string")
.build())
.proxied(false)
.regionPools(CisGlobalLoadBalancerRegionPoolArgs.builder()
.poolIds("string")
.region("string")
.build())
.sessionAffinity("string")
.steeringPolicy("string")
.ttl(0)
.build());
cis_global_load_balancer_resource = ibm.CisGlobalLoadBalancer("cisGlobalLoadBalancerResource",
domain_id="string",
cis_id="string",
default_pool_ids=["string"],
fallback_pool_id="string",
description="string",
enabled=False,
cis_global_load_balancer_id="string",
name="string",
pop_pools=[{
"pool_ids": ["string"],
"pop": "string",
}],
proxied=False,
region_pools=[{
"pool_ids": ["string"],
"region": "string",
}],
session_affinity="string",
steering_policy="string",
ttl=0)
const cisGlobalLoadBalancerResource = new ibm.CisGlobalLoadBalancer("cisGlobalLoadBalancerResource", {
domainId: "string",
cisId: "string",
defaultPoolIds: ["string"],
fallbackPoolId: "string",
description: "string",
enabled: false,
cisGlobalLoadBalancerId: "string",
name: "string",
popPools: [{
poolIds: ["string"],
pop: "string",
}],
proxied: false,
regionPools: [{
poolIds: ["string"],
region: "string",
}],
sessionAffinity: "string",
steeringPolicy: "string",
ttl: 0,
});
type: ibm:CisGlobalLoadBalancer
properties:
cisGlobalLoadBalancerId: string
cisId: string
defaultPoolIds:
- string
description: string
domainId: string
enabled: false
fallbackPoolId: string
name: string
popPools:
- poolIds:
- string
pop: string
proxied: false
regionPools:
- poolIds:
- string
region: string
sessionAffinity: string
steeringPolicy: string
ttl: 0
CisGlobalLoadBalancer 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 CisGlobalLoadBalancer resource accepts the following input properties:
- Cis
Id string - The ID of the IBM Cloud Internet Services instance.
- Default
Pool List<string>Ids - List of default Pool IDs
- Domain
Id string - The ID of the domain for which you want to add a global load balancer.
- Fallback
Pool stringId - The ID of the pool to use when all other pools are considered unhealthy.
- Cis
Global stringLoad Balancer Id - (String) The ID of the GLB.
- Description string
- A description of the global load balancer.
- Enabled bool
- If set to true, the load balancer is enabled and can receive network traffic. If set to false, the load balancer is not enabled.
- Name string
- The DNS name to associate with the load balancer. This value can be a hostname, like
www
, or the fully qualified domain name, such aswww.example.com
.example.com
is also accepted. - Pop
Pools List<CisGlobal Load Balancer Pop Pool> A set of mappings of the IBM Point-of-Presence (PoP) identifiers to the list of pool IDs (ordered by their failover priority) for the PoP (datacenter). This feature is only available to the enterprise customers.
Nested scheme for
pop_pools
:- Proxied bool
- Indicates if the host name receives origin protection by IBM Cloud Internet Services. The default value is false.
- Region
Pools List<CisGlobal Load Balancer Region Pool> A set of containing mappings of region and country codes to the list of pool of IDs. IDs are ordered by their failover priority.
Nested scheme for
region_pools
:- Session
Affinity string - Associates all requests from an end-user with a single origin. IBM sets a cookie on the initial response to the client, so that the consequent requests with the cookie in the request use the same origin, as long as it is available.
- Steering
Policy string - Steering Policy which allows off,geo,random,dynamic_latency.
- Ttl double
- The time to live (TTL) in seconds for how long the load balancer must cache a resolved IP address for a DNS entry before the load balancer must look up the IP address again. If your global load balancer is proxied, this value is automatically set and cannot be changed. If your global load balancer is not in proxy, you can enter a value that is 120 or greater.
- Cis
Id string - The ID of the IBM Cloud Internet Services instance.
- Default
Pool []stringIds - List of default Pool IDs
- Domain
Id string - The ID of the domain for which you want to add a global load balancer.
- Fallback
Pool stringId - The ID of the pool to use when all other pools are considered unhealthy.
- Cis
Global stringLoad Balancer Id - (String) The ID of the GLB.
- Description string
- A description of the global load balancer.
- Enabled bool
- If set to true, the load balancer is enabled and can receive network traffic. If set to false, the load balancer is not enabled.
- Name string
- The DNS name to associate with the load balancer. This value can be a hostname, like
www
, or the fully qualified domain name, such aswww.example.com
.example.com
is also accepted. - Pop
Pools []CisGlobal Load Balancer Pop Pool Args A set of mappings of the IBM Point-of-Presence (PoP) identifiers to the list of pool IDs (ordered by their failover priority) for the PoP (datacenter). This feature is only available to the enterprise customers.
Nested scheme for
pop_pools
:- Proxied bool
- Indicates if the host name receives origin protection by IBM Cloud Internet Services. The default value is false.
- Region
Pools []CisGlobal Load Balancer Region Pool Args A set of containing mappings of region and country codes to the list of pool of IDs. IDs are ordered by their failover priority.
Nested scheme for
region_pools
:- Session
Affinity string - Associates all requests from an end-user with a single origin. IBM sets a cookie on the initial response to the client, so that the consequent requests with the cookie in the request use the same origin, as long as it is available.
- Steering
Policy string - Steering Policy which allows off,geo,random,dynamic_latency.
- Ttl float64
- The time to live (TTL) in seconds for how long the load balancer must cache a resolved IP address for a DNS entry before the load balancer must look up the IP address again. If your global load balancer is proxied, this value is automatically set and cannot be changed. If your global load balancer is not in proxy, you can enter a value that is 120 or greater.
- cis
Id String - The ID of the IBM Cloud Internet Services instance.
- default
Pool List<String>Ids - List of default Pool IDs
- domain
Id String - The ID of the domain for which you want to add a global load balancer.
- fallback
Pool StringId - The ID of the pool to use when all other pools are considered unhealthy.
- cis
Global StringLoad Balancer Id - (String) The ID of the GLB.
- description String
- A description of the global load balancer.
- enabled Boolean
- If set to true, the load balancer is enabled and can receive network traffic. If set to false, the load balancer is not enabled.
- name String
- The DNS name to associate with the load balancer. This value can be a hostname, like
www
, or the fully qualified domain name, such aswww.example.com
.example.com
is also accepted. - pop
Pools List<CisGlobal Load Balancer Pop Pool> A set of mappings of the IBM Point-of-Presence (PoP) identifiers to the list of pool IDs (ordered by their failover priority) for the PoP (datacenter). This feature is only available to the enterprise customers.
Nested scheme for
pop_pools
:- proxied Boolean
- Indicates if the host name receives origin protection by IBM Cloud Internet Services. The default value is false.
- region
Pools List<CisGlobal Load Balancer Region Pool> A set of containing mappings of region and country codes to the list of pool of IDs. IDs are ordered by their failover priority.
Nested scheme for
region_pools
:- session
Affinity String - Associates all requests from an end-user with a single origin. IBM sets a cookie on the initial response to the client, so that the consequent requests with the cookie in the request use the same origin, as long as it is available.
- steering
Policy String - Steering Policy which allows off,geo,random,dynamic_latency.
- ttl Double
- The time to live (TTL) in seconds for how long the load balancer must cache a resolved IP address for a DNS entry before the load balancer must look up the IP address again. If your global load balancer is proxied, this value is automatically set and cannot be changed. If your global load balancer is not in proxy, you can enter a value that is 120 or greater.
- cis
Id string - The ID of the IBM Cloud Internet Services instance.
- default
Pool string[]Ids - List of default Pool IDs
- domain
Id string - The ID of the domain for which you want to add a global load balancer.
- fallback
Pool stringId - The ID of the pool to use when all other pools are considered unhealthy.
- cis
Global stringLoad Balancer Id - (String) The ID of the GLB.
- description string
- A description of the global load balancer.
- enabled boolean
- If set to true, the load balancer is enabled and can receive network traffic. If set to false, the load balancer is not enabled.
- name string
- The DNS name to associate with the load balancer. This value can be a hostname, like
www
, or the fully qualified domain name, such aswww.example.com
.example.com
is also accepted. - pop
Pools CisGlobal Load Balancer Pop Pool[] A set of mappings of the IBM Point-of-Presence (PoP) identifiers to the list of pool IDs (ordered by their failover priority) for the PoP (datacenter). This feature is only available to the enterprise customers.
Nested scheme for
pop_pools
:- proxied boolean
- Indicates if the host name receives origin protection by IBM Cloud Internet Services. The default value is false.
- region
Pools CisGlobal Load Balancer Region Pool[] A set of containing mappings of region and country codes to the list of pool of IDs. IDs are ordered by their failover priority.
Nested scheme for
region_pools
:- session
Affinity string - Associates all requests from an end-user with a single origin. IBM sets a cookie on the initial response to the client, so that the consequent requests with the cookie in the request use the same origin, as long as it is available.
- steering
Policy string - Steering Policy which allows off,geo,random,dynamic_latency.
- ttl number
- The time to live (TTL) in seconds for how long the load balancer must cache a resolved IP address for a DNS entry before the load balancer must look up the IP address again. If your global load balancer is proxied, this value is automatically set and cannot be changed. If your global load balancer is not in proxy, you can enter a value that is 120 or greater.
- cis_
id str - The ID of the IBM Cloud Internet Services instance.
- default_
pool_ Sequence[str]ids - List of default Pool IDs
- domain_
id str - The ID of the domain for which you want to add a global load balancer.
- fallback_
pool_ strid - The ID of the pool to use when all other pools are considered unhealthy.
- cis_
global_ strload_ balancer_ id - (String) The ID of the GLB.
- description str
- A description of the global load balancer.
- enabled bool
- If set to true, the load balancer is enabled and can receive network traffic. If set to false, the load balancer is not enabled.
- name str
- The DNS name to associate with the load balancer. This value can be a hostname, like
www
, or the fully qualified domain name, such aswww.example.com
.example.com
is also accepted. - pop_
pools Sequence[CisGlobal Load Balancer Pop Pool Args] A set of mappings of the IBM Point-of-Presence (PoP) identifiers to the list of pool IDs (ordered by their failover priority) for the PoP (datacenter). This feature is only available to the enterprise customers.
Nested scheme for
pop_pools
:- proxied bool
- Indicates if the host name receives origin protection by IBM Cloud Internet Services. The default value is false.
- region_
pools Sequence[CisGlobal Load Balancer Region Pool Args] A set of containing mappings of region and country codes to the list of pool of IDs. IDs are ordered by their failover priority.
Nested scheme for
region_pools
:- session_
affinity str - Associates all requests from an end-user with a single origin. IBM sets a cookie on the initial response to the client, so that the consequent requests with the cookie in the request use the same origin, as long as it is available.
- steering_
policy str - Steering Policy which allows off,geo,random,dynamic_latency.
- ttl float
- The time to live (TTL) in seconds for how long the load balancer must cache a resolved IP address for a DNS entry before the load balancer must look up the IP address again. If your global load balancer is proxied, this value is automatically set and cannot be changed. If your global load balancer is not in proxy, you can enter a value that is 120 or greater.
- cis
Id String - The ID of the IBM Cloud Internet Services instance.
- default
Pool List<String>Ids - List of default Pool IDs
- domain
Id String - The ID of the domain for which you want to add a global load balancer.
- fallback
Pool StringId - The ID of the pool to use when all other pools are considered unhealthy.
- cis
Global StringLoad Balancer Id - (String) The ID of the GLB.
- description String
- A description of the global load balancer.
- enabled Boolean
- If set to true, the load balancer is enabled and can receive network traffic. If set to false, the load balancer is not enabled.
- name String
- The DNS name to associate with the load balancer. This value can be a hostname, like
www
, or the fully qualified domain name, such aswww.example.com
.example.com
is also accepted. - pop
Pools List<Property Map> A set of mappings of the IBM Point-of-Presence (PoP) identifiers to the list of pool IDs (ordered by their failover priority) for the PoP (datacenter). This feature is only available to the enterprise customers.
Nested scheme for
pop_pools
:- proxied Boolean
- Indicates if the host name receives origin protection by IBM Cloud Internet Services. The default value is false.
- region
Pools List<Property Map> A set of containing mappings of region and country codes to the list of pool of IDs. IDs are ordered by their failover priority.
Nested scheme for
region_pools
:- session
Affinity String - Associates all requests from an end-user with a single origin. IBM sets a cookie on the initial response to the client, so that the consequent requests with the cookie in the request use the same origin, as long as it is available.
- steering
Policy String - Steering Policy which allows off,geo,random,dynamic_latency.
- ttl Number
- The time to live (TTL) in seconds for how long the load balancer must cache a resolved IP address for a DNS entry before the load balancer must look up the IP address again. If your global load balancer is proxied, this value is automatically set and cannot be changed. If your global load balancer is not in proxy, you can enter a value that is 120 or greater.
Outputs
All input properties are implicitly available as output properties. Additionally, the CisGlobalLoadBalancer resource produces the following output properties:
- Created
On string - (Timestamp) The RFC3339 timestamp of when the load balancer was created.
- Glb
Id string - (String) The unique identifier for the GLB.
- Id string
- The provider-assigned unique ID for this managed resource.
- Modified
On string - (Timestamp) The RFC3339 timestamp of when the load balancer was last modified.
- Created
On string - (Timestamp) The RFC3339 timestamp of when the load balancer was created.
- Glb
Id string - (String) The unique identifier for the GLB.
- Id string
- The provider-assigned unique ID for this managed resource.
- Modified
On string - (Timestamp) The RFC3339 timestamp of when the load balancer was last modified.
- created
On String - (Timestamp) The RFC3339 timestamp of when the load balancer was created.
- glb
Id String - (String) The unique identifier for the GLB.
- id String
- The provider-assigned unique ID for this managed resource.
- modified
On String - (Timestamp) The RFC3339 timestamp of when the load balancer was last modified.
- created
On string - (Timestamp) The RFC3339 timestamp of when the load balancer was created.
- glb
Id string - (String) The unique identifier for the GLB.
- id string
- The provider-assigned unique ID for this managed resource.
- modified
On string - (Timestamp) The RFC3339 timestamp of when the load balancer was last modified.
- created_
on str - (Timestamp) The RFC3339 timestamp of when the load balancer was created.
- glb_
id str - (String) The unique identifier for the GLB.
- id str
- The provider-assigned unique ID for this managed resource.
- modified_
on str - (Timestamp) The RFC3339 timestamp of when the load balancer was last modified.
- created
On String - (Timestamp) The RFC3339 timestamp of when the load balancer was created.
- glb
Id String - (String) The unique identifier for the GLB.
- id String
- The provider-assigned unique ID for this managed resource.
- modified
On String - (Timestamp) The RFC3339 timestamp of when the load balancer was last modified.
Look up Existing CisGlobalLoadBalancer Resource
Get an existing CisGlobalLoadBalancer 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?: CisGlobalLoadBalancerState, opts?: CustomResourceOptions): CisGlobalLoadBalancer
@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
cis_global_load_balancer_id: Optional[str] = None,
cis_id: Optional[str] = None,
created_on: Optional[str] = None,
default_pool_ids: Optional[Sequence[str]] = None,
description: Optional[str] = None,
domain_id: Optional[str] = None,
enabled: Optional[bool] = None,
fallback_pool_id: Optional[str] = None,
glb_id: Optional[str] = None,
modified_on: Optional[str] = None,
name: Optional[str] = None,
pop_pools: Optional[Sequence[CisGlobalLoadBalancerPopPoolArgs]] = None,
proxied: Optional[bool] = None,
region_pools: Optional[Sequence[CisGlobalLoadBalancerRegionPoolArgs]] = None,
session_affinity: Optional[str] = None,
steering_policy: Optional[str] = None,
ttl: Optional[float] = None) -> CisGlobalLoadBalancer
func GetCisGlobalLoadBalancer(ctx *Context, name string, id IDInput, state *CisGlobalLoadBalancerState, opts ...ResourceOption) (*CisGlobalLoadBalancer, error)
public static CisGlobalLoadBalancer Get(string name, Input<string> id, CisGlobalLoadBalancerState? state, CustomResourceOptions? opts = null)
public static CisGlobalLoadBalancer get(String name, Output<String> id, CisGlobalLoadBalancerState state, CustomResourceOptions options)
resources: _: type: ibm:CisGlobalLoadBalancer 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.
- Cis
Global stringLoad Balancer Id - (String) The ID of the GLB.
- Cis
Id string - The ID of the IBM Cloud Internet Services instance.
- Created
On string - (Timestamp) The RFC3339 timestamp of when the load balancer was created.
- Default
Pool List<string>Ids - List of default Pool IDs
- Description string
- A description of the global load balancer.
- Domain
Id string - The ID of the domain for which you want to add a global load balancer.
- Enabled bool
- If set to true, the load balancer is enabled and can receive network traffic. If set to false, the load balancer is not enabled.
- Fallback
Pool stringId - The ID of the pool to use when all other pools are considered unhealthy.
- Glb
Id string - (String) The unique identifier for the GLB.
- Modified
On string - (Timestamp) The RFC3339 timestamp of when the load balancer was last modified.
- Name string
- The DNS name to associate with the load balancer. This value can be a hostname, like
www
, or the fully qualified domain name, such aswww.example.com
.example.com
is also accepted. - Pop
Pools List<CisGlobal Load Balancer Pop Pool> A set of mappings of the IBM Point-of-Presence (PoP) identifiers to the list of pool IDs (ordered by their failover priority) for the PoP (datacenter). This feature is only available to the enterprise customers.
Nested scheme for
pop_pools
:- Proxied bool
- Indicates if the host name receives origin protection by IBM Cloud Internet Services. The default value is false.
- Region
Pools List<CisGlobal Load Balancer Region Pool> A set of containing mappings of region and country codes to the list of pool of IDs. IDs are ordered by their failover priority.
Nested scheme for
region_pools
:- Session
Affinity string - Associates all requests from an end-user with a single origin. IBM sets a cookie on the initial response to the client, so that the consequent requests with the cookie in the request use the same origin, as long as it is available.
- Steering
Policy string - Steering Policy which allows off,geo,random,dynamic_latency.
- Ttl double
- The time to live (TTL) in seconds for how long the load balancer must cache a resolved IP address for a DNS entry before the load balancer must look up the IP address again. If your global load balancer is proxied, this value is automatically set and cannot be changed. If your global load balancer is not in proxy, you can enter a value that is 120 or greater.
- Cis
Global stringLoad Balancer Id - (String) The ID of the GLB.
- Cis
Id string - The ID of the IBM Cloud Internet Services instance.
- Created
On string - (Timestamp) The RFC3339 timestamp of when the load balancer was created.
- Default
Pool []stringIds - List of default Pool IDs
- Description string
- A description of the global load balancer.
- Domain
Id string - The ID of the domain for which you want to add a global load balancer.
- Enabled bool
- If set to true, the load balancer is enabled and can receive network traffic. If set to false, the load balancer is not enabled.
- Fallback
Pool stringId - The ID of the pool to use when all other pools are considered unhealthy.
- Glb
Id string - (String) The unique identifier for the GLB.
- Modified
On string - (Timestamp) The RFC3339 timestamp of when the load balancer was last modified.
- Name string
- The DNS name to associate with the load balancer. This value can be a hostname, like
www
, or the fully qualified domain name, such aswww.example.com
.example.com
is also accepted. - Pop
Pools []CisGlobal Load Balancer Pop Pool Args A set of mappings of the IBM Point-of-Presence (PoP) identifiers to the list of pool IDs (ordered by their failover priority) for the PoP (datacenter). This feature is only available to the enterprise customers.
Nested scheme for
pop_pools
:- Proxied bool
- Indicates if the host name receives origin protection by IBM Cloud Internet Services. The default value is false.
- Region
Pools []CisGlobal Load Balancer Region Pool Args A set of containing mappings of region and country codes to the list of pool of IDs. IDs are ordered by their failover priority.
Nested scheme for
region_pools
:- Session
Affinity string - Associates all requests from an end-user with a single origin. IBM sets a cookie on the initial response to the client, so that the consequent requests with the cookie in the request use the same origin, as long as it is available.
- Steering
Policy string - Steering Policy which allows off,geo,random,dynamic_latency.
- Ttl float64
- The time to live (TTL) in seconds for how long the load balancer must cache a resolved IP address for a DNS entry before the load balancer must look up the IP address again. If your global load balancer is proxied, this value is automatically set and cannot be changed. If your global load balancer is not in proxy, you can enter a value that is 120 or greater.
- cis
Global StringLoad Balancer Id - (String) The ID of the GLB.
- cis
Id String - The ID of the IBM Cloud Internet Services instance.
- created
On String - (Timestamp) The RFC3339 timestamp of when the load balancer was created.
- default
Pool List<String>Ids - List of default Pool IDs
- description String
- A description of the global load balancer.
- domain
Id String - The ID of the domain for which you want to add a global load balancer.
- enabled Boolean
- If set to true, the load balancer is enabled and can receive network traffic. If set to false, the load balancer is not enabled.
- fallback
Pool StringId - The ID of the pool to use when all other pools are considered unhealthy.
- glb
Id String - (String) The unique identifier for the GLB.
- modified
On String - (Timestamp) The RFC3339 timestamp of when the load balancer was last modified.
- name String
- The DNS name to associate with the load balancer. This value can be a hostname, like
www
, or the fully qualified domain name, such aswww.example.com
.example.com
is also accepted. - pop
Pools List<CisGlobal Load Balancer Pop Pool> A set of mappings of the IBM Point-of-Presence (PoP) identifiers to the list of pool IDs (ordered by their failover priority) for the PoP (datacenter). This feature is only available to the enterprise customers.
Nested scheme for
pop_pools
:- proxied Boolean
- Indicates if the host name receives origin protection by IBM Cloud Internet Services. The default value is false.
- region
Pools List<CisGlobal Load Balancer Region Pool> A set of containing mappings of region and country codes to the list of pool of IDs. IDs are ordered by their failover priority.
Nested scheme for
region_pools
:- session
Affinity String - Associates all requests from an end-user with a single origin. IBM sets a cookie on the initial response to the client, so that the consequent requests with the cookie in the request use the same origin, as long as it is available.
- steering
Policy String - Steering Policy which allows off,geo,random,dynamic_latency.
- ttl Double
- The time to live (TTL) in seconds for how long the load balancer must cache a resolved IP address for a DNS entry before the load balancer must look up the IP address again. If your global load balancer is proxied, this value is automatically set and cannot be changed. If your global load balancer is not in proxy, you can enter a value that is 120 or greater.
- cis
Global stringLoad Balancer Id - (String) The ID of the GLB.
- cis
Id string - The ID of the IBM Cloud Internet Services instance.
- created
On string - (Timestamp) The RFC3339 timestamp of when the load balancer was created.
- default
Pool string[]Ids - List of default Pool IDs
- description string
- A description of the global load balancer.
- domain
Id string - The ID of the domain for which you want to add a global load balancer.
- enabled boolean
- If set to true, the load balancer is enabled and can receive network traffic. If set to false, the load balancer is not enabled.
- fallback
Pool stringId - The ID of the pool to use when all other pools are considered unhealthy.
- glb
Id string - (String) The unique identifier for the GLB.
- modified
On string - (Timestamp) The RFC3339 timestamp of when the load balancer was last modified.
- name string
- The DNS name to associate with the load balancer. This value can be a hostname, like
www
, or the fully qualified domain name, such aswww.example.com
.example.com
is also accepted. - pop
Pools CisGlobal Load Balancer Pop Pool[] A set of mappings of the IBM Point-of-Presence (PoP) identifiers to the list of pool IDs (ordered by their failover priority) for the PoP (datacenter). This feature is only available to the enterprise customers.
Nested scheme for
pop_pools
:- proxied boolean
- Indicates if the host name receives origin protection by IBM Cloud Internet Services. The default value is false.
- region
Pools CisGlobal Load Balancer Region Pool[] A set of containing mappings of region and country codes to the list of pool of IDs. IDs are ordered by their failover priority.
Nested scheme for
region_pools
:- session
Affinity string - Associates all requests from an end-user with a single origin. IBM sets a cookie on the initial response to the client, so that the consequent requests with the cookie in the request use the same origin, as long as it is available.
- steering
Policy string - Steering Policy which allows off,geo,random,dynamic_latency.
- ttl number
- The time to live (TTL) in seconds for how long the load balancer must cache a resolved IP address for a DNS entry before the load balancer must look up the IP address again. If your global load balancer is proxied, this value is automatically set and cannot be changed. If your global load balancer is not in proxy, you can enter a value that is 120 or greater.
- cis_
global_ strload_ balancer_ id - (String) The ID of the GLB.
- cis_
id str - The ID of the IBM Cloud Internet Services instance.
- created_
on str - (Timestamp) The RFC3339 timestamp of when the load balancer was created.
- default_
pool_ Sequence[str]ids - List of default Pool IDs
- description str
- A description of the global load balancer.
- domain_
id str - The ID of the domain for which you want to add a global load balancer.
- enabled bool
- If set to true, the load balancer is enabled and can receive network traffic. If set to false, the load balancer is not enabled.
- fallback_
pool_ strid - The ID of the pool to use when all other pools are considered unhealthy.
- glb_
id str - (String) The unique identifier for the GLB.
- modified_
on str - (Timestamp) The RFC3339 timestamp of when the load balancer was last modified.
- name str
- The DNS name to associate with the load balancer. This value can be a hostname, like
www
, or the fully qualified domain name, such aswww.example.com
.example.com
is also accepted. - pop_
pools Sequence[CisGlobal Load Balancer Pop Pool Args] A set of mappings of the IBM Point-of-Presence (PoP) identifiers to the list of pool IDs (ordered by their failover priority) for the PoP (datacenter). This feature is only available to the enterprise customers.
Nested scheme for
pop_pools
:- proxied bool
- Indicates if the host name receives origin protection by IBM Cloud Internet Services. The default value is false.
- region_
pools Sequence[CisGlobal Load Balancer Region Pool Args] A set of containing mappings of region and country codes to the list of pool of IDs. IDs are ordered by their failover priority.
Nested scheme for
region_pools
:- session_
affinity str - Associates all requests from an end-user with a single origin. IBM sets a cookie on the initial response to the client, so that the consequent requests with the cookie in the request use the same origin, as long as it is available.
- steering_
policy str - Steering Policy which allows off,geo,random,dynamic_latency.
- ttl float
- The time to live (TTL) in seconds for how long the load balancer must cache a resolved IP address for a DNS entry before the load balancer must look up the IP address again. If your global load balancer is proxied, this value is automatically set and cannot be changed. If your global load balancer is not in proxy, you can enter a value that is 120 or greater.
- cis
Global StringLoad Balancer Id - (String) The ID of the GLB.
- cis
Id String - The ID of the IBM Cloud Internet Services instance.
- created
On String - (Timestamp) The RFC3339 timestamp of when the load balancer was created.
- default
Pool List<String>Ids - List of default Pool IDs
- description String
- A description of the global load balancer.
- domain
Id String - The ID of the domain for which you want to add a global load balancer.
- enabled Boolean
- If set to true, the load balancer is enabled and can receive network traffic. If set to false, the load balancer is not enabled.
- fallback
Pool StringId - The ID of the pool to use when all other pools are considered unhealthy.
- glb
Id String - (String) The unique identifier for the GLB.
- modified
On String - (Timestamp) The RFC3339 timestamp of when the load balancer was last modified.
- name String
- The DNS name to associate with the load balancer. This value can be a hostname, like
www
, or the fully qualified domain name, such aswww.example.com
.example.com
is also accepted. - pop
Pools List<Property Map> A set of mappings of the IBM Point-of-Presence (PoP) identifiers to the list of pool IDs (ordered by their failover priority) for the PoP (datacenter). This feature is only available to the enterprise customers.
Nested scheme for
pop_pools
:- proxied Boolean
- Indicates if the host name receives origin protection by IBM Cloud Internet Services. The default value is false.
- region
Pools List<Property Map> A set of containing mappings of region and country codes to the list of pool of IDs. IDs are ordered by their failover priority.
Nested scheme for
region_pools
:- session
Affinity String - Associates all requests from an end-user with a single origin. IBM sets a cookie on the initial response to the client, so that the consequent requests with the cookie in the request use the same origin, as long as it is available.
- steering
Policy String - Steering Policy which allows off,geo,random,dynamic_latency.
- ttl Number
- The time to live (TTL) in seconds for how long the load balancer must cache a resolved IP address for a DNS entry before the load balancer must look up the IP address again. If your global load balancer is proxied, this value is automatically set and cannot be changed. If your global load balancer is not in proxy, you can enter a value that is 120 or greater.
Supporting Types
CisGlobalLoadBalancerPopPool, CisGlobalLoadBalancerPopPoolArgs
CisGlobalLoadBalancerRegionPool, CisGlobalLoadBalancerRegionPoolArgs
Import
The ibm_cis_global_load_balancer
resource can be imported using the id
. The ID is formed from the Global Load Balancer ID
, the Domain ID
of the domain and the CRN
(Cloud Resource Name) concatentated usinga :
character.
The Domain ID and CRN will be located on the Overview page of the Internet Services instance under the Domain heading of the UI, or via using the ibmcloud cis
command.
Domain ID is a 32 digit character string of the form:
9caf68812ae9b3f0377fdf986751a78f
CRN is a 120 digit character string of the form:
crn:v1:bluemix:public:internet-svcs:global:a/4ea1882a2d3401ed1e459979941966ea:31fa970d-51d0-4b05-893e-251cba75a7b3::
Glb ID is a 32 digit character string of the form:
57d96f0da6ed76251b475971b097205c
. The id of an existing GLB is not avaiable via the UI. It can be retrieved programatically via the CIS API or via the CLI using the CIS command to list the defined GLBs:ibmcloud cis glbs <domain_id>
Syntax
$ pulumi import ibm:index/cisGlobalLoadBalancer:CisGlobalLoadBalancer myorg <glb_id>:<domain-id>:<crn>
Example
$ pulumi import ibm:index/cisGlobalLoadBalancer:CisGlobalLoadBalancer myorg 57d96f0da6ed76251b475971b097205c:9caf68812ae9b3f0377fdf986751a78f:crn:v1:bluemix:public:internet-svcs:global:a/4ea1882a2d3401ed1e459979941966ea:31fa970d-51d0-4b05-893e-251cba75a7b3::
To learn more about importing existing cloud resources, see Importing resources.
Package Details
- Repository
- ibm ibm-cloud/terraform-provider-ibm
- License
- Notes
- This Pulumi package is based on the
ibm
Terraform Provider.