OpenZfsFileSystemArgs

data class OpenZfsFileSystemArgs(val automaticBackupRetentionDays: Output<Int>? = null, val backupId: Output<String>? = null, val copyTagsToBackups: Output<Boolean>? = null, val copyTagsToVolumes: Output<Boolean>? = null, val dailyAutomaticBackupStartTime: Output<String>? = null, val deleteOptions: Output<List<String>>? = null, val deploymentType: Output<String>? = null, val diskIopsConfiguration: Output<OpenZfsFileSystemDiskIopsConfigurationArgs>? = null, val endpointIpAddressRange: Output<String>? = null, val finalBackupTags: Output<Map<String, String>>? = null, val kmsKeyId: Output<String>? = null, val preferredSubnetId: Output<String>? = null, val rootVolumeConfiguration: Output<OpenZfsFileSystemRootVolumeConfigurationArgs>? = null, val routeTableIds: Output<List<String>>? = null, val securityGroupIds: Output<List<String>>? = null, val skipFinalBackup: Output<Boolean>? = null, val storageCapacity: Output<Int>? = null, val storageType: Output<String>? = null, val subnetIds: Output<List<String>>? = null, val tags: Output<Map<String, String>>? = null, val throughputCapacity: Output<Int>? = null, val weeklyMaintenanceStartTime: Output<String>? = null) : ConvertibleToJava<OpenZfsFileSystemArgs>

Manages an Amazon FSx for OpenZFS file system. See the FSx OpenZFS User Guide for more information.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const test = new aws.fsx.OpenZfsFileSystem("test", {
storageCapacity: 64,
subnetIds: [test1&#46;id],
deploymentType: "SINGLE_AZ_1",
throughputCapacity: 64,
});
import pulumi
import pulumi_aws as aws
test = aws.fsx.OpenZfsFileSystem("test",
storage_capacity=64,
subnet_ids=[test1["id"]],
deployment_type="SINGLE_AZ_1",
throughput_capacity=64)
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var test = new Aws.Fsx.OpenZfsFileSystem("test", new()
{
StorageCapacity = 64,
SubnetIds = new[]
{
test1.Id,
},
DeploymentType = "SINGLE_AZ_1",
ThroughputCapacity = 64,
});
});
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/fsx"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := fsx.NewOpenZfsFileSystem(ctx, "test", &fsx.OpenZfsFileSystemArgs{
StorageCapacity: pulumi.Int(64),
SubnetIds: pulumi.StringArray{
test1.Id,
},
DeploymentType: pulumi.String("SINGLE_AZ_1"),
ThroughputCapacity: pulumi.Int(64),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.fsx.OpenZfsFileSystem;
import com.pulumi.aws.fsx.OpenZfsFileSystemArgs;
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 test = new OpenZfsFileSystem("test", OpenZfsFileSystemArgs.builder()
.storageCapacity(64)
.subnetIds(test1.id())
.deploymentType("SINGLE_AZ_1")
.throughputCapacity(64)
.build());
}
}
resources:
test:
type: aws:fsx:OpenZfsFileSystem
properties:
storageCapacity: 64
subnetIds:
- ${test1.id}
deploymentType: SINGLE_AZ_1
throughputCapacity: 64

Import

Using pulumi import, import FSx File Systems using the id. For example:

$ pulumi import aws:fsx/openZfsFileSystem:OpenZfsFileSystem example fs-543ab12b1ca672f33

Certain resource arguments, like security_group_ids, do not have a FSx API method for reading the information after creation. If the argument is set in the Pulumi program on an imported resource, Pulumi will always show a difference. To workaround this behavior, either omit the argument from the Pulumi program or use ignore_changes to hide the difference. For example:

Constructors

Link copied to clipboard
constructor(automaticBackupRetentionDays: Output<Int>? = null, backupId: Output<String>? = null, copyTagsToBackups: Output<Boolean>? = null, copyTagsToVolumes: Output<Boolean>? = null, dailyAutomaticBackupStartTime: Output<String>? = null, deleteOptions: Output<List<String>>? = null, deploymentType: Output<String>? = null, diskIopsConfiguration: Output<OpenZfsFileSystemDiskIopsConfigurationArgs>? = null, endpointIpAddressRange: Output<String>? = null, finalBackupTags: Output<Map<String, String>>? = null, kmsKeyId: Output<String>? = null, preferredSubnetId: Output<String>? = null, rootVolumeConfiguration: Output<OpenZfsFileSystemRootVolumeConfigurationArgs>? = null, routeTableIds: Output<List<String>>? = null, securityGroupIds: Output<List<String>>? = null, skipFinalBackup: Output<Boolean>? = null, storageCapacity: Output<Int>? = null, storageType: Output<String>? = null, subnetIds: Output<List<String>>? = null, tags: Output<Map<String, String>>? = null, throughputCapacity: Output<Int>? = null, weeklyMaintenanceStartTime: Output<String>? = null)

