1. Packages
  2. F5 BIG-IP
  3. API Docs
  4. cm
  5. DeviceGroup
f5 BIG-IP v3.17.0 published on Thursday, Mar 28, 2024 by Pulumi

f5bigip.cm.DeviceGroup

Explore with Pulumi AI

f5bigip logo
f5 BIG-IP v3.17.0 published on Thursday, Mar 28, 2024 by Pulumi

    f5bigip.cm.DeviceGroup A device group is a collection of BIG-IP devices that are configured to securely synchronize their BIG-IP configuration data, and fail over when needed.

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as f5bigip from "@pulumi/f5bigip";
    
    const myNewDevicegroup = new f5bigip.cm.DeviceGroup("myNewDevicegroup", {
        autoSync: "enabled",
        devices: [
            {
                name: "bigip1.cisco.com",
            },
            {
                name: "bigip200.f5.com",
            },
        ],
        fullLoadOnSync: "true",
        name: "sanjose_devicegroup",
        type: "sync-only",
    });
    
    import pulumi
    import pulumi_f5bigip as f5bigip
    
    my_new_devicegroup = f5bigip.cm.DeviceGroup("myNewDevicegroup",
        auto_sync="enabled",
        devices=[
            f5bigip.cm.DeviceGroupDeviceArgs(
                name="bigip1.cisco.com",
            ),
            f5bigip.cm.DeviceGroupDeviceArgs(
                name="bigip200.f5.com",
            ),
        ],
        full_load_on_sync="true",
        name="sanjose_devicegroup",
        type="sync-only")
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-f5bigip/sdk/v3/go/f5bigip/cm"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := cm.NewDeviceGroup(ctx, "myNewDevicegroup", &cm.DeviceGroupArgs{
    			AutoSync: pulumi.String("enabled"),
    			Devices: cm.DeviceGroupDeviceArray{
    				&cm.DeviceGroupDeviceArgs{
    					Name: pulumi.String("bigip1.cisco.com"),
    				},
    				&cm.DeviceGroupDeviceArgs{
    					Name: pulumi.String("bigip200.f5.com"),
    				},
    			},
    			FullLoadOnSync: pulumi.String("true"),
    			Name:           pulumi.String("sanjose_devicegroup"),
    			Type:           pulumi.String("sync-only"),
    		})
    		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 myNewDevicegroup = new F5BigIP.CM.DeviceGroup("myNewDevicegroup", new()
        {
            AutoSync = "enabled",
            Devices = new[]
            {
                new F5BigIP.CM.Inputs.DeviceGroupDeviceArgs
                {
                    Name = "bigip1.cisco.com",
                },
                new F5BigIP.CM.Inputs.DeviceGroupDeviceArgs
                {
                    Name = "bigip200.f5.com",
                },
            },
            FullLoadOnSync = "true",
            Name = "sanjose_devicegroup",
            Type = "sync-only",
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.f5bigip.cm.DeviceGroup;
    import com.pulumi.f5bigip.cm.DeviceGroupArgs;
    import com.pulumi.f5bigip.cm.inputs.DeviceGroupDeviceArgs;
    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 myNewDevicegroup = new DeviceGroup("myNewDevicegroup", DeviceGroupArgs.builder()        
                .autoSync("enabled")
                .devices(            
                    DeviceGroupDeviceArgs.builder()
                        .name("bigip1.cisco.com")
                        .build(),
                    DeviceGroupDeviceArgs.builder()
                        .name("bigip200.f5.com")
                        .build())
                .fullLoadOnSync("true")
                .name("sanjose_devicegroup")
                .type("sync-only")
                .build());
    
        }
    }
    
    resources:
      myNewDevicegroup:
        type: f5bigip:cm:DeviceGroup
        properties:
          autoSync: enabled
          devices:
            - name: bigip1.cisco.com
            - name: bigip200.f5.com
          fullLoadOnSync: 'true'
          name: sanjose_devicegroup
          type: sync-only
    

    Create DeviceGroup Resource

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

    Constructor syntax

    new DeviceGroup(name: string, args?: DeviceGroupArgs, opts?: CustomResourceOptions);
    @overload
    def DeviceGroup(resource_name: str,
                    args: Optional[DeviceGroupArgs] = None,
                    opts: Optional[ResourceOptions] = None)
    
    @overload
    def DeviceGroup(resource_name: str,
                    opts: Optional[ResourceOptions] = None,
                    auto_sync: Optional[str] = None,
                    description: Optional[str] = None,
                    devices: Optional[Sequence[DeviceGroupDeviceArgs]] = None,
                    full_load_on_sync: Optional[str] = None,
                    incremental_config: Optional[int] = None,
                    name: Optional[str] = None,
                    network_failover: Optional[str] = None,
                    partition: Optional[str] = None,
                    save_on_auto_sync: Optional[str] = None,
                    type: Optional[str] = None)
    func NewDeviceGroup(ctx *Context, name string, args *DeviceGroupArgs, opts ...ResourceOption) (*DeviceGroup, error)
    public DeviceGroup(string name, DeviceGroupArgs? args = null, CustomResourceOptions? opts = null)
    public DeviceGroup(String name, DeviceGroupArgs args)
    public DeviceGroup(String name, DeviceGroupArgs args, CustomResourceOptions options)
    
    type: f5bigip:cm:DeviceGroup
    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 DeviceGroupArgs
    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 DeviceGroupArgs
    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 DeviceGroupArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args DeviceGroupArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args DeviceGroupArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Example

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

    var deviceGroupResource = new F5BigIP.CM.DeviceGroup("deviceGroupResource", new()
    {
        AutoSync = "string",
        Description = "string",
        Devices = new[]
        {
            new F5BigIP.CM.Inputs.DeviceGroupDeviceArgs
            {
                Name = "string",
                SetSyncLeader = false,
            },
        },
        FullLoadOnSync = "string",
        IncrementalConfig = 0,
        Name = "string",
        NetworkFailover = "string",
        Partition = "string",
        SaveOnAutoSync = "string",
        Type = "string",
    });
    
    example, err := cm.NewDeviceGroup(ctx, "deviceGroupResource", &cm.DeviceGroupArgs{
    	AutoSync:    pulumi.String("string"),
    	Description: pulumi.String("string"),
    	Devices: cm.DeviceGroupDeviceArray{
    		&cm.DeviceGroupDeviceArgs{
    			Name:          pulumi.String("string"),
    			SetSyncLeader: pulumi.Bool(false),
    		},
    	},
    	FullLoadOnSync:    pulumi.String("string"),
    	IncrementalConfig: pulumi.Int(0),
    	Name:              pulumi.String("string"),
    	NetworkFailover:   pulumi.String("string"),
    	Partition:         pulumi.String("string"),
    	SaveOnAutoSync:    pulumi.String("string"),
    	Type:              pulumi.String("string"),
    })
    
    var deviceGroupResource = new DeviceGroup("deviceGroupResource", DeviceGroupArgs.builder()        
        .autoSync("string")
        .description("string")
        .devices(DeviceGroupDeviceArgs.builder()
            .name("string")
            .setSyncLeader(false)
            .build())
        .fullLoadOnSync("string")
        .incrementalConfig(0)
        .name("string")
        .networkFailover("string")
        .partition("string")
        .saveOnAutoSync("string")
        .type("string")
        .build());
    
    device_group_resource = f5bigip.cm.DeviceGroup("deviceGroupResource",
        auto_sync="string",
        description="string",
        devices=[f5bigip.cm.DeviceGroupDeviceArgs(
            name="string",
            set_sync_leader=False,
        )],
        full_load_on_sync="string",
        incremental_config=0,
        name="string",
        network_failover="string",
        partition="string",
        save_on_auto_sync="string",
        type="string")
    
    const deviceGroupResource = new f5bigip.cm.DeviceGroup("deviceGroupResource", {
        autoSync: "string",
        description: "string",
        devices: [{
            name: "string",
            setSyncLeader: false,
        }],
        fullLoadOnSync: "string",
        incrementalConfig: 0,
        name: "string",
        networkFailover: "string",
        partition: "string",
        saveOnAutoSync: "string",
        type: "string",
    });
    
    type: f5bigip:cm:DeviceGroup
    properties:
        autoSync: string
        description: string
        devices:
            - name: string
              setSyncLeader: false
        fullLoadOnSync: string
        incrementalConfig: 0
        name: string
        networkFailover: string
        partition: string
        saveOnAutoSync: string
        type: string
    

    DeviceGroup Resource Properties

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

    Inputs

    The DeviceGroup resource accepts the following input properties:

    AutoSync string
    Specifies if the device-group will automatically sync configuration data to its members
    Description string
    Description of Device group
    Devices List<Pulumi.F5BigIP.CM.Inputs.DeviceGroupDevice>
    Name of the device to be included in device group, this need to be configured before using devicegroup resource
    FullLoadOnSync string
    Specifies if the device-group will perform a full-load upon sync
    IncrementalConfig int
    Specifies the maximum size (in KB) to devote to incremental config sync cached transactions. The default is 1024 KB.
    Name string
    Is the name of the device Group
    NetworkFailover string
    Specifies if the device-group will use a network connection for failover
    Partition string
    Device administrative partition
    SaveOnAutoSync string
    Specifies whether the configuration should be saved upon auto-sync.
    Type string
    Specifies if the device-group will be used for failover or resource syncing
    AutoSync string
    Specifies if the device-group will automatically sync configuration data to its members
    Description string
    Description of Device group
    Devices []DeviceGroupDeviceArgs
    Name of the device to be included in device group, this need to be configured before using devicegroup resource
    FullLoadOnSync string
    Specifies if the device-group will perform a full-load upon sync
    IncrementalConfig int
    Specifies the maximum size (in KB) to devote to incremental config sync cached transactions. The default is 1024 KB.
    Name string
    Is the name of the device Group
    NetworkFailover string
    Specifies if the device-group will use a network connection for failover
    Partition string
    Device administrative partition
    SaveOnAutoSync string
    Specifies whether the configuration should be saved upon auto-sync.
    Type string
    Specifies if the device-group will be used for failover or resource syncing
    autoSync String
    Specifies if the device-group will automatically sync configuration data to its members
    description String
    Description of Device group
    devices List<DeviceGroupDevice>
    Name of the device to be included in device group, this need to be configured before using devicegroup resource
    fullLoadOnSync String
    Specifies if the device-group will perform a full-load upon sync
    incrementalConfig Integer
    Specifies the maximum size (in KB) to devote to incremental config sync cached transactions. The default is 1024 KB.
    name String
    Is the name of the device Group
    networkFailover String
    Specifies if the device-group will use a network connection for failover
    partition String
    Device administrative partition
    saveOnAutoSync String
    Specifies whether the configuration should be saved upon auto-sync.
    type String
    Specifies if the device-group will be used for failover or resource syncing
    autoSync string
    Specifies if the device-group will automatically sync configuration data to its members
    description string
    Description of Device group
    devices DeviceGroupDevice[]
    Name of the device to be included in device group, this need to be configured before using devicegroup resource
    fullLoadOnSync string
    Specifies if the device-group will perform a full-load upon sync
    incrementalConfig number
    Specifies the maximum size (in KB) to devote to incremental config sync cached transactions. The default is 1024 KB.
    name string
    Is the name of the device Group
    networkFailover string
    Specifies if the device-group will use a network connection for failover
    partition string
    Device administrative partition
    saveOnAutoSync string
    Specifies whether the configuration should be saved upon auto-sync.
    type string
    Specifies if the device-group will be used for failover or resource syncing
    auto_sync str
    Specifies if the device-group will automatically sync configuration data to its members
    description str
    Description of Device group
    devices Sequence[DeviceGroupDeviceArgs]
    Name of the device to be included in device group, this need to be configured before using devicegroup resource
    full_load_on_sync str
    Specifies if the device-group will perform a full-load upon sync
    incremental_config int
    Specifies the maximum size (in KB) to devote to incremental config sync cached transactions. The default is 1024 KB.
    name str
    Is the name of the device Group
    network_failover str
    Specifies if the device-group will use a network connection for failover
    partition str
    Device administrative partition
    save_on_auto_sync str
    Specifies whether the configuration should be saved upon auto-sync.
    type str
    Specifies if the device-group will be used for failover or resource syncing
    autoSync String
    Specifies if the device-group will automatically sync configuration data to its members
    description String
    Description of Device group
    devices List<Property Map>
    Name of the device to be included in device group, this need to be configured before using devicegroup resource
    fullLoadOnSync String
    Specifies if the device-group will perform a full-load upon sync
    incrementalConfig Number
    Specifies the maximum size (in KB) to devote to incremental config sync cached transactions. The default is 1024 KB.
    name String
    Is the name of the device Group
    networkFailover String
    Specifies if the device-group will use a network connection for failover
    partition String
    Device administrative partition
    saveOnAutoSync String
    Specifies whether the configuration should be saved upon auto-sync.
    type String
    Specifies if the device-group will be used for failover or resource syncing

    Outputs

    All input properties are implicitly available as output properties. Additionally, the DeviceGroup 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 DeviceGroup Resource

    Get an existing DeviceGroup 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?: DeviceGroupState, opts?: CustomResourceOptions): DeviceGroup
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            auto_sync: Optional[str] = None,
            description: Optional[str] = None,
            devices: Optional[Sequence[DeviceGroupDeviceArgs]] = None,
            full_load_on_sync: Optional[str] = None,
            incremental_config: Optional[int] = None,
            name: Optional[str] = None,
            network_failover: Optional[str] = None,
            partition: Optional[str] = None,
            save_on_auto_sync: Optional[str] = None,
            type: Optional[str] = None) -> DeviceGroup
    func GetDeviceGroup(ctx *Context, name string, id IDInput, state *DeviceGroupState, opts ...ResourceOption) (*DeviceGroup, error)
    public static DeviceGroup Get(string name, Input<string> id, DeviceGroupState? state, CustomResourceOptions? opts = null)
    public static DeviceGroup get(String name, Output<String> id, DeviceGroupState state, CustomResourceOptions options)
    Resource lookup is not supported in YAML
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    resource_name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    The following state arguments are supported:
    AutoSync string
    Specifies if the device-group will automatically sync configuration data to its members
    Description string
    Description of Device group
    Devices List<Pulumi.F5BigIP.CM.Inputs.DeviceGroupDevice>
    Name of the device to be included in device group, this need to be configured before using devicegroup resource
    FullLoadOnSync string
    Specifies if the device-group will perform a full-load upon sync
    IncrementalConfig int
    Specifies the maximum size (in KB) to devote to incremental config sync cached transactions. The default is 1024 KB.
    Name string
    Is the name of the device Group
    NetworkFailover string
    Specifies if the device-group will use a network connection for failover
    Partition string
    Device administrative partition
    SaveOnAutoSync string
    Specifies whether the configuration should be saved upon auto-sync.
    Type string
    Specifies if the device-group will be used for failover or resource syncing
    AutoSync string
    Specifies if the device-group will automatically sync configuration data to its members
    Description string
    Description of Device group
    Devices []DeviceGroupDeviceArgs
    Name of the device to be included in device group, this need to be configured before using devicegroup resource
    FullLoadOnSync string
    Specifies if the device-group will perform a full-load upon sync
    IncrementalConfig int
    Specifies the maximum size (in KB) to devote to incremental config sync cached transactions. The default is 1024 KB.
    Name string
    Is the name of the device Group
    NetworkFailover string
    Specifies if the device-group will use a network connection for failover
    Partition string
    Device administrative partition
    SaveOnAutoSync string
    Specifies whether the configuration should be saved upon auto-sync.
    Type string
    Specifies if the device-group will be used for failover or resource syncing
    autoSync String
    Specifies if the device-group will automatically sync configuration data to its members
    description String
    Description of Device group
    devices List<DeviceGroupDevice>
    Name of the device to be included in device group, this need to be configured before using devicegroup resource
    fullLoadOnSync String
    Specifies if the device-group will perform a full-load upon sync
    incrementalConfig Integer
    Specifies the maximum size (in KB) to devote to incremental config sync cached transactions. The default is 1024 KB.
    name String
    Is the name of the device Group
    networkFailover String
    Specifies if the device-group will use a network connection for failover
    partition String
    Device administrative partition
    saveOnAutoSync String
    Specifies whether the configuration should be saved upon auto-sync.
    type String
    Specifies if the device-group will be used for failover or resource syncing
    autoSync string
    Specifies if the device-group will automatically sync configuration data to its members
    description string
    Description of Device group
    devices DeviceGroupDevice[]
    Name of the device to be included in device group, this need to be configured before using devicegroup resource
    fullLoadOnSync string
    Specifies if the device-group will perform a full-load upon sync
    incrementalConfig number
    Specifies the maximum size (in KB) to devote to incremental config sync cached transactions. The default is 1024 KB.
    name string
    Is the name of the device Group
    networkFailover string
    Specifies if the device-group will use a network connection for failover
    partition string
    Device administrative partition
    saveOnAutoSync string
    Specifies whether the configuration should be saved upon auto-sync.
    type string
    Specifies if the device-group will be used for failover or resource syncing
    auto_sync str
    Specifies if the device-group will automatically sync configuration data to its members
    description str
    Description of Device group
    devices Sequence[DeviceGroupDeviceArgs]
    Name of the device to be included in device group, this need to be configured before using devicegroup resource
    full_load_on_sync str
    Specifies if the device-group will perform a full-load upon sync
    incremental_config int
    Specifies the maximum size (in KB) to devote to incremental config sync cached transactions. The default is 1024 KB.
    name str
    Is the name of the device Group
    network_failover str
    Specifies if the device-group will use a network connection for failover
    partition str
    Device administrative partition
    save_on_auto_sync str
    Specifies whether the configuration should be saved upon auto-sync.
    type str
    Specifies if the device-group will be used for failover or resource syncing
    autoSync String
    Specifies if the device-group will automatically sync configuration data to its members
    description String
    Description of Device group
    devices List<Property Map>
    Name of the device to be included in device group, this need to be configured before using devicegroup resource
    fullLoadOnSync String
    Specifies if the device-group will perform a full-load upon sync
    incrementalConfig Number
    Specifies the maximum size (in KB) to devote to incremental config sync cached transactions. The default is 1024 KB.
    name String
    Is the name of the device Group
    networkFailover String
    Specifies if the device-group will use a network connection for failover
    partition String
    Device administrative partition
    saveOnAutoSync String
    Specifies whether the configuration should be saved upon auto-sync.
    type String
    Specifies if the device-group will be used for failover or resource syncing

    Supporting Types

    DeviceGroupDevice, DeviceGroupDeviceArgs

    Name string
    Is the name of the device Group
    SetSyncLeader bool
    Name of origin
    Name string
    Is the name of the device Group
    SetSyncLeader bool
    Name of origin
    name String
    Is the name of the device Group
    setSyncLeader Boolean
    Name of origin
    name string
    Is the name of the device Group
    setSyncLeader boolean
    Name of origin
    name str
    Is the name of the device Group
    set_sync_leader bool
    Name of origin
    name String
    Is the name of the device Group
    setSyncLeader Boolean
    Name of origin

    Package Details

    Repository
    f5 BIG-IP pulumi/pulumi-f5bigip
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the bigip Terraform Provider.
    f5bigip logo
    f5 BIG-IP v3.17.0 published on Thursday, Mar 28, 2024 by Pulumi