ionoscloud.nfs.Cluster
Explore with Pulumi AI
Create clusters of Network File Storage (NFS) on IonosCloud.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as ionoscloud from "@ionos-cloud/sdk-pulumi";
// Basic example
const nfsDc = new ionoscloud.compute.Datacenter("nfs_dc", {
    name: "NFS Datacenter",
    location: "de/txl",
    description: "Datacenter Description",
    secAuthProtection: false,
});
const nfsLan = new ionoscloud.compute.Lan("nfs_lan", {
    datacenterId: nfsDc.id,
    "public": false,
    name: "Lan for NFS",
});
const example = new ionoscloud.nfs.Cluster("example", {
    name: "test",
    location: "de/txl",
    size: 2,
    nfs: {
        minVersion: "4.2",
    },
    connections: {
        datacenterId: nfsDc.id,
        ipAddress: "192.168.100.10/24",
        lan: nfsLan.id,
    },
});
import pulumi
import pulumi_ionoscloud as ionoscloud
# Basic example
nfs_dc = ionoscloud.compute.Datacenter("nfs_dc",
    name="NFS Datacenter",
    location="de/txl",
    description="Datacenter Description",
    sec_auth_protection=False)
nfs_lan = ionoscloud.compute.Lan("nfs_lan",
    datacenter_id=nfs_dc.id,
    public=False,
    name="Lan for NFS")
example = ionoscloud.nfs.Cluster("example",
    name="test",
    location="de/txl",
    size=2,
    nfs={
        "min_version": "4.2",
    },
    connections={
        "datacenter_id": nfs_dc.id,
        "ip_address": "192.168.100.10/24",
        "lan": nfs_lan.id,
    })
