published on Wednesday, Mar 4, 2026 by Pulumi
published on Wednesday, Mar 4, 2026 by Pulumi
#<span pulumi-lang-nodejs=" f5bigip.GtmServer
" pulumi-lang-dotnet=" f5bigip.GtmServer " pulumi-lang-go=" GtmServer " pulumi-lang-python=" GtmServer " pulumi-lang-yaml=" f5bigip.GtmServer " pulumi-lang-java=" f5bigip.GtmServer “> f5bigip.GtmServer Manages F5 BIG-IP GTM (Global Traffic Manager) Server resources.
A GTM server represents a BIG-IP system, a host, or a server that hosts applications. Servers are identified by their addresses and are organized within datacenters. GTM servers enable GTM to perform load balancing and provide health monitoring for distributed applications.
Example Usage
Basic GTM Server (BIG-IP)
import * as pulumi from "@pulumi/pulumi";
import * as f5bigip from "@pulumi/f5bigip";
const dc1 = new f5bigip.GtmDatacenter("dc1", {name: "datacenter1"});
const server1 = new f5bigip.GtmServer("server1", {
name: "bigip_server1",
datacenter: dc1.name,
product: "bigip",
addresses: [{
name: "10.1.1.1",
}],
monitor: "/Common/bigip",
virtualServerDiscovery: "true",
linkDiscovery: "disabled",
});
import pulumi
import pulumi_f5bigip as f5bigip
dc1 = f5bigip.GtmDatacenter("dc1", name="datacenter1")
server1 = f5bigip.GtmServer("server1",
name="bigip_server1",
datacenter=dc1.name,
product="bigip",
addresses=[{
"name": "10.1.1.1",
}],
monitor="/Common/bigip",
virtual_server_discovery="true",
link_discovery="disabled")
package main
import (
"github.com/pulumi/pulumi-f5bigip/sdk/v3/go/f5bigip"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
dc1, err := f5bigip.NewGtmDatacenter(ctx, "dc1", &f5bigip.GtmDatacenterArgs{
Name: pulumi.String("datacenter1"),
})
if err != nil {
return err
}
_, err = f5bigip.NewGtmServer(ctx, "server1", &f5bigip.GtmServerArgs{
Name: pulumi.String("bigip_server1"),
Datacenter: dc1.Name,
Product: pulumi.String("bigip"),
Addresses: f5bigip.GtmServerAddressArray{
&f5bigip.GtmServerAddressArgs{
Name: pulumi.String("10.1.1.1"),
},
},
Monitor: pulumi.String("/Common/bigip"),
VirtualServerDiscovery: pulumi.String("true"),
LinkDiscovery: pulumi.String("disabled"),
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using F5BigIP = Pulumi.F5BigIP;
return await Deployment.RunAsync(() =>
{
var dc1 = new F5BigIP.GtmDatacenter("dc1", new()
{
Name = "datacenter1",
});
var server1 = new F5BigIP.GtmServer("server1", new()
{
Name = "bigip_server1",
Datacenter = dc1.Name,
Product = "bigip",
Addresses = new[]
{
new F5BigIP.Inputs.GtmServerAddressArgs
{
Name = "10.1.1.1",
},
},
Monitor = "/Common/bigip",
VirtualServerDiscovery = "true",
LinkDiscovery = "disabled",
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.f5bigip.GtmDatacenter;
import com.pulumi.f5bigip.GtmDatacenterArgs;
import com.pulumi.f5bigip.GtmServer;
import com.pulumi.f5bigip.GtmServerArgs;
import com.pulumi.f5bigip.inputs.GtmServerAddressArgs;
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 dc1 = new GtmDatacenter("dc1", GtmDatacenterArgs.builder()
.name("datacenter1")
.build());
var server1 = new GtmServer("server1", GtmServerArgs.builder()
.name("bigip_server1")
.datacenter(dc1.name())
.product("bigip")
.addresses(GtmServerAddressArgs.builder()
.name("10.1.1.1")
.build())
.monitor("/Common/bigip")
.virtualServerDiscovery("true")
.linkDiscovery("disabled")
.build());
}
}
resources:
dc1:
type: f5bigip:GtmDatacenter
properties:
name: datacenter1
server1:
type: f5bigip:GtmServer
properties:
name: bigip_server1
datacenter: ${dc1.name}
product: bigip
addresses:
- name: 10.1.1.1
monitor: /Common/bigip
virtualServerDiscovery: true
linkDiscovery: disabled
GTM Server with Multiple Addresses
import * as pulumi from "@pulumi/pulumi";
import * as f5bigip from "@pulumi/f5bigip";
const dc1 = new f5bigip.GtmDatacenter("dc1", {name: "datacenter1"});
const multiAddressServer = new f5bigip.GtmServer("multi_address_server", {
name: "multi_server",
datacenter: dc1.name,
product: "bigip",
addresses: [
{
name: "10.1.1.1",
deviceName: "/Common/bigip1.example.com",
translation: "none",
},
{
name: "10.1.1.2",
deviceName: "/Common/bigip2.example.com",
translation: "none",
},
],
monitor: "/Common/bigip",
virtualServerDiscovery: "true",
});
import pulumi
import pulumi_f5bigip as f5bigip
dc1 = f5bigip.GtmDatacenter("dc1", name="datacenter1")
multi_address_server = f5bigip.GtmServer("multi_address_server",
name="multi_server",
datacenter=dc1.name,
product="bigip",
addresses=[
{
"name": "10.1.1.1",
"device_name": "/Common/bigip1.example.com",
"translation": "none",
},
{
"name": "10.1.1.2",
"device_name": "/Common/bigip2.example.com",
"translation": "none",
},
],
monitor="/Common/bigip",
virtual_server_discovery="true")
package main
import (
"github.com/pulumi/pulumi-f5bigip/sdk/v3/go/f5bigip"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
dc1, err := f5bigip.NewGtmDatacenter(ctx, "dc1", &f5bigip.GtmDatacenterArgs{
Name: pulumi.String("datacenter1"),
})
if err != nil {
return err
}
_, err = f5bigip.NewGtmServer(ctx, "multi_address_server", &f5bigip.GtmServerArgs{
Name: pulumi.String("multi_server"),
Datacenter: dc1.Name,
Product: pulumi.String("bigip"),
Addresses: f5bigip.GtmServerAddressArray{
&f5bigip.GtmServerAddressArgs{
Name: pulumi.String("10.1.1.1"),
DeviceName: pulumi.String("/Common/bigip1.example.com"),
Translation: pulumi.String("none"),
},
&f5bigip.GtmServerAddressArgs{
Name: pulumi.String("10.1.1.2"),
DeviceName: pulumi.String("/Common/bigip2.example.com"),
Translation: pulumi.String("none"),
},
},
Monitor: pulumi.String("/Common/bigip"),
VirtualServerDiscovery: pulumi.String("true"),
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using F5BigIP = Pulumi.F5BigIP;
return await Deployment.RunAsync(() =>
{
var dc1 = new F5BigIP.GtmDatacenter("dc1", new()
{
Name = "datacenter1",
});
var multiAddressServer = new F5BigIP.GtmServer("multi_address_server", new()
{
Name = "multi_server",
Datacenter = dc1.Name,
Product = "bigip",
Addresses = new[]
{
new F5BigIP.Inputs.GtmServerAddressArgs
{
Name = "10.1.1.1",
DeviceName = "/Common/bigip1.example.com",
Translation = "none",
},
new F5BigIP.Inputs.GtmServerAddressArgs
{
Name = "10.1.1.2",
DeviceName = "/Common/bigip2.example.com",
Translation = "none",
},
},
Monitor = "/Common/bigip",
VirtualServerDiscovery = "true",
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.f5bigip.GtmDatacenter;
import com.pulumi.f5bigip.GtmDatacenterArgs;
import com.pulumi.f5bigip.GtmServer;
import com.pulumi.f5bigip.GtmServerArgs;
import com.pulumi.f5bigip.inputs.GtmServerAddressArgs;
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 dc1 = new GtmDatacenter("dc1", GtmDatacenterArgs.builder()
.name("datacenter1")
.build());
var multiAddressServer = new GtmServer("multiAddressServer", GtmServerArgs.builder()
.name("multi_server")
.datacenter(dc1.name())
.product("bigip")
.addresses(
GtmServerAddressArgs.builder()
.name("10.1.1.1")
.deviceName("/Common/bigip1.example.com")
.translation("none")
.build(),
GtmServerAddressArgs.builder()
.name("10.1.1.2")
.deviceName("/Common/bigip2.example.com")
.translation("none")
.build())
.monitor("/Common/bigip")
.virtualServerDiscovery("true")
.build());
}
}
resources:
dc1:
type: f5bigip:GtmDatacenter
properties:
name: datacenter1
multiAddressServer:
type: f5bigip:GtmServer
name: multi_address_server
properties:
name: multi_server
datacenter: ${dc1.name}
product: bigip
addresses:
- name: 10.1.1.1
deviceName: /Common/bigip1.example.com
translation: none
- name: 10.1.1.2
deviceName: /Common/bigip2.example.com
translation: none
monitor: /Common/bigip
virtualServerDiscovery: true
GTM Server with Address Translation
import * as pulumi from "@pulumi/pulumi";
import * as f5bigip from "@pulumi/f5bigip";
const dc1 = new f5bigip.GtmDatacenter("dc1", {name: "datacenter1"});
const natServer = new f5bigip.GtmServer("nat_server", {
name: "nat_server",
datacenter: dc1.name,
product: "bigip",
addresses: [{
name: "10.10.10.10",
deviceName: "/Common/server.example.com",
translation: "192.168.1.10",
}],
monitor: "/Common/bigip",
virtualServerDiscovery: "true",
});
import pulumi
import pulumi_f5bigip as f5bigip
dc1 = f5bigip.GtmDatacenter("dc1", name="datacenter1")
nat_server = f5bigip.GtmServer("nat_server",
name="nat_server",
datacenter=dc1.name,
product="bigip",
addresses=[{
"name": "10.10.10.10",
"device_name": "/Common/server.example.com",
"translation": "192.168.1.10",
}],
monitor="/Common/bigip",
virtual_server_discovery="true")
package main
import (
"github.com/pulumi/pulumi-f5bigip/sdk/v3/go/f5bigip"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
dc1, err := f5bigip.NewGtmDatacenter(ctx, "dc1", &f5bigip.GtmDatacenterArgs{
Name: pulumi.String("datacenter1"),
})
if err != nil {
return err
}
_, err = f5bigip.NewGtmServer(ctx, "nat_server", &f5bigip.GtmServerArgs{
Name: pulumi.String("nat_server"),
Datacenter: dc1.Name,
Product: pulumi.String("bigip"),
Addresses: f5bigip.GtmServerAddressArray{
&f5bigip.GtmServerAddressArgs{
Name: pulumi.String("10.10.10.10"),
DeviceName: pulumi.String("/Common/server.example.com"),
Translation: pulumi.String("192.168.1.10"),
},
},
Monitor: pulumi.String("/Common/bigip"),
VirtualServerDiscovery: pulumi.String("true"),
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using F5BigIP = Pulumi.F5BigIP;
return await Deployment.RunAsync(() =>
{
var dc1 = new F5BigIP.GtmDatacenter("dc1", new()
{
Name = "datacenter1",
});
var natServer = new F5BigIP.GtmServer("nat_server", new()
{
Name = "nat_server",
Datacenter = dc1.Name,
Product = "bigip",
Addresses = new[]
{
new F5BigIP.Inputs.GtmServerAddressArgs
{
Name = "10.10.10.10",
DeviceName = "/Common/server.example.com",
Translation = "192.168.1.10",
},
},
Monitor = "/Common/bigip",
VirtualServerDiscovery = "true",
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.f5bigip.GtmDatacenter;
import com.pulumi.f5bigip.GtmDatacenterArgs;
import com.pulumi.f5bigip.GtmServer;
import com.pulumi.f5bigip.GtmServerArgs;
import com.pulumi.f5bigip.inputs.GtmServerAddressArgs;
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 dc1 = new GtmDatacenter("dc1", GtmDatacenterArgs.builder()
.name("datacenter1")
.build());
var natServer = new GtmServer("natServer", GtmServerArgs.builder()
.name("nat_server")
.datacenter(dc1.name())
.product("bigip")
.addresses(GtmServerAddressArgs.builder()
.name("10.10.10.10")
.deviceName("/Common/server.example.com")
.translation("192.168.1.10")
.build())
.monitor("/Common/bigip")
.virtualServerDiscovery("true")
.build());
}
}
resources:
dc1:
type: f5bigip:GtmDatacenter
properties:
name: datacenter1
natServer:
type: f5bigip:GtmServer
name: nat_server
properties:
name: nat_server
datacenter: ${dc1.name}
product: bigip
addresses:
- name: 10.10.10.10
deviceName: /Common/server.example.com
translation: 192.168.1.10
monitor: /Common/bigip
virtualServerDiscovery: true
Generic Host Server
import * as pulumi from "@pulumi/pulumi";
import * as f5bigip from "@pulumi/f5bigip";
const dc1 = new f5bigip.GtmDatacenter("dc1", {name: "datacenter1"});
const genericHost = new f5bigip.GtmServer("generic_host", {
name: "generic_server",
datacenter: dc1.name,
product: "generic-host",
addresses: [{
name: "10.20.20.20",
}],
monitor: "/Common/tcp",
virtualServerDiscovery: "false",
linkDiscovery: "disabled",
});
import pulumi
import pulumi_f5bigip as f5bigip
dc1 = f5bigip.GtmDatacenter("dc1", name="datacenter1")
generic_host = f5bigip.GtmServer("generic_host",
name="generic_server",
datacenter=dc1.name,
product="generic-host",
addresses=[{
"name": "10.20.20.20",
}],
monitor="/Common/tcp",
virtual_server_discovery="false",
link_discovery="disabled")
package main
import (
"github.com/pulumi/pulumi-f5bigip/sdk/v3/go/f5bigip"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
dc1, err := f5bigip.NewGtmDatacenter(ctx, "dc1", &f5bigip.GtmDatacenterArgs{
Name: pulumi.String("datacenter1"),
})
if err != nil {
return err
}
_, err = f5bigip.NewGtmServer(ctx, "generic_host", &f5bigip.GtmServerArgs{
Name: pulumi.String("generic_server"),
Datacenter: dc1.Name,
Product: pulumi.String("generic-host"),
Addresses: f5bigip.GtmServerAddressArray{
&f5bigip.GtmServerAddressArgs{
Name: pulumi.String("10.20.20.20"),
},
},
Monitor: pulumi.String("/Common/tcp"),
VirtualServerDiscovery: pulumi.String("false"),
LinkDiscovery: pulumi.String("disabled"),
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using F5BigIP = Pulumi.F5BigIP;
return await Deployment.RunAsync(() =>
{
var dc1 = new F5BigIP.GtmDatacenter("dc1", new()
{
Name = "datacenter1",
});
var genericHost = new F5BigIP.GtmServer("generic_host", new()
{
Name = "generic_server",
Datacenter = dc1.Name,
Product = "generic-host",
Addresses = new[]
{
new F5BigIP.Inputs.GtmServerAddressArgs
{
Name = "10.20.20.20",
},
},
Monitor = "/Common/tcp",
VirtualServerDiscovery = "false",
LinkDiscovery = "disabled",
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.f5bigip.GtmDatacenter;
import com.pulumi.f5bigip.GtmDatacenterArgs;
import com.pulumi.f5bigip.GtmServer;
import com.pulumi.f5bigip.GtmServerArgs;
import com.pulumi.f5bigip.inputs.GtmServerAddressArgs;
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 dc1 = new GtmDatacenter("dc1", GtmDatacenterArgs.builder()
.name("datacenter1")
.build());
var genericHost = new GtmServer("genericHost", GtmServerArgs.builder()
.name("generic_server")
.datacenter(dc1.name())
.product("generic-host")
.addresses(GtmServerAddressArgs.builder()
.name("10.20.20.20")
.build())
.monitor("/Common/tcp")
.virtualServerDiscovery("false")
.linkDiscovery("disabled")
.build());
}
}
resources:
dc1:
type: f5bigip:GtmDatacenter
properties:
name: datacenter1
genericHost:
type: f5bigip:GtmServer
name: generic_host
properties:
name: generic_server
datacenter: ${dc1.name}
product: generic-host
addresses:
- name: 10.20.20.20
monitor: /Common/tcp
virtualServerDiscovery: false
linkDiscovery: disabled
Generic Host Server with Virtual Servers
For generic-host servers that don’t support virtual server discovery, you can manually define virtual servers:
import * as pulumi from "@pulumi/pulumi";
import * as f5bigip from "@pulumi/f5bigip";
const dc1 = new f5bigip.GtmDatacenter("dc1", {name: "datacenter1"});
const genericWithVs = new f5bigip.GtmServer("generic_with_vs", {
name: "generic_app_server",
datacenter: dc1.name,
product: "generic-host",
addresses: [{
name: "192.168.10.100",
}],
virtualServerDiscovery: "disabled",
linkDiscovery: "disabled",
virtualServers: [
{
name: "vs_http",
destination: "192.168.10.100:80",
enabled: true,
},
{
name: "vs_https",
destination: "192.168.10.100:443",
enabled: true,
},
{
name: "vs_api",
destination: "192.168.10.100:8080",
enabled: true,
translationAddress: "none",
translationPort: 0,
},
],
enabled: true,
});
import pulumi
import pulumi_f5bigip as f5bigip
dc1 = f5bigip.GtmDatacenter("dc1", name="datacenter1")
generic_with_vs = f5bigip.GtmServer("generic_with_vs",
name="generic_app_server",
datacenter=dc1.name,
product="generic-host",
addresses=[{
"name": "192.168.10.100",
}],
virtual_server_discovery="disabled",
link_discovery="disabled",
virtual_servers=[
{
"name": "vs_http",
"destination": "192.168.10.100:80",
"enabled": True,
},
{
"name": "vs_https",
"destination": "192.168.10.100:443",
"enabled": True,
},
{
"name": "vs_api",
"destination": "192.168.10.100:8080",
"enabled": True,
"translation_address": "none",
"translation_port": 0,
},
],
enabled=True)
package main
import (
"github.com/pulumi/pulumi-f5bigip/sdk/v3/go/f5bigip"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
dc1, err := f5bigip.NewGtmDatacenter(ctx, "dc1", &f5bigip.GtmDatacenterArgs{
Name: pulumi.String("datacenter1"),
})
if err != nil {
return err
}
_, err = f5bigip.NewGtmServer(ctx, "generic_with_vs", &f5bigip.GtmServerArgs{
Name: pulumi.String("generic_app_server"),
Datacenter: dc1.Name,
Product: pulumi.String("generic-host"),
Addresses: f5bigip.GtmServerAddressArray{
&f5bigip.GtmServerAddressArgs{
Name: pulumi.String("192.168.10.100"),
},
},
VirtualServerDiscovery: pulumi.String("disabled"),
LinkDiscovery: pulumi.String("disabled"),
VirtualServers: f5bigip.GtmServerVirtualServerArray{
&f5bigip.GtmServerVirtualServerArgs{
Name: pulumi.String("vs_http"),
Destination: pulumi.String("192.168.10.100:80"),
Enabled: pulumi.Bool(true),
},
&f5bigip.GtmServerVirtualServerArgs{
Name: pulumi.String("vs_https"),
Destination: pulumi.String("192.168.10.100:443"),
Enabled: pulumi.Bool(true),
},
&f5bigip.GtmServerVirtualServerArgs{
Name: pulumi.String("vs_api"),
Destination: pulumi.String("192.168.10.100:8080"),
Enabled: pulumi.Bool(true),
TranslationAddress: pulumi.String("none"),
TranslationPort: pulumi.Int(0),
},
},
Enabled: pulumi.Bool(true),
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using F5BigIP = Pulumi.F5BigIP;
return await Deployment.RunAsync(() =>
{
var dc1 = new F5BigIP.GtmDatacenter("dc1", new()
{
Name = "datacenter1",
});
var genericWithVs = new F5BigIP.GtmServer("generic_with_vs", new()
{
Name = "generic_app_server",
Datacenter = dc1.Name,
Product = "generic-host",
Addresses = new[]
{
new F5BigIP.Inputs.GtmServerAddressArgs
{
Name = "192.168.10.100",
},
},
VirtualServerDiscovery = "disabled",
LinkDiscovery = "disabled",
VirtualServers = new[]
{
new F5BigIP.Inputs.GtmServerVirtualServerArgs
{
Name = "vs_http",
Destination = "192.168.10.100:80",
Enabled = true,
},
new F5BigIP.Inputs.GtmServerVirtualServerArgs
{
Name = "vs_https",
Destination = "192.168.10.100:443",
Enabled = true,
},
new F5BigIP.Inputs.GtmServerVirtualServerArgs
{
Name = "vs_api",
Destination = "192.168.10.100:8080",
Enabled = true,
TranslationAddress = "none",
TranslationPort = 0,
},
},
Enabled = true,
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.f5bigip.GtmDatacenter;
import com.pulumi.f5bigip.GtmDatacenterArgs;
import com.pulumi.f5bigip.GtmServer;
import com.pulumi.f5bigip.GtmServerArgs;
import com.pulumi.f5bigip.inputs.GtmServerAddressArgs;
import com.pulumi.f5bigip.inputs.GtmServerVirtualServerArgs;
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 dc1 = new GtmDatacenter("dc1", GtmDatacenterArgs.builder()
.name("datacenter1")
.build());
var genericWithVs = new GtmServer("genericWithVs", GtmServerArgs.builder()
.name("generic_app_server")
.datacenter(dc1.name())
.product("generic-host")
.addresses(GtmServerAddressArgs.builder()
.name("192.168.10.100")
.build())
.virtualServerDiscovery("disabled")
.linkDiscovery("disabled")
.virtualServers(
GtmServerVirtualServerArgs.builder()
.name("vs_http")
.destination("192.168.10.100:80")
.enabled(true)
.build(),
GtmServerVirtualServerArgs.builder()
.name("vs_https")
.destination("192.168.10.100:443")
.enabled(true)
.build(),
GtmServerVirtualServerArgs.builder()
.name("vs_api")
.destination("192.168.10.100:8080")
.enabled(true)
.translationAddress("none")
.translationPort(0)
.build())
.enabled(true)
.build());
}
}
resources:
dc1:
type: f5bigip:GtmDatacenter
properties:
name: datacenter1
genericWithVs:
type: f5bigip:GtmServer
name: generic_with_vs
properties:
name: generic_app_server
datacenter: ${dc1.name}
product: generic-host
addresses:
- name: 192.168.10.100
virtualServerDiscovery: disabled
linkDiscovery: disabled
virtualServers:
- name: vs_http
destination: 192.168.10.100:80
enabled: true
- name: vs_https
destination: 192.168.10.100:443
enabled: true
- name: vs_api
destination: 192.168.10.100:8080
enabled: true
translationAddress: none
translationPort: 0
enabled: true
GTM Server with Prober Settings
import * as pulumi from "@pulumi/pulumi";
import * as f5bigip from "@pulumi/f5bigip";
const dc1 = new f5bigip.GtmDatacenter("dc1", {name: "datacenter1"});
const proberServer = new f5bigip.GtmServer("prober_server", {
name: "prober_configured_server",
datacenter: dc1.name,
product: "bigip",
addresses: [{
name: "10.30.30.30",
}],
monitor: "/Common/bigip",
virtualServerDiscovery: "true",
proberPreference: "inside-datacenter",
proberFallback: "any-available",
iqAllowPath: true,
iqAllowServiceCheck: true,
iqAllowSnmp: true,
});
import pulumi
import pulumi_f5bigip as f5bigip
dc1 = f5bigip.GtmDatacenter("dc1", name="datacenter1")
prober_server = f5bigip.GtmServer("prober_server",
name="prober_configured_server",
datacenter=dc1.name,
product="bigip",
addresses=[{
"name": "10.30.30.30",
}],
monitor="/Common/bigip",
virtual_server_discovery="true",
prober_preference="inside-datacenter",
prober_fallback="any-available",
iq_allow_path=True,
iq_allow_service_check=True,
iq_allow_snmp=True)
package main
import (
"github.com/pulumi/pulumi-f5bigip/sdk/v3/go/f5bigip"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
dc1, err := f5bigip.NewGtmDatacenter(ctx, "dc1", &f5bigip.GtmDatacenterArgs{
Name: pulumi.String("datacenter1"),
})
if err != nil {
return err
}
_, err = f5bigip.NewGtmServer(ctx, "prober_server", &f5bigip.GtmServerArgs{
Name: pulumi.String("prober_configured_server"),
Datacenter: dc1.Name,
Product: pulumi.String("bigip"),
Addresses: f5bigip.GtmServerAddressArray{
&f5bigip.GtmServerAddressArgs{
Name: pulumi.String("10.30.30.30"),
},
},
Monitor: pulumi.String("/Common/bigip"),
VirtualServerDiscovery: pulumi.String("true"),
ProberPreference: pulumi.String("inside-datacenter"),
ProberFallback: pulumi.String("any-available"),
IqAllowPath: pulumi.Bool(true),
IqAllowServiceCheck: pulumi.Bool(true),
IqAllowSnmp: pulumi.Bool(true),
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using F5BigIP = Pulumi.F5BigIP;
return await Deployment.RunAsync(() =>
{
var dc1 = new F5BigIP.GtmDatacenter("dc1", new()
{
Name = "datacenter1",
});
var proberServer = new F5BigIP.GtmServer("prober_server", new()
{
Name = "prober_configured_server",
Datacenter = dc1.Name,
Product = "bigip",
Addresses = new[]
{
new F5BigIP.Inputs.GtmServerAddressArgs
{
Name = "10.30.30.30",
},
},
Monitor = "/Common/bigip",
VirtualServerDiscovery = "true",
ProberPreference = "inside-datacenter",
ProberFallback = "any-available",
IqAllowPath = true,
IqAllowServiceCheck = true,
IqAllowSnmp = true,
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.f5bigip.GtmDatacenter;
import com.pulumi.f5bigip.GtmDatacenterArgs;
import com.pulumi.f5bigip.GtmServer;
import com.pulumi.f5bigip.GtmServerArgs;
import com.pulumi.f5bigip.inputs.GtmServerAddressArgs;
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 dc1 = new GtmDatacenter("dc1", GtmDatacenterArgs.builder()
.name("datacenter1")
.build());
var proberServer = new GtmServer("proberServer", GtmServerArgs.builder()
.name("prober_configured_server")
.datacenter(dc1.name())
.product("bigip")
.addresses(GtmServerAddressArgs.builder()
.name("10.30.30.30")
.build())
.monitor("/Common/bigip")
.virtualServerDiscovery("true")
.proberPreference("inside-datacenter")
.proberFallback("any-available")
.iqAllowPath(true)
.iqAllowServiceCheck(true)
.iqAllowSnmp(true)
.build());
}
}
resources:
dc1:
type: f5bigip:GtmDatacenter
properties:
name: datacenter1
proberServer:
type: f5bigip:GtmServer
name: prober_server
properties:
name: prober_configured_server
datacenter: ${dc1.name}
product: bigip
addresses:
- name: 10.30.30.30
monitor: /Common/bigip
virtualServerDiscovery: true
proberPreference: inside-datacenter
proberFallback: any-available
iqAllowPath: true
iqAllowServiceCheck: true
iqAllowSnmp: true
GTM Server with Resource Limits
import * as pulumi from "@pulumi/pulumi";
import * as f5bigip from "@pulumi/f5bigip";
const dc1 = new f5bigip.GtmDatacenter("dc1", {name: "datacenter1"});
const limitedServer = new f5bigip.GtmServer("limited_server", {
name: "resource_limited_server",
datacenter: dc1.name,
product: "bigip",
addresses: [{
name: "10.40.40.40",
}],
monitor: "/Common/bigip",
virtualServerDiscovery: "true",
limitMaxConnections: 10000,
limitMaxBps: 1000000,
limitMaxPps: 50000,
limitCpuUsage: 80,
limitMemAvail: 1024,
});
import pulumi
import pulumi_f5bigip as f5bigip
dc1 = f5bigip.GtmDatacenter("dc1", name="datacenter1")
limited_server = f5bigip.GtmServer("limited_server",
name="resource_limited_server",
datacenter=dc1.name,
product="bigip",
addresses=[{
"name": "10.40.40.40",
}],
monitor="/Common/bigip",
virtual_server_discovery="true",
limit_max_connections=10000,
limit_max_bps=1000000,
limit_max_pps=50000,
limit_cpu_usage=80,
limit_mem_avail=1024)
package main
import (
"github.com/pulumi/pulumi-f5bigip/sdk/v3/go/f5bigip"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
dc1, err := f5bigip.NewGtmDatacenter(ctx, "dc1", &f5bigip.GtmDatacenterArgs{
Name: pulumi.String("datacenter1"),
})
if err != nil {
return err
}
_, err = f5bigip.NewGtmServer(ctx, "limited_server", &f5bigip.GtmServerArgs{
Name: pulumi.String("resource_limited_server"),
Datacenter: dc1.Name,
Product: pulumi.String("bigip"),
Addresses: f5bigip.GtmServerAddressArray{
&f5bigip.GtmServerAddressArgs{
Name: pulumi.String("10.40.40.40"),
},
},
Monitor: pulumi.String("/Common/bigip"),
VirtualServerDiscovery: pulumi.String("true"),
LimitMaxConnections: pulumi.Int(10000),
LimitMaxBps: pulumi.Int(1000000),
LimitMaxPps: pulumi.Int(50000),
LimitCpuUsage: pulumi.Int(80),
LimitMemAvail: pulumi.Int(1024),
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using F5BigIP = Pulumi.F5BigIP;
return await Deployment.RunAsync(() =>
{
var dc1 = new F5BigIP.GtmDatacenter("dc1", new()
{
Name = "datacenter1",
});
var limitedServer = new F5BigIP.GtmServer("limited_server", new()
{
Name = "resource_limited_server",
Datacenter = dc1.Name,
Product = "bigip",
Addresses = new[]
{
new F5BigIP.Inputs.GtmServerAddressArgs
{
Name = "10.40.40.40",
},
},
Monitor = "/Common/bigip",
VirtualServerDiscovery = "true",
LimitMaxConnections = 10000,
LimitMaxBps = 1000000,
LimitMaxPps = 50000,
LimitCpuUsage = 80,
LimitMemAvail = 1024,
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.f5bigip.GtmDatacenter;
import com.pulumi.f5bigip.GtmDatacenterArgs;
import com.pulumi.f5bigip.GtmServer;
import com.pulumi.f5bigip.GtmServerArgs;
import com.pulumi.f5bigip.inputs.GtmServerAddressArgs;
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 dc1 = new GtmDatacenter("dc1", GtmDatacenterArgs.builder()
.name("datacenter1")
.build());
var limitedServer = new GtmServer("limitedServer", GtmServerArgs.builder()
.name("resource_limited_server")
.datacenter(dc1.name())
.product("bigip")
.addresses(GtmServerAddressArgs.builder()
.name("10.40.40.40")
.build())
.monitor("/Common/bigip")
.virtualServerDiscovery("true")
.limitMaxConnections(10000)
.limitMaxBps(1000000)
.limitMaxPps(50000)
.limitCpuUsage(80)
.limitMemAvail(1024)
.build());
}
}
resources:
dc1:
type: f5bigip:GtmDatacenter
properties:
name: datacenter1
limitedServer:
type: f5bigip:GtmServer
name: limited_server
properties:
name: resource_limited_server
datacenter: ${dc1.name}
product: bigip
addresses:
- name: 10.40.40.40
monitor: /Common/bigip
virtualServerDiscovery: true
limitMaxConnections: 10000
limitMaxBps: 1e+06
limitMaxPps: 50000
limitCpuUsage: 80
limitMemAvail: 1024
Notes
When creating a GTM server of type
bigip, ensure that the BIG-IP device is accessible and properly configured for GTM communication.Virtual server discovery requires proper iQuery communication between GTM systems.
Address translation is useful when servers are behind NAT.
Multiple addresses can be specified for servers with multiple network interfaces or for redundancy.
Resource limits help prevent a single server from consuming all available capacity in load balancing decisions.
Prober settings control how GTM monitors server health from different network locations.
Create GtmServer Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new GtmServer(name: string, args: GtmServerArgs, opts?: CustomResourceOptions);@overload
def GtmServer(resource_name: str,
args: GtmServerArgs,
opts: Optional[ResourceOptions] = None)
@overload
def GtmServer(resource_name: str,
opts: Optional[ResourceOptions] = None,
name: Optional[str] = None,
datacenter: Optional[str] = None,
limit_max_pps: Optional[int] = None,
prober_preference: Optional[str] = None,
expose_route_domains: Optional[bool] = None,
iq_allow_path: Optional[bool] = None,
iq_allow_service_check: Optional[bool] = None,
iq_allow_snmp: Optional[bool] = None,
limit_cpu_usage: Optional[int] = None,
limit_cpu_usage_status: Optional[str] = None,
limit_max_bps: Optional[int] = None,
limit_max_bps_status: Optional[str] = None,
limit_max_connections: Optional[int] = None,
limit_max_connections_status: Optional[str] = None,
enabled: Optional[bool] = None,
addresses: Optional[Sequence[GtmServerAddressArgs]] = None,
description: Optional[str] = None,
limit_mem_avail_status: Optional[str] = None,
link_discovery: Optional[str] = None,
monitor: Optional[str] = None,
limit_mem_avail: Optional[int] = None,
partition: Optional[str] = None,
prober_fallback: Optional[str] = None,
prober_pool: Optional[str] = None,
limit_max_pps_status: Optional[str] = None,
product: Optional[str] = None,
virtual_server_discovery: Optional[str] = None,
virtual_servers: Optional[Sequence[GtmServerVirtualServerArgs]] = None)func NewGtmServer(ctx *Context, name string, args GtmServerArgs, opts ...ResourceOption) (*GtmServer, error)public GtmServer(string name, GtmServerArgs args, CustomResourceOptions? opts = null)
public GtmServer(String name, GtmServerArgs args)
public GtmServer(String name, GtmServerArgs args, CustomResourceOptions options)
type: f5bigip:GtmServer
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 GtmServerArgs
- 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 GtmServerArgs
- 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 GtmServerArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args GtmServerArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args GtmServerArgs
- 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 gtmServerResource = new F5BigIP.GtmServer("gtmServerResource", new()
{
Name = "string",
Datacenter = "string",
LimitMaxPps = 0,
ProberPreference = "string",
ExposeRouteDomains = false,
IqAllowPath = false,
IqAllowServiceCheck = false,
IqAllowSnmp = false,
LimitCpuUsage = 0,
LimitCpuUsageStatus = "string",
LimitMaxBps = 0,
LimitMaxBpsStatus = "string",
LimitMaxConnections = 0,
LimitMaxConnectionsStatus = "string",
Enabled = false,
Addresses = new[]
{
new F5BigIP.Inputs.GtmServerAddressArgs
{
Name = "string",
DeviceName = "string",
Translation = "string",
},
},
Description = "string",
LimitMemAvailStatus = "string",
LinkDiscovery = "string",
Monitor = "string",
LimitMemAvail = 0,
Partition = "string",
ProberFallback = "string",
ProberPool = "string",
LimitMaxPpsStatus = "string",
Product = "string",
VirtualServerDiscovery = "string",
VirtualServers = new[]
{
new F5BigIP.Inputs.GtmServerVirtualServerArgs
{
Name = "string",
Destination = "string",
LimitMaxConnectionsStatus = "string",
LimitMaxBps = 0,
LimitMaxBpsStatus = "string",
LimitMaxConnections = 0,
DependsOn = "string",
LimitMaxPps = 0,
LimitMaxPpsStatus = "string",
Monitor = "string",
Enabled = false,
TranslationAddress = "string",
TranslationPort = 0,
},
},
});
example, err := f5bigip.NewGtmServer(ctx, "gtmServerResource", &f5bigip.GtmServerArgs{
Name: pulumi.String("string"),
Datacenter: pulumi.String("string"),
LimitMaxPps: pulumi.Int(0),
ProberPreference: pulumi.String("string"),
ExposeRouteDomains: pulumi.Bool(false),
IqAllowPath: pulumi.Bool(false),
IqAllowServiceCheck: pulumi.Bool(false),
IqAllowSnmp: pulumi.Bool(false),
LimitCpuUsage: pulumi.Int(0),
LimitCpuUsageStatus: pulumi.String("string"),
LimitMaxBps: pulumi.Int(0),
LimitMaxBpsStatus: pulumi.String("string"),
LimitMaxConnections: pulumi.Int(0),
LimitMaxConnectionsStatus: pulumi.String("string"),
Enabled: pulumi.Bool(false),
Addresses: f5bigip.GtmServerAddressArray{
&f5bigip.GtmServerAddressArgs{
Name: pulumi.String("string"),
DeviceName: pulumi.String("string"),
Translation: pulumi.String("string"),
},
},
Description: pulumi.String("string"),
LimitMemAvailStatus: pulumi.String("string"),
LinkDiscovery: pulumi.String("string"),
Monitor: pulumi.String("string"),
LimitMemAvail: pulumi.Int(0),
Partition: pulumi.String("string"),
ProberFallback: pulumi.String("string"),
ProberPool: pulumi.String("string"),
LimitMaxPpsStatus: pulumi.String("string"),
Product: pulumi.String("string"),
VirtualServerDiscovery: pulumi.String("string"),
VirtualServers: f5bigip.GtmServerVirtualServerArray{
&f5bigip.GtmServerVirtualServerArgs{
Name: pulumi.String("string"),
Destination: pulumi.String("string"),
LimitMaxConnectionsStatus: pulumi.String("string"),
LimitMaxBps: pulumi.Int(0),
LimitMaxBpsStatus: pulumi.String("string"),
LimitMaxConnections: pulumi.Int(0),
DependsOn: pulumi.String("string"),
LimitMaxPps: pulumi.Int(0),
LimitMaxPpsStatus: pulumi.String("string"),
Monitor: pulumi.String("string"),
Enabled: pulumi.Bool(false),
TranslationAddress: pulumi.String("string"),
TranslationPort: pulumi.Int(0),
},
},
})
var gtmServerResource = new GtmServer("gtmServerResource", GtmServerArgs.builder()
.name("string")
.datacenter("string")
.limitMaxPps(0)
.proberPreference("string")
.exposeRouteDomains(false)
.iqAllowPath(false)
.iqAllowServiceCheck(false)
.iqAllowSnmp(false)
.limitCpuUsage(0)
.limitCpuUsageStatus("string")
.limitMaxBps(0)
.limitMaxBpsStatus("string")
.limitMaxConnections(0)
.limitMaxConnectionsStatus("string")
.enabled(false)
.addresses(GtmServerAddressArgs.builder()
.name("string")
.deviceName("string")
.translation("string")
.build())
.description("string")
.limitMemAvailStatus("string")
.linkDiscovery("string")
.monitor("string")
.limitMemAvail(0)
.partition("string")
.proberFallback("string")
.proberPool("string")
.limitMaxPpsStatus("string")
.product("string")
.virtualServerDiscovery("string")
.virtualServers(GtmServerVirtualServerArgs.builder()
.name("string")
.destination("string")
.limitMaxConnectionsStatus("string")
.limitMaxBps(0)
.limitMaxBpsStatus("string")
.limitMaxConnections(0)
.dependsOn("string")
.limitMaxPps(0)
.limitMaxPpsStatus("string")
.monitor("string")
.enabled(false)
.translationAddress("string")
.translationPort(0)
.build())
.build());
gtm_server_resource = f5bigip.GtmServer("gtmServerResource",
name="string",
datacenter="string",
limit_max_pps=0,
prober_preference="string",
expose_route_domains=False,
iq_allow_path=False,
iq_allow_service_check=False,
iq_allow_snmp=False,
limit_cpu_usage=0,
limit_cpu_usage_status="string",
limit_max_bps=0,
limit_max_bps_status="string",
limit_max_connections=0,
limit_max_connections_status="string",
enabled=False,
addresses=[{
"name": "string",
"device_name": "string",
"translation": "string",
}],
description="string",
limit_mem_avail_status="string",
link_discovery="string",
monitor="string",
limit_mem_avail=0,
partition="string",
prober_fallback="string",
prober_pool="string",
limit_max_pps_status="string",
product="string",
virtual_server_discovery="string",
virtual_servers=[{
"name": "string",
"destination": "string",
"limit_max_connections_status": "string",
"limit_max_bps": 0,
"limit_max_bps_status": "string",
"limit_max_connections": 0,
"depends_on": "string",
"limit_max_pps": 0,
"limit_max_pps_status": "string",
"monitor": "string",
"enabled": False,
"translation_address": "string",
"translation_port": 0,
}])
const gtmServerResource = new f5bigip.GtmServer("gtmServerResource", {
name: "string",
datacenter: "string",
limitMaxPps: 0,
proberPreference: "string",
exposeRouteDomains: false,
iqAllowPath: false,
iqAllowServiceCheck: false,
iqAllowSnmp: false,
limitCpuUsage: 0,
limitCpuUsageStatus: "string",
limitMaxBps: 0,
limitMaxBpsStatus: "string",
limitMaxConnections: 0,
limitMaxConnectionsStatus: "string",
enabled: false,
addresses: [{
name: "string",
deviceName: "string",
translation: "string",
}],
description: "string",
limitMemAvailStatus: "string",
linkDiscovery: "string",
monitor: "string",
limitMemAvail: 0,
partition: "string",
proberFallback: "string",
proberPool: "string",
limitMaxPpsStatus: "string",
product: "string",
virtualServerDiscovery: "string",
virtualServers: [{
name: "string",
destination: "string",
limitMaxConnectionsStatus: "string",
limitMaxBps: 0,
limitMaxBpsStatus: "string",
limitMaxConnections: 0,
dependsOn: "string",
limitMaxPps: 0,
limitMaxPpsStatus: "string",
monitor: "string",
enabled: false,
translationAddress: "string",
translationPort: 0,
}],
});
type: f5bigip:GtmServer
properties:
addresses:
- deviceName: string
name: string
translation: string
datacenter: string
description: string
enabled: false
exposeRouteDomains: false
iqAllowPath: false
iqAllowServiceCheck: false
iqAllowSnmp: false
limitCpuUsage: 0
limitCpuUsageStatus: string
limitMaxBps: 0
limitMaxBpsStatus: string
limitMaxConnections: 0
limitMaxConnectionsStatus: string
limitMaxPps: 0
limitMaxPpsStatus: string
limitMemAvail: 0
limitMemAvailStatus: string
linkDiscovery: string
monitor: string
name: string
partition: string
proberFallback: string
proberPool: string
proberPreference: string
product: string
virtualServerDiscovery: string
virtualServers:
- dependsOn: string
destination: string
enabled: false
limitMaxBps: 0
limitMaxBpsStatus: string
limitMaxConnections: 0
limitMaxConnectionsStatus: string
limitMaxPps: 0
limitMaxPpsStatus: string
monitor: string
name: string
translationAddress: string
translationPort: 0
GtmServer 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 GtmServer resource accepts the following input properties:
- Datacenter string
- The datacenter where this server resides. Must be a valid datacenter name or full path (e.g.,
/Common/datacenter1). - Name string
- Name of the GTM server. Must be unique within the partition.
- Addresses
List<Pulumi.
F5Big IP. Inputs. Gtm Server Address> - List of IP addresses for the server. Each address block supports:
- Description string
- Description of the GTM server
- Enabled bool
- Enable or disable the GTM server
- Expose
Route boolDomains - Allow GTM server to expose route domains. Default is
false. - Iq
Allow boolPath - Enable iQuery path probing. Default is
true. - Iq
Allow boolService Check - Enable iQuery service checking. Default is
true. - Iq
Allow boolSnmp - Enable iQuery SNMP. Default is
true. - Limit
Cpu intUsage - Maximum CPU usage allowed (percent). 0 means no limit. Default is
0. - Limit
Cpu stringUsage Status - CPU usage limit status.
- Limit
Max intBps - Maximum bits per second. 0 means no limit. Default is
0. - Limit
Max stringBps Status - Maximum bps limit status.
- Limit
Max intConnections - Maximum concurrent connections. 0 means no limit. Default is
0. - Limit
Max stringConnections Status - Maximum connections limit status.
- Limit
Max intPps - Maximum packets per second. 0 means no limit. Default is
0. - Limit
Max stringPps Status - Maximum pps limit status.
- Limit
Mem intAvail - Available memory limit (MB). 0 means no limit. Default is
0. - Limit
Mem stringAvail Status - Available memory limit status.
- Link
Discovery string - Link discovery mode. Valid values:
- Monitor string
- Monitor assigned to check server health (e.g.,
/Common/bigip,/Common/tcp). - Partition string
- Partition or tenant the server belongs to. Default is
Common. - Prober
Fallback string - Fallback prober selection. Valid values:
- Prober
Pool string - Prober pool to use when prober_preference or prober_fallback is set to pool
- Prober
Preference string - Preferred type of prober. Valid values:
- Product string
- Type of server. Valid values are:
- Virtual
Server stringDiscovery - Enable or disable virtual server discovery. Default is
true. When enabled, GTM automatically discovers virtual servers on BIG-IP systems. - Virtual
Servers List<Pulumi.F5Big IP. Inputs. Gtm Server Virtual Server> - List of virtual servers for the GTM server. This is particularly useful for generic-host servers where virtual server discovery is not available. Each virtual_servers block supports:
- Datacenter string
- The datacenter where this server resides. Must be a valid datacenter name or full path (e.g.,
/Common/datacenter1). - Name string
- Name of the GTM server. Must be unique within the partition.
- Addresses
[]Gtm
Server Address Args - List of IP addresses for the server. Each address block supports:
- Description string
- Description of the GTM server
- Enabled bool
- Enable or disable the GTM server
- Expose
Route boolDomains - Allow GTM server to expose route domains. Default is
false. - Iq
Allow boolPath - Enable iQuery path probing. Default is
true. - Iq
Allow boolService Check - Enable iQuery service checking. Default is
true. - Iq
Allow boolSnmp - Enable iQuery SNMP. Default is
true. - Limit
Cpu intUsage - Maximum CPU usage allowed (percent). 0 means no limit. Default is
0. - Limit
Cpu stringUsage Status - CPU usage limit status.
- Limit
Max intBps - Maximum bits per second. 0 means no limit. Default is
0. - Limit
Max stringBps Status - Maximum bps limit status.
- Limit
Max intConnections - Maximum concurrent connections. 0 means no limit. Default is
0. - Limit
Max stringConnections Status - Maximum connections limit status.
- Limit
Max intPps - Maximum packets per second. 0 means no limit. Default is
0. - Limit
Max stringPps Status - Maximum pps limit status.
- Limit
Mem intAvail - Available memory limit (MB). 0 means no limit. Default is
0. - Limit
Mem stringAvail Status - Available memory limit status.
- Link
Discovery string - Link discovery mode. Valid values:
- Monitor string
- Monitor assigned to check server health (e.g.,
/Common/bigip,/Common/tcp). - Partition string
- Partition or tenant the server belongs to. Default is
Common. - Prober
Fallback string - Fallback prober selection. Valid values:
- Prober
Pool string - Prober pool to use when prober_preference or prober_fallback is set to pool
- Prober
Preference string - Preferred type of prober. Valid values:
- Product string
- Type of server. Valid values are:
- Virtual
Server stringDiscovery - Enable or disable virtual server discovery. Default is
true. When enabled, GTM automatically discovers virtual servers on BIG-IP systems. - Virtual
Servers []GtmServer Virtual Server Args - List of virtual servers for the GTM server. This is particularly useful for generic-host servers where virtual server discovery is not available. Each virtual_servers block supports:
- datacenter String
- The datacenter where this server resides. Must be a valid datacenter name or full path (e.g.,
/Common/datacenter1). - name String
- Name of the GTM server. Must be unique within the partition.
- addresses
List<Gtm
Server Address> - List of IP addresses for the server. Each address block supports:
- description String
- Description of the GTM server
- enabled Boolean
- Enable or disable the GTM server
- expose
Route BooleanDomains - Allow GTM server to expose route domains. Default is
false. - iq
Allow BooleanPath - Enable iQuery path probing. Default is
true. - iq
Allow BooleanService Check - Enable iQuery service checking. Default is
true. - iq
Allow BooleanSnmp - Enable iQuery SNMP. Default is
true. - limit
Cpu IntegerUsage - Maximum CPU usage allowed (percent). 0 means no limit. Default is
0. - limit
Cpu StringUsage Status - CPU usage limit status.
- limit
Max IntegerBps - Maximum bits per second. 0 means no limit. Default is
0. - limit
Max StringBps Status - Maximum bps limit status.
- limit
Max IntegerConnections - Maximum concurrent connections. 0 means no limit. Default is
0. - limit
Max StringConnections Status - Maximum connections limit status.
- limit
Max IntegerPps - Maximum packets per second. 0 means no limit. Default is
0. - limit
Max StringPps Status - Maximum pps limit status.
- limit
Mem IntegerAvail - Available memory limit (MB). 0 means no limit. Default is
0. - limit
Mem StringAvail Status - Available memory limit status.
- link
Discovery String - Link discovery mode. Valid values:
- monitor String
- Monitor assigned to check server health (e.g.,
/Common/bigip,/Common/tcp). - partition String
- Partition or tenant the server belongs to. Default is
Common. - prober
Fallback String - Fallback prober selection. Valid values:
- prober
Pool String - Prober pool to use when prober_preference or prober_fallback is set to pool
- prober
Preference String - Preferred type of prober. Valid values:
- product String
- Type of server. Valid values are:
- virtual
Server StringDiscovery - Enable or disable virtual server discovery. Default is
true. When enabled, GTM automatically discovers virtual servers on BIG-IP systems. - virtual
Servers List<GtmServer Virtual Server> - List of virtual servers for the GTM server. This is particularly useful for generic-host servers where virtual server discovery is not available. Each virtual_servers block supports:
- datacenter string
- The datacenter where this server resides. Must be a valid datacenter name or full path (e.g.,
/Common/datacenter1). - name string
- Name of the GTM server. Must be unique within the partition.
- addresses
Gtm
Server Address[] - List of IP addresses for the server. Each address block supports:
- description string
- Description of the GTM server
- enabled boolean
- Enable or disable the GTM server
- expose
Route booleanDomains - Allow GTM server to expose route domains. Default is
false. - iq
Allow booleanPath - Enable iQuery path probing. Default is
true. - iq
Allow booleanService Check - Enable iQuery service checking. Default is
true. - iq
Allow booleanSnmp - Enable iQuery SNMP. Default is
true. - limit
Cpu numberUsage - Maximum CPU usage allowed (percent). 0 means no limit. Default is
0. - limit
Cpu stringUsage Status - CPU usage limit status.
- limit
Max numberBps - Maximum bits per second. 0 means no limit. Default is
0. - limit
Max stringBps Status - Maximum bps limit status.
- limit
Max numberConnections - Maximum concurrent connections. 0 means no limit. Default is
0. - limit
Max stringConnections Status - Maximum connections limit status.
- limit
Max numberPps - Maximum packets per second. 0 means no limit. Default is
0. - limit
Max stringPps Status - Maximum pps limit status.
- limit
Mem numberAvail - Available memory limit (MB). 0 means no limit. Default is
0. - limit
Mem stringAvail Status - Available memory limit status.
- link
Discovery string - Link discovery mode. Valid values:
- monitor string
- Monitor assigned to check server health (e.g.,
/Common/bigip,/Common/tcp). - partition string
- Partition or tenant the server belongs to. Default is
Common. - prober
Fallback string - Fallback prober selection. Valid values:
- prober
Pool string - Prober pool to use when prober_preference or prober_fallback is set to pool
- prober
Preference string - Preferred type of prober. Valid values:
- product string
- Type of server. Valid values are:
- virtual
Server stringDiscovery - Enable or disable virtual server discovery. Default is
true. When enabled, GTM automatically discovers virtual servers on BIG-IP systems. - virtual
Servers GtmServer Virtual Server[] - List of virtual servers for the GTM server. This is particularly useful for generic-host servers where virtual server discovery is not available. Each virtual_servers block supports:
- datacenter str
- The datacenter where this server resides. Must be a valid datacenter name or full path (e.g.,
/Common/datacenter1). - name str
- Name of the GTM server. Must be unique within the partition.
- addresses
Sequence[Gtm
Server Address Args] - List of IP addresses for the server. Each address block supports:
- description str
- Description of the GTM server
- enabled bool
- Enable or disable the GTM server
- expose_
route_ booldomains - Allow GTM server to expose route domains. Default is
false. - iq_
allow_ boolpath - Enable iQuery path probing. Default is
true. - iq_
allow_ boolservice_ check - Enable iQuery service checking. Default is
true. - iq_
allow_ boolsnmp - Enable iQuery SNMP. Default is
true. - limit_
cpu_ intusage - Maximum CPU usage allowed (percent). 0 means no limit. Default is
0. - limit_
cpu_ strusage_ status - CPU usage limit status.
- limit_
max_ intbps - Maximum bits per second. 0 means no limit. Default is
0. - limit_
max_ strbps_ status - Maximum bps limit status.
- limit_
max_ intconnections - Maximum concurrent connections. 0 means no limit. Default is
0. - limit_
max_ strconnections_ status - Maximum connections limit status.
- limit_
max_ intpps - Maximum packets per second. 0 means no limit. Default is
0. - limit_
max_ strpps_ status - Maximum pps limit status.
- limit_
mem_ intavail - Available memory limit (MB). 0 means no limit. Default is
0. - limit_
mem_ stravail_ status - Available memory limit status.
- link_
discovery str - Link discovery mode. Valid values:
- monitor str
- Monitor assigned to check server health (e.g.,
/Common/bigip,/Common/tcp). - partition str
- Partition or tenant the server belongs to. Default is
Common. - prober_
fallback str - Fallback prober selection. Valid values:
- prober_
pool str - Prober pool to use when prober_preference or prober_fallback is set to pool
- prober_
preference str - Preferred type of prober. Valid values:
- product str
- Type of server. Valid values are:
- virtual_
server_ strdiscovery - Enable or disable virtual server discovery. Default is
true. When enabled, GTM automatically discovers virtual servers on BIG-IP systems. - virtual_
servers Sequence[GtmServer Virtual Server Args] - List of virtual servers for the GTM server. This is particularly useful for generic-host servers where virtual server discovery is not available. Each virtual_servers block supports:
- datacenter String
- The datacenter where this server resides. Must be a valid datacenter name or full path (e.g.,
/Common/datacenter1). - name String
- Name of the GTM server. Must be unique within the partition.
- addresses List<Property Map>
- List of IP addresses for the server. Each address block supports:
- description String
- Description of the GTM server
- enabled Boolean
- Enable or disable the GTM server
- expose
Route BooleanDomains - Allow GTM server to expose route domains. Default is
false. - iq
Allow BooleanPath - Enable iQuery path probing. Default is
true. - iq
Allow BooleanService Check - Enable iQuery service checking. Default is
true. - iq
Allow BooleanSnmp - Enable iQuery SNMP. Default is
true. - limit
Cpu NumberUsage - Maximum CPU usage allowed (percent). 0 means no limit. Default is
0. - limit
Cpu StringUsage Status - CPU usage limit status.
- limit
Max NumberBps - Maximum bits per second. 0 means no limit. Default is
0. - limit
Max StringBps Status - Maximum bps limit status.
- limit
Max NumberConnections - Maximum concurrent connections. 0 means no limit. Default is
0. - limit
Max StringConnections Status - Maximum connections limit status.
- limit
Max NumberPps - Maximum packets per second. 0 means no limit. Default is
0. - limit
Max StringPps Status - Maximum pps limit status.
- limit
Mem NumberAvail - Available memory limit (MB). 0 means no limit. Default is
0. - limit
Mem StringAvail Status - Available memory limit status.
- link
Discovery String - Link discovery mode. Valid values:
- monitor String
- Monitor assigned to check server health (e.g.,
/Common/bigip,/Common/tcp). - partition String
- Partition or tenant the server belongs to. Default is
Common. - prober
Fallback String - Fallback prober selection. Valid values:
- prober
Pool String - Prober pool to use when prober_preference or prober_fallback is set to pool
- prober
Preference String - Preferred type of prober. Valid values:
- product String
- Type of server. Valid values are:
- virtual
Server StringDiscovery - Enable or disable virtual server discovery. Default is
true. When enabled, GTM automatically discovers virtual servers on BIG-IP systems. - virtual
Servers List<Property Map> - List of virtual servers for the GTM server. This is particularly useful for generic-host servers where virtual server discovery is not available. Each virtual_servers block supports:
Outputs
All input properties are implicitly available as output properties. Additionally, the GtmServer 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 GtmServer Resource
Get an existing GtmServer 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?: GtmServerState, opts?: CustomResourceOptions): GtmServer@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
addresses: Optional[Sequence[GtmServerAddressArgs]] = None,
datacenter: Optional[str] = None,
description: Optional[str] = None,
enabled: Optional[bool] = None,
expose_route_domains: Optional[bool] = None,
iq_allow_path: Optional[bool] = None,
iq_allow_service_check: Optional[bool] = None,
iq_allow_snmp: Optional[bool] = None,
limit_cpu_usage: Optional[int] = None,
limit_cpu_usage_status: Optional[str] = None,
limit_max_bps: Optional[int] = None,
limit_max_bps_status: Optional[str] = None,
limit_max_connections: Optional[int] = None,
limit_max_connections_status: Optional[str] = None,
limit_max_pps: Optional[int] = None,
limit_max_pps_status: Optional[str] = None,
limit_mem_avail: Optional[int] = None,
limit_mem_avail_status: Optional[str] = None,
link_discovery: Optional[str] = None,
monitor: Optional[str] = None,
name: Optional[str] = None,
partition: Optional[str] = None,
prober_fallback: Optional[str] = None,
prober_pool: Optional[str] = None,
prober_preference: Optional[str] = None,
product: Optional[str] = None,
virtual_server_discovery: Optional[str] = None,
virtual_servers: Optional[Sequence[GtmServerVirtualServerArgs]] = None) -> GtmServerfunc GetGtmServer(ctx *Context, name string, id IDInput, state *GtmServerState, opts ...ResourceOption) (*GtmServer, error)public static GtmServer Get(string name, Input<string> id, GtmServerState? state, CustomResourceOptions? opts = null)public static GtmServer get(String name, Output<String> id, GtmServerState state, CustomResourceOptions options)resources: _: type: f5bigip:GtmServer 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.
- Addresses
List<Pulumi.
F5Big IP. Inputs. Gtm Server Address> - List of IP addresses for the server. Each address block supports:
- Datacenter string
- The datacenter where this server resides. Must be a valid datacenter name or full path (e.g.,
/Common/datacenter1). - Description string
- Description of the GTM server
- Enabled bool
- Enable or disable the GTM server
- Expose
Route boolDomains - Allow GTM server to expose route domains. Default is
false. - Iq
Allow boolPath - Enable iQuery path probing. Default is
true. - Iq
Allow boolService Check - Enable iQuery service checking. Default is
true. - Iq
Allow boolSnmp - Enable iQuery SNMP. Default is
true. - Limit
Cpu intUsage - Maximum CPU usage allowed (percent). 0 means no limit. Default is
0. - Limit
Cpu stringUsage Status - CPU usage limit status.
- Limit
Max intBps - Maximum bits per second. 0 means no limit. Default is
0. - Limit
Max stringBps Status - Maximum bps limit status.
- Limit
Max intConnections - Maximum concurrent connections. 0 means no limit. Default is
0. - Limit
Max stringConnections Status - Maximum connections limit status.
- Limit
Max intPps - Maximum packets per second. 0 means no limit. Default is
0. - Limit
Max stringPps Status - Maximum pps limit status.
- Limit
Mem intAvail - Available memory limit (MB). 0 means no limit. Default is
0. - Limit
Mem stringAvail Status - Available memory limit status.
- Link
Discovery string - Link discovery mode. Valid values:
- Monitor string
- Monitor assigned to check server health (e.g.,
/Common/bigip,/Common/tcp). - Name string
- Name of the GTM server. Must be unique within the partition.
- Partition string
- Partition or tenant the server belongs to. Default is
Common. - Prober
Fallback string - Fallback prober selection. Valid values:
- Prober
Pool string - Prober pool to use when prober_preference or prober_fallback is set to pool
- Prober
Preference string - Preferred type of prober. Valid values:
- Product string
- Type of server. Valid values are:
- Virtual
Server stringDiscovery - Enable or disable virtual server discovery. Default is
true. When enabled, GTM automatically discovers virtual servers on BIG-IP systems. - Virtual
Servers List<Pulumi.F5Big IP. Inputs. Gtm Server Virtual Server> - List of virtual servers for the GTM server. This is particularly useful for generic-host servers where virtual server discovery is not available. Each virtual_servers block supports:
- Addresses
[]Gtm
Server Address Args - List of IP addresses for the server. Each address block supports:
- Datacenter string
- The datacenter where this server resides. Must be a valid datacenter name or full path (e.g.,
/Common/datacenter1). - Description string
- Description of the GTM server
- Enabled bool
- Enable or disable the GTM server
- Expose
Route boolDomains - Allow GTM server to expose route domains. Default is
false. - Iq
Allow boolPath - Enable iQuery path probing. Default is
true. - Iq
Allow boolService Check - Enable iQuery service checking. Default is
true. - Iq
Allow boolSnmp - Enable iQuery SNMP. Default is
true. - Limit
Cpu intUsage - Maximum CPU usage allowed (percent). 0 means no limit. Default is
0. - Limit
Cpu stringUsage Status - CPU usage limit status.
- Limit
Max intBps - Maximum bits per second. 0 means no limit. Default is
0. - Limit
Max stringBps Status - Maximum bps limit status.
- Limit
Max intConnections - Maximum concurrent connections. 0 means no limit. Default is
0. - Limit
Max stringConnections Status - Maximum connections limit status.
- Limit
Max intPps - Maximum packets per second. 0 means no limit. Default is
0. - Limit
Max stringPps Status - Maximum pps limit status.
- Limit
Mem intAvail - Available memory limit (MB). 0 means no limit. Default is
0. - Limit
Mem stringAvail Status - Available memory limit status.
- Link
Discovery string - Link discovery mode. Valid values:
- Monitor string
- Monitor assigned to check server health (e.g.,
/Common/bigip,/Common/tcp). - Name string
- Name of the GTM server. Must be unique within the partition.
- Partition string
- Partition or tenant the server belongs to. Default is
Common. - Prober
Fallback string - Fallback prober selection. Valid values:
- Prober
Pool string - Prober pool to use when prober_preference or prober_fallback is set to pool
- Prober
Preference string - Preferred type of prober. Valid values:
- Product string
- Type of server. Valid values are:
- Virtual
Server stringDiscovery - Enable or disable virtual server discovery. Default is
true. When enabled, GTM automatically discovers virtual servers on BIG-IP systems. - Virtual
Servers []GtmServer Virtual Server Args - List of virtual servers for the GTM server. This is particularly useful for generic-host servers where virtual server discovery is not available. Each virtual_servers block supports:
- addresses
List<Gtm
Server Address> - List of IP addresses for the server. Each address block supports:
- datacenter String
- The datacenter where this server resides. Must be a valid datacenter name or full path (e.g.,
/Common/datacenter1). - description String
- Description of the GTM server
- enabled Boolean
- Enable or disable the GTM server
- expose
Route BooleanDomains - Allow GTM server to expose route domains. Default is
false. - iq
Allow BooleanPath - Enable iQuery path probing. Default is
true. - iq
Allow BooleanService Check - Enable iQuery service checking. Default is
true. - iq
Allow BooleanSnmp - Enable iQuery SNMP. Default is
true. - limit
Cpu IntegerUsage - Maximum CPU usage allowed (percent). 0 means no limit. Default is
0. - limit
Cpu StringUsage Status - CPU usage limit status.
- limit
Max IntegerBps - Maximum bits per second. 0 means no limit. Default is
0. - limit
Max StringBps Status - Maximum bps limit status.
- limit
Max IntegerConnections - Maximum concurrent connections. 0 means no limit. Default is
0. - limit
Max StringConnections Status - Maximum connections limit status.
- limit
Max IntegerPps - Maximum packets per second. 0 means no limit. Default is
0. - limit
Max StringPps Status - Maximum pps limit status.
- limit
Mem IntegerAvail - Available memory limit (MB). 0 means no limit. Default is
0. - limit
Mem StringAvail Status - Available memory limit status.
- link
Discovery String - Link discovery mode. Valid values:
- monitor String
- Monitor assigned to check server health (e.g.,
/Common/bigip,/Common/tcp). - name String
- Name of the GTM server. Must be unique within the partition.
- partition String
- Partition or tenant the server belongs to. Default is
Common. - prober
Fallback String - Fallback prober selection. Valid values:
- prober
Pool String - Prober pool to use when prober_preference or prober_fallback is set to pool
- prober
Preference String - Preferred type of prober. Valid values:
- product String
- Type of server. Valid values are:
- virtual
Server StringDiscovery - Enable or disable virtual server discovery. Default is
true. When enabled, GTM automatically discovers virtual servers on BIG-IP systems. - virtual
Servers List<GtmServer Virtual Server> - List of virtual servers for the GTM server. This is particularly useful for generic-host servers where virtual server discovery is not available. Each virtual_servers block supports:
- addresses
Gtm
Server Address[] - List of IP addresses for the server. Each address block supports:
- datacenter string
- The datacenter where this server resides. Must be a valid datacenter name or full path (e.g.,
/Common/datacenter1). - description string
- Description of the GTM server
- enabled boolean
- Enable or disable the GTM server
- expose
Route booleanDomains - Allow GTM server to expose route domains. Default is
false. - iq
Allow booleanPath - Enable iQuery path probing. Default is
true. - iq
Allow booleanService Check - Enable iQuery service checking. Default is
true. - iq
Allow booleanSnmp - Enable iQuery SNMP. Default is
true. - limit
Cpu numberUsage - Maximum CPU usage allowed (percent). 0 means no limit. Default is
0. - limit
Cpu stringUsage Status - CPU usage limit status.
- limit
Max numberBps - Maximum bits per second. 0 means no limit. Default is
0. - limit
Max stringBps Status - Maximum bps limit status.
- limit
Max numberConnections - Maximum concurrent connections. 0 means no limit. Default is
0. - limit
Max stringConnections Status - Maximum connections limit status.
- limit
Max numberPps - Maximum packets per second. 0 means no limit. Default is
0. - limit
Max stringPps Status - Maximum pps limit status.
- limit
Mem numberAvail - Available memory limit (MB). 0 means no limit. Default is
0. - limit
Mem stringAvail Status - Available memory limit status.
- link
Discovery string - Link discovery mode. Valid values:
- monitor string
- Monitor assigned to check server health (e.g.,
/Common/bigip,/Common/tcp). - name string
- Name of the GTM server. Must be unique within the partition.
- partition string
- Partition or tenant the server belongs to. Default is
Common. - prober
Fallback string - Fallback prober selection. Valid values:
- prober
Pool string - Prober pool to use when prober_preference or prober_fallback is set to pool
- prober
Preference string - Preferred type of prober. Valid values:
- product string
- Type of server. Valid values are:
- virtual
Server stringDiscovery - Enable or disable virtual server discovery. Default is
true. When enabled, GTM automatically discovers virtual servers on BIG-IP systems. - virtual
Servers GtmServer Virtual Server[] - List of virtual servers for the GTM server. This is particularly useful for generic-host servers where virtual server discovery is not available. Each virtual_servers block supports:
- addresses
Sequence[Gtm
Server Address Args] - List of IP addresses for the server. Each address block supports:
- datacenter str
- The datacenter where this server resides. Must be a valid datacenter name or full path (e.g.,
/Common/datacenter1). - description str
- Description of the GTM server
- enabled bool
- Enable or disable the GTM server
- expose_
route_ booldomains - Allow GTM server to expose route domains. Default is
false. - iq_
allow_ boolpath - Enable iQuery path probing. Default is
true. - iq_
allow_ boolservice_ check - Enable iQuery service checking. Default is
true. - iq_
allow_ boolsnmp - Enable iQuery SNMP. Default is
true. - limit_
cpu_ intusage - Maximum CPU usage allowed (percent). 0 means no limit. Default is
0. - limit_
cpu_ strusage_ status - CPU usage limit status.
- limit_
max_ intbps - Maximum bits per second. 0 means no limit. Default is
0. - limit_
max_ strbps_ status - Maximum bps limit status.
- limit_
max_ intconnections - Maximum concurrent connections. 0 means no limit. Default is
0. - limit_
max_ strconnections_ status - Maximum connections limit status.
- limit_
max_ intpps - Maximum packets per second. 0 means no limit. Default is
0. - limit_
max_ strpps_ status - Maximum pps limit status.
- limit_
mem_ intavail - Available memory limit (MB). 0 means no limit. Default is
0. - limit_
mem_ stravail_ status - Available memory limit status.
- link_
discovery str - Link discovery mode. Valid values:
- monitor str
- Monitor assigned to check server health (e.g.,
/Common/bigip,/Common/tcp). - name str
- Name of the GTM server. Must be unique within the partition.
- partition str
- Partition or tenant the server belongs to. Default is
Common. - prober_
fallback str - Fallback prober selection. Valid values:
- prober_
pool str - Prober pool to use when prober_preference or prober_fallback is set to pool
- prober_
preference str - Preferred type of prober. Valid values:
- product str
- Type of server. Valid values are:
- virtual_
server_ strdiscovery - Enable or disable virtual server discovery. Default is
true. When enabled, GTM automatically discovers virtual servers on BIG-IP systems. - virtual_
servers Sequence[GtmServer Virtual Server Args] - List of virtual servers for the GTM server. This is particularly useful for generic-host servers where virtual server discovery is not available. Each virtual_servers block supports:
- addresses List<Property Map>
- List of IP addresses for the server. Each address block supports:
- datacenter String
- The datacenter where this server resides. Must be a valid datacenter name or full path (e.g.,
/Common/datacenter1). - description String
- Description of the GTM server
- enabled Boolean
- Enable or disable the GTM server
- expose
Route BooleanDomains - Allow GTM server to expose route domains. Default is
false. - iq
Allow BooleanPath - Enable iQuery path probing. Default is
true. - iq
Allow BooleanService Check - Enable iQuery service checking. Default is
true. - iq
Allow BooleanSnmp - Enable iQuery SNMP. Default is
true. - limit
Cpu NumberUsage - Maximum CPU usage allowed (percent). 0 means no limit. Default is
0. - limit
Cpu StringUsage Status - CPU usage limit status.
- limit
Max NumberBps - Maximum bits per second. 0 means no limit. Default is
0. - limit
Max StringBps Status - Maximum bps limit status.
- limit
Max NumberConnections - Maximum concurrent connections. 0 means no limit. Default is
0. - limit
Max StringConnections Status - Maximum connections limit status.
- limit
Max NumberPps - Maximum packets per second. 0 means no limit. Default is
0. - limit
Max StringPps Status - Maximum pps limit status.
- limit
Mem NumberAvail - Available memory limit (MB). 0 means no limit. Default is
0. - limit
Mem StringAvail Status - Available memory limit status.
- link
Discovery String - Link discovery mode. Valid values:
- monitor String
- Monitor assigned to check server health (e.g.,
/Common/bigip,/Common/tcp). - name String
- Name of the GTM server. Must be unique within the partition.
- partition String
- Partition or tenant the server belongs to. Default is
Common. - prober
Fallback String - Fallback prober selection. Valid values:
- prober
Pool String - Prober pool to use when prober_preference or prober_fallback is set to pool
- prober
Preference String - Preferred type of prober. Valid values:
- product String
- Type of server. Valid values are:
- virtual
Server StringDiscovery - Enable or disable virtual server discovery. Default is
true. When enabled, GTM automatically discovers virtual servers on BIG-IP systems. - virtual
Servers List<Property Map> - List of virtual servers for the GTM server. This is particularly useful for generic-host servers where virtual server discovery is not available. Each virtual_servers block supports:
Supporting Types
GtmServerAddress, GtmServerAddressArgs
- Name string
- IP address
- Device
Name string - Device name associated with the address
- Translation string
- IP translation address. Default is
none
- Name string
- IP address
- Device
Name string - Device name associated with the address
- Translation string
- IP translation address. Default is
none
- name String
- IP address
- device
Name String - Device name associated with the address
- translation String
- IP translation address. Default is
none
- name string
- IP address
- device
Name string - Device name associated with the address
- translation string
- IP translation address. Default is
none
- name str
- IP address
- device_
name str - Device name associated with the address
- translation str
- IP translation address. Default is
none
- name String
- IP address
- device
Name String - Device name associated with the address
- translation String
- IP translation address. Default is
none
GtmServerVirtualServer, GtmServerVirtualServerArgs
- Destination string
- Destination address in format
<ip>:<port>(e.g.,192.168.1.100:80) - Name string
- Name of the virtual server
- Depends
On string - Virtual server dependency
- Enabled bool
- Enable the virtual server. Default is
true - Limit
Max intBps - Maximum bits per second for this virtual server
- Limit
Max stringBps Status - Enable/disable the bps limit
- Limit
Max intConnections - Maximum concurrent connections
- Limit
Max stringConnections Status - Enable/disable the connections limit
- Limit
Max intPps - Maximum packets per second
- Limit
Max stringPps Status - Enable/disable the pps limit
- Monitor string
- Monitor assigned to check virtual server health
- Translation
Address string - Translation address for NAT scenarios. Default is
none - Translation
Port int - Translation port for NAT scenarios. Default is
0
- Destination string
- Destination address in format
<ip>:<port>(e.g.,192.168.1.100:80) - Name string
- Name of the virtual server
- Depends
On string - Virtual server dependency
- Enabled bool
- Enable the virtual server. Default is
true - Limit
Max intBps - Maximum bits per second for this virtual server
- Limit
Max stringBps Status - Enable/disable the bps limit
- Limit
Max intConnections - Maximum concurrent connections
- Limit
Max stringConnections Status - Enable/disable the connections limit
- Limit
Max intPps - Maximum packets per second
- Limit
Max stringPps Status - Enable/disable the pps limit
- Monitor string
- Monitor assigned to check virtual server health
- Translation
Address string - Translation address for NAT scenarios. Default is
none - Translation
Port int - Translation port for NAT scenarios. Default is
0
- destination String
- Destination address in format
<ip>:<port>(e.g.,192.168.1.100:80) - name String
- Name of the virtual server
- depends
On String - Virtual server dependency
- enabled Boolean
- Enable the virtual server. Default is
true - limit
Max IntegerBps - Maximum bits per second for this virtual server
- limit
Max StringBps Status - Enable/disable the bps limit
- limit
Max IntegerConnections - Maximum concurrent connections
- limit
Max StringConnections Status - Enable/disable the connections limit
- limit
Max IntegerPps - Maximum packets per second
- limit
Max StringPps Status - Enable/disable the pps limit
- monitor String
- Monitor assigned to check virtual server health
- translation
Address String - Translation address for NAT scenarios. Default is
none - translation
Port Integer - Translation port for NAT scenarios. Default is
0
- destination string
- Destination address in format
<ip>:<port>(e.g.,192.168.1.100:80) - name string
- Name of the virtual server
- depends
On string - Virtual server dependency
- enabled boolean
- Enable the virtual server. Default is
true - limit
Max numberBps - Maximum bits per second for this virtual server
- limit
Max stringBps Status - Enable/disable the bps limit
- limit
Max numberConnections - Maximum concurrent connections
- limit
Max stringConnections Status - Enable/disable the connections limit
- limit
Max numberPps - Maximum packets per second
- limit
Max stringPps Status - Enable/disable the pps limit
- monitor string
- Monitor assigned to check virtual server health
- translation
Address string - Translation address for NAT scenarios. Default is
none - translation
Port number - Translation port for NAT scenarios. Default is
0
- destination str
- Destination address in format
<ip>:<port>(e.g.,192.168.1.100:80) - name str
- Name of the virtual server
- depends_
on str - Virtual server dependency
- enabled bool
- Enable the virtual server. Default is
true - limit_
max_ intbps - Maximum bits per second for this virtual server
- limit_
max_ strbps_ status - Enable/disable the bps limit
- limit_
max_ intconnections - Maximum concurrent connections
- limit_
max_ strconnections_ status - Enable/disable the connections limit
- limit_
max_ intpps - Maximum packets per second
- limit_
max_ strpps_ status - Enable/disable the pps limit
- monitor str
- Monitor assigned to check virtual server health
- translation_
address str - Translation address for NAT scenarios. Default is
none - translation_
port int - Translation port for NAT scenarios. Default is
0
- destination String
- Destination address in format
<ip>:<port>(e.g.,192.168.1.100:80) - name String
- Name of the virtual server
- depends
On String - Virtual server dependency
- enabled Boolean
- Enable the virtual server. Default is
true - limit
Max NumberBps - Maximum bits per second for this virtual server
- limit
Max StringBps Status - Enable/disable the bps limit
- limit
Max NumberConnections - Maximum concurrent connections
- limit
Max StringConnections Status - Enable/disable the connections limit
- limit
Max NumberPps - Maximum packets per second
- limit
Max StringPps Status - Enable/disable the pps limit
- monitor String
- Monitor assigned to check virtual server health
- translation
Address String - Translation address for NAT scenarios. Default is
none - translation
Port Number - Translation port for NAT scenarios. Default is
0
Import
GTM servers can be imported using the server name or full path:
$ pulumi import f5bigip:index/gtmServer:GtmServer example /Common/server1
or
$ pulumi import f5bigip:index/gtmServer:GtmServer example server1
To learn more about importing existing cloud resources, see Importing resources.
Package Details
- Repository
- f5 BIG-IP pulumi/pulumi-f5bigip
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
bigipTerraform Provider.
published on Wednesday, Mar 4, 2026 by Pulumi