Properties

Link copied to clipboard
val automaticBackupRetentionDays: Output<Int>? = null

The number of days to retain automatic backups. Setting this to 0 disables automatic backups. You can retain automatic backups for a maximum of 90 days.

Link copied to clipboard
val backupId: Output<String>? = null

The ID of the source backup to create the filesystem from.

Link copied to clipboard
val copyTagsToBackups: Output<Boolean>? = null

A boolean flag indicating whether tags for the file system should be copied to backups. The default value is false.

Link copied to clipboard
val copyTagsToVolumes: Output<Boolean>? = null

A boolean flag indicating whether tags for the file system should be copied to snapshots. The default value is false.

Link copied to clipboard

A recurring daily time, in the format HH:MM. HH is the zero-padded hour of the day (0-23), and MM is the zero-padded minute of the hour. For example, 05:00 specifies 5 AM daily. Requires automatic_backup_retention_days to be set.

Link copied to clipboard
val deleteOptions: Output<List<String>>? = null

List of delete options, which at present supports only one value that specifies whether to delete all child volumes and snapshots when the file system is deleted. Valid values: DELETE_CHILD_VOLUMES_AND_SNAPSHOTS.

Link copied to clipboard
val deploymentType: Output<String>? = null

Filesystem deployment type. See the AWS API documentation for a list of valid values.

Link copied to clipboard

The SSD IOPS configuration for the Amazon FSx for OpenZFS file system. See disk_iops_configuration Block for details.

Link copied to clipboard
val endpointIpAddressRange: Output<String>? = null

(Multi-AZ only) Specifies the IP address range in which the endpoints to access your file system will be created.

Link copied to clipboard
val finalBackupTags: Output<Map<String, String>>? = null

A map of tags to apply to the file system's final backup.

Link copied to clipboard
val kmsKeyId: Output<String>? = null

ARN for the KMS Key to encrypt the file system at rest, Defaults to an AWS managed KMS Key.

Link copied to clipboard
val preferredSubnetId: Output<String>? = null

(Multi-AZ only) Required when deployment_type is set to MULTI_AZ_1. This specifies the subnet in which you want the preferred file server to be located.

Link copied to clipboard

The configuration for the root volume of the file system. All other volumes are children or the root volume. See root_volume_configuration Block for details.

Link copied to clipboard
val routeTableIds: Output<List<String>>? = null

(Multi-AZ only) Specifies the route tables in which Amazon FSx creates the rules for routing traffic to the correct file server. You should specify all virtual private cloud (VPC) route tables associated with the subnets in which your clients are located. By default, Amazon FSx selects your VPC's default route table.

Link copied to clipboard
val securityGroupIds: Output<List<String>>? = null

A list of IDs for the security groups that apply to the specified network interfaces created for file system access. These security groups will apply to all network interfaces.

Link copied to clipboard
val skipFinalBackup: Output<Boolean>? = null

When enabled, will skip the default final backup taken when the file system is deleted. This configuration must be applied separately before attempting to delete the resource to have the desired behavior. Defaults to false.

Link copied to clipboard
val storageCapacity: Output<Int>? = null

The storage capacity (GiB) of the file system. Valid values between 64 and 524288.

Link copied to clipboard
val storageType: Output<String>? = null

The filesystem storage type. Only SSD is supported.

Link copied to clipboard
val subnetIds: Output<List<String>>? = null

A list of IDs for the subnets that the file system will be accessible from.

Link copied to clipboard
val tags: Output<Map<String, String>>? = null

A map of tags to assign to the file system. .If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.

Link copied to clipboard
val throughputCapacity: Output<Int>? = null

Throughput (MB/s) of the file system. Valid values depend on deployment_type. Must be one of 64, 128, 256, 512, 1024, 2048, 3072, 4096 for SINGLE_AZ_1. Must be one of 160, 320, 640, 1280, 2560, 3840, 5120, 7680, 10240 for SINGLE_AZ_2. The following arguments are optional:

Link copied to clipboard
val weeklyMaintenanceStartTime: Output<String>? = null

The preferred start time (in d:HH:MM format) to perform weekly maintenance, in the UTC time zone.

Functions

Link copied to clipboard
open override fun toJava(): OpenZfsFileSystemArgs