package main
import (
	"github.com/ionos-cloud/pulumi-ionoscloud/sdk/go/ionoscloud/compute"
	"github.com/ionos-cloud/pulumi-ionoscloud/sdk/go/ionoscloud/nfs"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		// Basic example
		nfsDc, err := compute.NewDatacenter(ctx, "nfs_dc", &compute.DatacenterArgs{
			Name:              pulumi.String("NFS Datacenter"),
			Location:          pulumi.String("de/txl"),
			Description:       pulumi.String("Datacenter Description"),
			SecAuthProtection: pulumi.Bool(false),
		})
		if err != nil {
			return err
		}
		nfsLan, err := compute.NewLan(ctx, "nfs_lan", &compute.LanArgs{
			DatacenterId: nfsDc.ID(),
			Public:       pulumi.Bool(false),
			Name:         pulumi.String("Lan for NFS"),
		})
		if err != nil {
			return err
		}
		_, err = nfs.NewCluster(ctx, "example", &nfs.ClusterArgs{
			Name:     pulumi.String("test"),
			Location: pulumi.String("de/txl"),
			Size:     pulumi.Int(2),
			Nfs: &nfs.ClusterNfsArgs{
				MinVersion: pulumi.String("4.2"),
			},
			Connections: &nfs.ClusterConnectionsArgs{
				DatacenterId: nfsDc.ID(),
				IpAddress:    pulumi.String("192.168.100.10/24"),
				Lan:          nfsLan.ID(),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Ionoscloud = Ionoscloud.Pulumi.Ionoscloud;
return await Deployment.RunAsync(() => 
{
    // Basic example
    var nfsDc = new Ionoscloud.Compute.Datacenter("nfs_dc", new()
    {
        Name = "NFS Datacenter",
        Location = "de/txl",
        Description = "Datacenter Description",
        SecAuthProtection = false,
    });
    var nfsLan = new Ionoscloud.Compute.Lan("nfs_lan", new()
    {
        DatacenterId = nfsDc.Id,
        Public = false,
        Name = "Lan for NFS",
    });
    var example = new Ionoscloud.Nfs.Cluster("example", new()
    {
        Name = "test",
        Location = "de/txl",
        Size = 2,
        Nfs = new Ionoscloud.Nfs.Inputs.ClusterNfsArgs
        {
            MinVersion = "4.2",
        },
        Connections = new Ionoscloud.Nfs.Inputs.ClusterConnectionsArgs
        {
            DatacenterId = nfsDc.Id,
            IpAddress = "192.168.100.10/24",
            Lan = nfsLan.Id,
        },
    });
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.ionoscloud.compute.Datacenter;
import com.pulumi.ionoscloud.compute.DatacenterArgs;
import com.pulumi.ionoscloud.compute.Lan;
import com.pulumi.ionoscloud.compute.LanArgs;
import com.pulumi.ionoscloud.nfs.Cluster;
import com.pulumi.ionoscloud.nfs.ClusterArgs;
import com.pulumi.ionoscloud.nfs.inputs.ClusterNfsArgs;
import com.pulumi.ionoscloud.nfs.inputs.ClusterConnectionsArgs;
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) {
        // Basic example
        var nfsDc = new Datacenter("nfsDc", DatacenterArgs.builder()
            .name("NFS Datacenter")
            .location("de/txl")
            .description("Datacenter Description")
            .secAuthProtection(false)
            .build());
        var nfsLan = new Lan("nfsLan", LanArgs.builder()
            .datacenterId(nfsDc.id())
            .public_(false)
            .name("Lan for NFS")
            .build());
        var example = new Cluster("example", ClusterArgs.builder()
            .name("test")
            .location("de/txl")
            .size(2)
            .nfs(ClusterNfsArgs.builder()
                .minVersion("4.2")
                .build())
            .connections(ClusterConnectionsArgs.builder()
                .datacenterId(nfsDc.id())
                .ipAddress("192.168.100.10/24")
                .lan(nfsLan.id())
                .build())
            .build());
    }
}
resources:
  # Basic example
  nfsDc:
    type: ionoscloud:compute:Datacenter
    name: nfs_dc
    properties:
      name: NFS Datacenter
      location: de/txl
      description: Datacenter Description
      secAuthProtection: false
  nfsLan:
    type: ionoscloud:compute:Lan
    name: nfs_lan
    properties:
      datacenterId: ${nfsDc.id}
      public: false
      name: Lan for NFS
  example:
    type: ionoscloud:nfs:Cluster
    properties:
      name: test
      location: de/txl
      size: 2
      nfs:
        minVersion: '4.2'
      connections:
        datacenterId: ${nfsDc.id}
        ipAddress: 192.168.100.10/24
        lan: ${nfsLan.id}
import * as pulumi from "@pulumi/pulumi";
import * as ionoscloud from "@ionos-cloud/sdk-pulumi";
import * as ionoscloud from "@pulumi/ionoscloud";
import * as random from "@pulumi/random";
// Complete example
const nfsDc = new ionoscloud.compute.Datacenter("nfs_dc", {
    name: "NFS Datacenter",
    location: "de/txl",
    description: "Datacenter Description",
    secAuthProtection: false,
});
const nfsLan = new ionoscloud.compute.Lan("nfs_lan", {
    datacenterId: nfsDc.id,
    "public": false,
    name: "Lan for NFS",
});
const hDDImage = ionoscloud.compute.getImage({
    imageAlias: "ubuntu:20.04",
    type: "HDD",
    cloudInit: "V1",
    location: "de/txl",
});
const password = new random.index.Password("password", {
    length: 16,
    special: false,
});
// needed for the NIC - which provides the IP address for the NFS cluster.
const nfsServer = new ionoscloud.compute.Server("nfs_server", {
    name: "Server for NFS",
    datacenterId: nfsDc.id,
    cores: 1,
    ram: 2048,
    availabilityZone: "ZONE_1",
    cpuFamily: "INTEL_SKYLAKE",
    imageName: hDDImage.then(hDDImage => hDDImage.id),
    imagePassword: password.result,
    volume: {
        name: "system",
        size: 14,
        diskType: "SSD",
    },
    nic: {
        name: "NIC A",
        lan: nfsLan.id,
        dhcp: true,
        firewallActive: true,
    },
});
const example = new ionoscloud.nfs.Cluster("example", {
    name: "test",
    location: "de/txl",
    size: 2,
    nfs: {
        minVersion: "4.2",
    },
    connections: {
        datacenterId: nfsDc.id,
        ipAddress: "nfs_cluster_cidr_from_nic",
        lan: nfsLan.id,
    },
});
import pulumi
import pulumi_ionoscloud as ionoscloud
import pulumi_random as random
# Complete example
nfs_dc = ionoscloud.compute.Datacenter("nfs_dc",
    name="NFS Datacenter",
    location="de/txl",
    description="Datacenter Description",
    sec_auth_protection=False)
nfs_lan = ionoscloud.compute.Lan("nfs_lan",
    datacenter_id=nfs_dc.id,
    public=False,
    name="Lan for NFS")
h_dd_image = ionoscloud.compute.get_image(image_alias="ubuntu:20.04",
    type="HDD",
    cloud_init="V1",
    location="de/txl")
password = random.index.Password("password",
    length=16,
    special=False)
# needed for the NIC - which provides the IP address for the NFS cluster.
nfs_server = ionoscloud.compute.Server("nfs_server",
    name="Server for NFS",
    datacenter_id=nfs_dc.id,
    cores=1,
    ram=2048,
    availability_zone="ZONE_1",
    cpu_family="INTEL_SKYLAKE",
    image_name=h_dd_image.id,
    image_password=password["result"],
    volume={
        "name": "system",
        "size": 14,
        "disk_type": "SSD",
    },
    nic={
        "name": "NIC A",
        "lan": nfs_lan.id,
        "dhcp": True,
        "firewall_active": True,
    })
example = ionoscloud.nfs.Cluster("example",
    name="test",
    location="de/txl",
    size=2,
    nfs={
        "min_version": "4.2",
    },
    connections={
        "datacenter_id": nfs_dc.id,
        "ip_address": "nfs_cluster_cidr_from_nic",
        "lan": nfs_lan.id,
    })
package main
import (
	"github.com/ionos-cloud/pulumi-ionoscloud/sdk/go/ionoscloud/compute"
	"github.com/ionos-cloud/pulumi-ionoscloud/sdk/go/ionoscloud/nfs"
	"github.com/pulumi/pulumi-random/sdk/go/random"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		// Complete example
		nfsDc, err := compute.NewDatacenter(ctx, "nfs_dc", &compute.DatacenterArgs{
			Name:              pulumi.String("NFS Datacenter"),
			Location:          pulumi.String("de/txl"),
			Description:       pulumi.String("Datacenter Description"),
			SecAuthProtection: pulumi.Bool(false),
		})
		if err != nil {
			return err
		}
		nfsLan, err := compute.NewLan(ctx, "nfs_lan", &compute.LanArgs{
			DatacenterId: nfsDc.ID(),
			Public:       pulumi.Bool(false),
			Name:         pulumi.String("Lan for NFS"),
		})
		if err != nil {
			return err
		}
		hDDImage, err := compute.GetImage(ctx, &compute.GetImageArgs{
			ImageAlias: pulumi.StringRef("ubuntu:20.04"),
			Type:       pulumi.StringRef("HDD"),
			CloudInit:  pulumi.StringRef("V1"),
			Location:   pulumi.StringRef("de/txl"),
		}, nil)
		if err != nil {
			return err
		}
		password, err := random.NewPassword(ctx, "password", &random.PasswordArgs{
			Length:  16,
			Special: false,
		})
		if err != nil {
			return err
		}
		// needed for the NIC - which provides the IP address for the NFS cluster.
		_, err = compute.NewServer(ctx, "nfs_server", &compute.ServerArgs{
			Name:             pulumi.String("Server for NFS"),
			DatacenterId:     nfsDc.ID(),
			Cores:            pulumi.Int(1),
			Ram:              pulumi.Int(2048),
			AvailabilityZone: pulumi.String("ZONE_1"),
			CpuFamily:        pulumi.String("INTEL_SKYLAKE"),
			ImageName:        pulumi.String(hDDImage.Id),
			ImagePassword:    password.Result,
			Volume: &compute.ServerVolumeArgs{
				Name:     pulumi.String("system"),
				Size:     pulumi.Int(14),
				DiskType: pulumi.String("SSD"),
			},
			Nic: &compute.ServerNicArgs{
				Name:           pulumi.String("NIC A"),
				Lan:            nfsLan.ID(),
				Dhcp:           pulumi.Bool(true),
				FirewallActive: pulumi.Bool(true),
			},
		})
		if err != nil {
			return err
		}
		_, err = nfs.NewCluster(ctx, "example", &nfs.ClusterArgs{
			Name:     pulumi.String("test"),
			Location: pulumi.String("de/txl"),
			Size:     pulumi.Int(2),
			Nfs: &nfs.ClusterNfsArgs{
				MinVersion: pulumi.String("4.2"),
			},
			Connections: &nfs.ClusterConnectionsArgs{
				DatacenterId: nfsDc.ID(),
				IpAddress:    pulumi.String("nfs_cluster_cidr_from_nic"),
				Lan:          nfsLan.ID(),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Ionoscloud = Ionoscloud.Pulumi.Ionoscloud;
using Ionoscloud = Pulumi.Ionoscloud;
using Random = Pulumi.Random;
return await Deployment.RunAsync(() => 
{
    // Complete example
    var nfsDc = new Ionoscloud.Compute.Datacenter("nfs_dc", new()
    {
        Name = "NFS Datacenter",
        Location = "de/txl",
        Description = "Datacenter Description",
        SecAuthProtection = false,
    });
    var nfsLan = new Ionoscloud.Compute.Lan("nfs_lan", new()
    {
        DatacenterId = nfsDc.Id,
        Public = false,
        Name = "Lan for NFS",
    });
    var hDDImage = Ionoscloud.Compute.GetImage.Invoke(new()
    {
        ImageAlias = "ubuntu:20.04",
        Type = "HDD",
        CloudInit = "V1",
        Location = "de/txl",
    });
    var password = new Random.Index.Password("password", new()
    {
        Length = 16,
        Special = false,
    });
    // needed for the NIC - which provides the IP address for the NFS cluster.
    var nfsServer = new Ionoscloud.Compute.Server("nfs_server", new()
    {
        Name = "Server for NFS",
        DatacenterId = nfsDc.Id,
        Cores = 1,
        Ram = 2048,
        AvailabilityZone = "ZONE_1",
        CpuFamily = "INTEL_SKYLAKE",
        ImageName = hDDImage.Apply(getImageResult => getImageResult.Id),
        ImagePassword = password.Result,
        Volume = new Ionoscloud.Compute.Inputs.ServerVolumeArgs
        {
            Name = "system",
            Size = 14,
            DiskType = "SSD",
        },
        Nic = new Ionoscloud.Compute.Inputs.ServerNicArgs
        {
            Name = "NIC A",
            Lan = nfsLan.Id,
            Dhcp = true,
            FirewallActive = true,
        },
    });
    var example = new Ionoscloud.Nfs.Cluster("example", new()
    {
        Name = "test",
        Location = "de/txl",
        Size = 2,
        Nfs = new Ionoscloud.Nfs.Inputs.ClusterNfsArgs
        {
            MinVersion = "4.2",
        },
        Connections = new Ionoscloud.Nfs.Inputs.ClusterConnectionsArgs
        {
            DatacenterId = nfsDc.Id,
            IpAddress = "nfs_cluster_cidr_from_nic",
            Lan = nfsLan.Id,
        },
    });
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.ionoscloud.compute.Datacenter;
import com.pulumi.ionoscloud.compute.DatacenterArgs;
import com.pulumi.ionoscloud.compute.Lan;
import com.pulumi.ionoscloud.compute.LanArgs;
import com.pulumi.ionoscloud.compute.ComputeFunctions;
import com.pulumi.ionoscloud.compute.inputs.GetImageArgs;
import com.pulumi.random.password;
import com.pulumi.random.PasswordArgs;
import com.pulumi.ionoscloud.compute.Server;
import com.pulumi.ionoscloud.compute.ServerArgs;
import com.pulumi.ionoscloud.compute.inputs.ServerVolumeArgs;
import com.pulumi.ionoscloud.compute.inputs.ServerNicArgs;
import com.pulumi.ionoscloud.nfs.Cluster;
import com.pulumi.ionoscloud.nfs.ClusterArgs;
import com.pulumi.ionoscloud.nfs.inputs.ClusterNfsArgs;
import com.pulumi.ionoscloud.nfs.inputs.ClusterConnectionsArgs;
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) {
        // Complete example
        var nfsDc = new Datacenter("nfsDc", DatacenterArgs.builder()
            .name("NFS Datacenter")
            .location("de/txl")
            .description("Datacenter Description")
            .secAuthProtection(false)
            .build());
        var nfsLan = new Lan("nfsLan", LanArgs.builder()
            .datacenterId(nfsDc.id())
            .public_(false)
            .name("Lan for NFS")
            .build());
        final var hDDImage = ComputeFunctions.getImage(GetImageArgs.builder()
            .imageAlias("ubuntu:20.04")
            .type("HDD")
            .cloudInit("V1")
            .location("de/txl")
            .build());
        var password = new Password("password", PasswordArgs.builder()
            .length(16)
            .special(false)
            .build());
        // needed for the NIC - which provides the IP address for the NFS cluster.
        var nfsServer = new Server("nfsServer", ServerArgs.builder()
            .name("Server for NFS")
            .datacenterId(nfsDc.id())
            .cores(1)
            .ram(2048)
            .availabilityZone("ZONE_1")
            .cpuFamily("INTEL_SKYLAKE")
            .imageName(hDDImage.applyValue(getImageResult -> getImageResult.id()))
            .imagePassword(password.result())
            .volume(ServerVolumeArgs.builder()
                .name("system")
                .size(14)
                .diskType("SSD")
                .build())
            .nic(ServerNicArgs.builder()
                .name("NIC A")
                .lan(nfsLan.id())
                .dhcp(true)
                .firewallActive(true)
                .build())
            .build());
        var example = new Cluster("example", ClusterArgs.builder()
            .name("test")
            .location("de/txl")
            .size(2)
            .nfs(ClusterNfsArgs.builder()
                .minVersion("4.2")
                .build())
            .connections(ClusterConnectionsArgs.builder()
                .datacenterId(nfsDc.id())
                .ipAddress("nfs_cluster_cidr_from_nic")
                .lan(nfsLan.id())
                .build())
            .build());
    }
}
resources:
  # Complete example
  nfsDc:
    type: ionoscloud:compute:Datacenter
    name: nfs_dc
    properties:
      name: NFS Datacenter
      location: de/txl
      description: Datacenter Description
      secAuthProtection: false
  nfsLan:
    type: ionoscloud:compute:Lan
    name: nfs_lan
    properties:
      datacenterId: ${nfsDc.id}
      public: false
      name: Lan for NFS
  password:
    type: random:password
    properties:
      length: 16
      special: false
  # needed for the NIC - which provides the IP address for the NFS cluster.
  nfsServer:
    type: ionoscloud:compute:Server
    name: nfs_server
    properties:
      name: Server for NFS
      datacenterId: ${nfsDc.id}
      cores: 1
      ram: 2048
      availabilityZone: ZONE_1
      cpuFamily: INTEL_SKYLAKE
      imageName: ${hDDImage.id}
      imagePassword: ${password.result}
      volume:
        name: system
        size: 14
        diskType: SSD
      nic:
        name: NIC A
        lan: ${nfsLan.id}
        dhcp: true
        firewallActive: true
  example:
    type: ionoscloud:nfs:Cluster
    properties:
      name: test
      location: de/txl
      size: 2
      nfs:
        minVersion: '4.2'
      connections:
        datacenterId: ${nfsDc.id}
        ipAddress: nfs_cluster_cidr_from_nic
        lan: ${nfsLan.id}
variables:
  hDDImage:
    fn::invoke:
      function: ionoscloud:compute:getImage
      arguments:
        imageAlias: ubuntu:20.04
        type: HDD
        cloudInit: V1
        location: de/txl
Create Cluster Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new Cluster(name: string, args: ClusterArgs, opts?: CustomResourceOptions);@overload
def Cluster(resource_name: str,
            args: ClusterArgs,
            opts: Optional[ResourceOptions] = None)
@overload
def Cluster(resource_name: str,
            opts: Optional[ResourceOptions] = None,
            connections: Optional[ClusterConnectionsArgs] = None,
            size: Optional[int] = None,
            location: Optional[str] = None,
            name: Optional[str] = None,
            nfs: Optional[ClusterNfsArgs] = None)func NewCluster(ctx *Context, name string, args ClusterArgs, opts ...ResourceOption) (*Cluster, error)public Cluster(string name, ClusterArgs args, CustomResourceOptions? opts = null)
public Cluster(String name, ClusterArgs args)
public Cluster(String name, ClusterArgs args, CustomResourceOptions options)
type: ionoscloud:nfs:Cluster
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 ClusterArgs
- 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 ClusterArgs
- 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 ClusterArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args ClusterArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args ClusterArgs
- 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 exampleclusterResourceResourceFromNfscluster = new Ionoscloud.Nfs.Cluster("exampleclusterResourceResourceFromNfscluster", new()
{
    Connections = new Ionoscloud.Nfs.Inputs.ClusterConnectionsArgs
    {
        DatacenterId = "string",
        IpAddress = "string",
        Lan = "string",
    },
    Size = 0,
    Location = "string",
    Name = "string",
    Nfs = new Ionoscloud.Nfs.Inputs.ClusterNfsArgs
    {
        MinVersion = "string",
    },
});
example, err := nfs.NewCluster(ctx, "exampleclusterResourceResourceFromNfscluster", &nfs.ClusterArgs{
	Connections: &nfs.ClusterConnectionsArgs{
		DatacenterId: pulumi.String("string"),
		IpAddress:    pulumi.String("string"),
		Lan:          pulumi.String("string"),
	},
	Size:     pulumi.Int(0),
	Location: pulumi.String("string"),
	Name:     pulumi.String("string"),
	Nfs: &nfs.ClusterNfsArgs{
		MinVersion: pulumi.String("string"),
	},
})
var exampleclusterResourceResourceFromNfscluster = new com.ionoscloud.pulumi.ionoscloud.nfs.Cluster("exampleclusterResourceResourceFromNfscluster", com.ionoscloud.pulumi.ionoscloud.nfs.ClusterArgs.builder()
    .connections(ClusterConnectionsArgs.builder()
        .datacenterId("string")
        .ipAddress("string")
        .lan("string")
        .build())
    .size(0)
    .location("string")
    .name("string")
    .nfs(ClusterNfsArgs.builder()
        .minVersion("string")
        .build())
    .build());
examplecluster_resource_resource_from_nfscluster = ionoscloud.nfs.Cluster("exampleclusterResourceResourceFromNfscluster",
    connections={
        "datacenter_id": "string",
        "ip_address": "string",
        "lan": "string",
    },
    size=0,
    location="string",
    name="string",
    nfs={
        "min_version": "string",
    })
const exampleclusterResourceResourceFromNfscluster = new ionoscloud.nfs.Cluster("exampleclusterResourceResourceFromNfscluster", {
    connections: {
        datacenterId: "string",
        ipAddress: "string",
        lan: "string",
    },
    size: 0,
    location: "string",
    name: "string",
    nfs: {
        minVersion: "string",
    },
});
type: ionoscloud:nfs:Cluster
properties:
    connections:
        datacenterId: string
        ipAddress: string
        lan: string
    location: string
    name: string
    nfs:
        minVersion: string
    size: 0
Cluster 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 Cluster resource accepts the following input properties:
- Connections
Ionoscloud.Cluster Connections 
- The network connections for the Network File Storage Cluster.
- Size int
- The size of the Network File Storage cluster in TiB. Note that the cluster size cannot be reduced after provisioning. This value determines the billing fees. Default is 2. The minimum value is2and the maximum value is42.
- Location string
- The location where the Network File Storage cluster is located. If this is not set and if no value is provided for the IONOS_API_URLenv var, the defaultlocationwill be:de/fra.- de/fra- Frankfurt
- de/txl- Berlin
 
- Name string
- The name of the Network File Storage cluster.
- Nfs
Ionoscloud.Cluster Nfs 
- Connections
ClusterConnections Args 
- The network connections for the Network File Storage Cluster.
- Size int
- The size of the Network File Storage cluster in TiB. Note that the cluster size cannot be reduced after provisioning. This value determines the billing fees. Default is 2. The minimum value is2and the maximum value is42.
- Location string
- The location where the Network File Storage cluster is located. If this is not set and if no value is provided for the IONOS_API_URLenv var, the defaultlocationwill be:de/fra.- de/fra- Frankfurt
- de/txl- Berlin
 
- Name string
- The name of the Network File Storage cluster.
- Nfs
ClusterNfs Args 
- connections
ClusterConnections 
- The network connections for the Network File Storage Cluster.
- size Integer
- The size of the Network File Storage cluster in TiB. Note that the cluster size cannot be reduced after provisioning. This value determines the billing fees. Default is 2. The minimum value is2and the maximum value is42.
- location String
- The location where the Network File Storage cluster is located. If this is not set and if no value is provided for the IONOS_API_URLenv var, the defaultlocationwill be:de/fra.- de/fra- Frankfurt
- de/txl- Berlin
 
- name String
- The name of the Network File Storage cluster.
- nfs
ClusterNfs 
- connections
ClusterConnections 
- The network connections for the Network File Storage Cluster.
- size number
- The size of the Network File Storage cluster in TiB. Note that the cluster size cannot be reduced after provisioning. This value determines the billing fees. Default is 2. The minimum value is2and the maximum value is42.
- location string
- The location where the Network File Storage cluster is located. If this is not set and if no value is provided for the IONOS_API_URLenv var, the defaultlocationwill be:de/fra.- de/fra- Frankfurt
- de/txl- Berlin
 
- name string
- The name of the Network File Storage cluster.
- nfs
ClusterNfs 
- connections
ClusterConnections Args 
- The network connections for the Network File Storage Cluster.
- size int
- The size of the Network File Storage cluster in TiB. Note that the cluster size cannot be reduced after provisioning. This value determines the billing fees. Default is 2. The minimum value is2and the maximum value is42.
- location str
- The location where the Network File Storage cluster is located. If this is not set and if no value is provided for the IONOS_API_URLenv var, the defaultlocationwill be:de/fra.- de/fra- Frankfurt
- de/txl- Berlin
 
- name str
- The name of the Network File Storage cluster.
- nfs
ClusterNfs Args 
- connections Property Map
- The network connections for the Network File Storage Cluster.
- size Number
- The size of the Network File Storage cluster in TiB. Note that the cluster size cannot be reduced after provisioning. This value determines the billing fees. Default is 2. The minimum value is2and the maximum value is42.
- location String
- The location where the Network File Storage cluster is located. If this is not set and if no value is provided for the IONOS_API_URLenv var, the defaultlocationwill be:de/fra.- de/fra- Frankfurt
- de/txl- Berlin
 
- name String
- The name of the Network File Storage cluster.
- nfs Property Map
Outputs
All input properties are implicitly available as output properties. Additionally, the Cluster 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 Cluster Resource
Get an existing Cluster 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?: ClusterState, opts?: CustomResourceOptions): Cluster@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        connections: Optional[ClusterConnectionsArgs] = None,
        location: Optional[str] = None,
        name: Optional[str] = None,
        nfs: Optional[ClusterNfsArgs] = None,
        size: Optional[int] = None) -> Clusterfunc GetCluster(ctx *Context, name string, id IDInput, state *ClusterState, opts ...ResourceOption) (*Cluster, error)public static Cluster Get(string name, Input<string> id, ClusterState? state, CustomResourceOptions? opts = null)public static Cluster get(String name, Output<String> id, ClusterState state, CustomResourceOptions options)resources:  _:    type: ionoscloud:nfs:Cluster    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.
- Connections
Ionoscloud.Cluster Connections 
- The network connections for the Network File Storage Cluster.
- Location string
- The location where the Network File Storage cluster is located. If this is not set and if no value is provided for the IONOS_API_URLenv var, the defaultlocationwill be:de/fra.- de/fra- Frankfurt
- de/txl- Berlin
 
- Name string
- The name of the Network File Storage cluster.
- Nfs
Ionoscloud.Cluster Nfs 
- Size int
- The size of the Network File Storage cluster in TiB. Note that the cluster size cannot be reduced after provisioning. This value determines the billing fees. Default is 2. The minimum value is2and the maximum value is42.
- Connections
ClusterConnections Args 
- The network connections for the Network File Storage Cluster.
- Location string
- The location where the Network File Storage cluster is located. If this is not set and if no value is provided for the IONOS_API_URLenv var, the defaultlocationwill be:de/fra.- de/fra- Frankfurt
- de/txl- Berlin
 
- Name string
- The name of the Network File Storage cluster.
- Nfs
ClusterNfs Args 
- Size int
- The size of the Network File Storage cluster in TiB. Note that the cluster size cannot be reduced after provisioning. This value determines the billing fees. Default is 2. The minimum value is2and the maximum value is42.
- connections
ClusterConnections 
- The network connections for the Network File Storage Cluster.
- location String
- The location where the Network File Storage cluster is located. If this is not set and if no value is provided for the IONOS_API_URLenv var, the defaultlocationwill be:de/fra.- de/fra- Frankfurt
- de/txl- Berlin
 
- name String
- The name of the Network File Storage cluster.
- nfs
ClusterNfs 
- size Integer
- The size of the Network File Storage cluster in TiB. Note that the cluster size cannot be reduced after provisioning. This value determines the billing fees. Default is 2. The minimum value is2and the maximum value is42.
- connections
ClusterConnections 
- The network connections for the Network File Storage Cluster.
- location string
- The location where the Network File Storage cluster is located. If this is not set and if no value is provided for the IONOS_API_URLenv var, the defaultlocationwill be:de/fra.- de/fra- Frankfurt
- de/txl- Berlin
 
- name string
- The name of the Network File Storage cluster.
- nfs
ClusterNfs 
- size number
- The size of the Network File Storage cluster in TiB. Note that the cluster size cannot be reduced after provisioning. This value determines the billing fees. Default is 2. The minimum value is2and the maximum value is42.
- connections
ClusterConnections Args 
- The network connections for the Network File Storage Cluster.
- location str
- The location where the Network File Storage cluster is located. If this is not set and if no value is provided for the IONOS_API_URLenv var, the defaultlocationwill be:de/fra.- de/fra- Frankfurt
- de/txl- Berlin
 
- name str
- The name of the Network File Storage cluster.
- nfs
ClusterNfs Args 
- size int
- The size of the Network File Storage cluster in TiB. Note that the cluster size cannot be reduced after provisioning. This value determines the billing fees. Default is 2. The minimum value is2and the maximum value is42.
- connections Property Map
- The network connections for the Network File Storage Cluster.
- location String
- The location where the Network File Storage cluster is located. If this is not set and if no value is provided for the IONOS_API_URLenv var, the defaultlocationwill be:de/fra.- de/fra- Frankfurt
- de/txl- Berlin
 
- name String
- The name of the Network File Storage cluster.
- nfs Property Map
- size Number
- The size of the Network File Storage cluster in TiB. Note that the cluster size cannot be reduced after provisioning. This value determines the billing fees. Default is 2. The minimum value is2and the maximum value is42.
Supporting Types
ClusterConnections, ClusterConnectionsArgs    
- DatacenterId string
- The ID of the datacenter where the Network File Storage cluster is located.
- IpAddress string
- The IP address and prefix of the Network File Storage cluster. The IP address can be either IPv4 or IPv6. The IP address has to be given with CIDR notation.
- Lan string
- The Private LAN to which the Network File Storage cluster must be connected.- ⚠ NOTE: - IONOS_API_URL_NFScan be used to set a custom API URL for the resource.- locationfield needs to be empty, otherwise it will override the custom API URL. Setting- endpointor- IONOS_API_URLdoes not have any effect.
- DatacenterId string
- The ID of the datacenter where the Network File Storage cluster is located.
- IpAddress string
- The IP address and prefix of the Network File Storage cluster. The IP address can be either IPv4 or IPv6. The IP address has to be given with CIDR notation.
- Lan string
- The Private LAN to which the Network File Storage cluster must be connected.- ⚠ NOTE: - IONOS_API_URL_NFScan be used to set a custom API URL for the resource.- locationfield needs to be empty, otherwise it will override the custom API URL. Setting- endpointor- IONOS_API_URLdoes not have any effect.
- datacenterId String
- The ID of the datacenter where the Network File Storage cluster is located.
- ipAddress String
- The IP address and prefix of the Network File Storage cluster. The IP address can be either IPv4 or IPv6. The IP address has to be given with CIDR notation.
- lan String
- The Private LAN to which the Network File Storage cluster must be connected.- ⚠ NOTE: - IONOS_API_URL_NFScan be used to set a custom API URL for the resource.- locationfield needs to be empty, otherwise it will override the custom API URL. Setting- endpointor- IONOS_API_URLdoes not have any effect.
- datacenterId string
- The ID of the datacenter where the Network File Storage cluster is located.
- ipAddress string
- The IP address and prefix of the Network File Storage cluster. The IP address can be either IPv4 or IPv6. The IP address has to be given with CIDR notation.
- lan string
- The Private LAN to which the Network File Storage cluster must be connected.- ⚠ NOTE: - IONOS_API_URL_NFScan be used to set a custom API URL for the resource.- locationfield needs to be empty, otherwise it will override the custom API URL. Setting- endpointor- IONOS_API_URLdoes not have any effect.
- datacenter_id str
- The ID of the datacenter where the Network File Storage cluster is located.
- ip_address str
- The IP address and prefix of the Network File Storage cluster. The IP address can be either IPv4 or IPv6. The IP address has to be given with CIDR notation.
- lan str
- The Private LAN to which the Network File Storage cluster must be connected.- ⚠ NOTE: - IONOS_API_URL_NFScan be used to set a custom API URL for the resource.- locationfield needs to be empty, otherwise it will override the custom API URL. Setting- endpointor- IONOS_API_URLdoes not have any effect.
- datacenterId String
- The ID of the datacenter where the Network File Storage cluster is located.
- ipAddress String
- The IP address and prefix of the Network File Storage cluster. The IP address can be either IPv4 or IPv6. The IP address has to be given with CIDR notation.
- lan String
- The Private LAN to which the Network File Storage cluster must be connected.- ⚠ NOTE: - IONOS_API_URL_NFScan be used to set a custom API URL for the resource.- locationfield needs to be empty, otherwise it will override the custom API URL. Setting- endpointor- IONOS_API_URLdoes not have any effect.
ClusterNfs, ClusterNfsArgs    
- MinVersion string
- The minimum supported version of the NFS cluster. Supported values: 4.2. Default is4.2.
- MinVersion string
- The minimum supported version of the NFS cluster. Supported values: 4.2. Default is4.2.
- minVersion String
- The minimum supported version of the NFS cluster. Supported values: 4.2. Default is4.2.
- minVersion string
- The minimum supported version of the NFS cluster. Supported values: 4.2. Default is4.2.
- min_version str
- The minimum supported version of the NFS cluster. Supported values: 4.2. Default is4.2.
- minVersion String
- The minimum supported version of the NFS cluster. Supported values: 4.2. Default is4.2.
Import
A Network File Storage Cluster resource can be imported using its location and resource id:
$ pulumi import ionoscloud:nfs/cluster:Cluster name location:uuid
To learn more about importing existing cloud resources, see Importing resources.
Package Details
- Repository
- ionoscloud ionos-cloud/pulumi-ionoscloud
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the ionoscloudTerraform Provider.