Class OntapFileSystem


  • public class OntapFileSystem
    extends com.pulumi.resources.CustomResource
    Manages an Amazon FSx for NetApp ONTAP file system. See the [FSx ONTAP User Guide](https://docs.aws.amazon.com/fsx/latest/ONTAPGuide/what-is-fsx-ontap.html) for more information. ## Example Usage
     
     package generated_program;
     
     import com.pulumi.Context;
     import com.pulumi.Pulumi;
     import com.pulumi.core.Output;
     import com.pulumi.aws.fsx.OntapFileSystem;
     import com.pulumi.aws.fsx.OntapFileSystemArgs;
     import java.util.ArrayList;
     import java.util.Arrays;
     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 OntapFileSystem("test", OntapFileSystemArgs.builder()
                 .storageCapacity(1024)
                 .subnetIds(            
                     test1.id(),
                     test2.id())
                 .deploymentType("MULTI_AZ_1")
                 .throughputCapacity(512)
                 .preferredSubnetId(test1.id())
                 .build());
     
         }
     }
     
     
     
     package generated_program;
     
     import com.pulumi.Context;
     import com.pulumi.Pulumi;
     import com.pulumi.core.Output;
     import com.pulumi.aws.fsx.OntapFileSystem;
     import com.pulumi.aws.fsx.OntapFileSystemArgs;
     import java.util.ArrayList;
     import java.util.Arrays;
     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 testhapairs = new OntapFileSystem("testhapairs", OntapFileSystemArgs.builder()
                 .storageCapacity(2048)
                 .subnetIds(test1.id())
                 .deploymentType("SINGLE_AZ_1")
                 .haPairs(2)
                 .throughputCapacityPerHaPair(128)
                 .preferredSubnetId(test1.id())
                 .build());
     
         }
     }
     
     
     
     package generated_program;
     
     import com.pulumi.Context;
     import com.pulumi.Pulumi;
     import com.pulumi.core.Output;
     import com.pulumi.aws.fsx.OntapFileSystem;
     import com.pulumi.aws.fsx.OntapFileSystemArgs;
     import java.util.ArrayList;
     import java.util.Arrays;
     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 testsingleazgen2 = new OntapFileSystem("testsingleazgen2", OntapFileSystemArgs.builder()
                 .storageCapacity(4096)
                 .subnetIds(test1.id())
                 .deploymentType("SINGLE_AZ_2")
                 .haPairs(4)
                 .throughputCapacityPerHaPair(384)
                 .preferredSubnetId(test1.id())
                 .build());
     
         }
     }
     
     
     
     package generated_program;
     
     import com.pulumi.Context;
     import com.pulumi.Pulumi;
     import com.pulumi.core.Output;
     import com.pulumi.aws.fsx.OntapFileSystem;
     import com.pulumi.aws.fsx.OntapFileSystemArgs;
     import java.util.ArrayList;
     import java.util.Arrays;
     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 testmultiazgen2 = new OntapFileSystem("testmultiazgen2", OntapFileSystemArgs.builder()
                 .storageCapacity(1024)
                 .subnetIds(            
                     test1.id(),
                     test2.id())
                 .deploymentType("MULTI_AZ_2")
                 .haPairs(1)
                 .throughputCapacityPerHaPair(384)
                 .preferredSubnetId(test1.id())
                 .build());
     
         }
     }
     
     
    ## Import Using `pulumi import`, import FSx File Systems using the `id`. For example: ```sh $ pulumi import aws:fsx/ontapFileSystem:OntapFileSystem example fs-543ab12b1ca672f33 ``` Certain resource arguments, like `securityGroupIds`, 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 `ignoreChanges` to hide the difference. For example:
     
     package generated_program;
     
     import com.pulumi.Context;
     import com.pulumi.Pulumi;
     import com.pulumi.core.Output;
     import com.pulumi.aws.fsx.OntapFileSystem;
     import com.pulumi.aws.fsx.OntapFileSystemArgs;
     import com.pulumi.resources.CustomResourceOptions;
     import java.util.ArrayList;
     import java.util.Arrays;
     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 example = new OntapFileSystem("example", OntapFileSystemArgs.builder()
                 .securityGroupIds(exampleAwsSecurityGroup.id())
                 .build(), CustomResourceOptions.builder()
                     .ignoreChanges("securityGroupIds")
                     .build());
     
         }
     }
     
     
    • Nested Class Summary

      • Nested classes/interfaces inherited from class com.pulumi.resources.CustomResource

        com.pulumi.resources.CustomResource.CustomResourceInternal
      • Nested classes/interfaces inherited from class com.pulumi.resources.Resource

        com.pulumi.resources.Resource.LazyField<T extends java.lang.Object>, com.pulumi.resources.Resource.LazyFields, com.pulumi.resources.Resource.ResourceInternal
    • Field Summary

      • Fields inherited from class com.pulumi.resources.Resource

        childResources, remote
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      com.pulumi.core.Output<java.lang.String> arn()  
      com.pulumi.core.Output<java.util.Optional<java.lang.Integer>> automaticBackupRetentionDays()  
      com.pulumi.core.Output<java.lang.String> dailyAutomaticBackupStartTime()  
      com.pulumi.core.Output<java.lang.String> deploymentType()  
      com.pulumi.core.Output<OntapFileSystemDiskIopsConfiguration> diskIopsConfiguration()  
      com.pulumi.core.Output<java.lang.String> dnsName()  
      com.pulumi.core.Output<java.lang.String> endpointIpAddressRange()  
      com.pulumi.core.Output<java.util.List<OntapFileSystemEndpoint>> endpoints()  
      com.pulumi.core.Output<java.util.Optional<java.lang.String>> fsxAdminPassword()  
      static OntapFileSystem get​(java.lang.String name, com.pulumi.core.Output<java.lang.String> id, OntapFileSystemState state, com.pulumi.resources.CustomResourceOptions options)
      Get an existing Host resource's state with the given name, ID, and optional extra properties used to qualify the lookup.
      com.pulumi.core.Output<java.lang.Integer> haPairs()  
      com.pulumi.core.Output<java.lang.String> kmsKeyId()  
      com.pulumi.core.Output<java.util.List<java.lang.String>> networkInterfaceIds()  
      com.pulumi.core.Output<java.lang.String> networkType()  
      com.pulumi.core.Output<java.lang.String> ownerId()  
      com.pulumi.core.Output<java.lang.String> preferredSubnetId()  
      com.pulumi.core.Output<java.lang.String> region()  
      com.pulumi.core.Output<java.util.List<java.lang.String>> routeTableIds()  
      com.pulumi.core.Output<java.util.Optional<java.util.List<java.lang.String>>> securityGroupIds()  
      com.pulumi.core.Output<java.lang.Integer> storageCapacity()  
      com.pulumi.core.Output<java.util.Optional<java.lang.String>> storageType()  
      com.pulumi.core.Output<java.util.List<java.lang.String>> subnetIds()  
      com.pulumi.core.Output<java.util.Optional<java.util.Map<java.lang.String,​java.lang.String>>> tags()  
      com.pulumi.core.Output<java.util.Map<java.lang.String,​java.lang.String>> tagsAll()  
      com.pulumi.core.Output<java.lang.Integer> throughputCapacity()  
      com.pulumi.core.Output<java.lang.Integer> throughputCapacityPerHaPair()  
      com.pulumi.core.Output<java.lang.String> vpcId()  
      com.pulumi.core.Output<java.lang.String> weeklyMaintenanceStartTime()  
      • Methods inherited from class com.pulumi.resources.CustomResource

        getId, id, idFuture
      • Methods inherited from class com.pulumi.resources.Resource

        getChildResources, getResourceName, getResourceType, getUrn, pulumiChildResources, pulumiResourceName, pulumiResourceType, urn
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • OntapFileSystem

        public OntapFileSystem​(java.lang.String name)
        Parameters:
        name - The _unique_ name of the resulting resource.
      • OntapFileSystem

        public OntapFileSystem​(java.lang.String name,
                               OntapFileSystemArgs args)
        Parameters:
        name - The _unique_ name of the resulting resource.
        args - The arguments to use to populate this resource's properties.
      • OntapFileSystem

        public OntapFileSystem​(java.lang.String name,
                               OntapFileSystemArgs args,
                               @Nullable
                               com.pulumi.resources.CustomResourceOptions options)
        Parameters:
        name - The _unique_ name of the resulting resource.
        args - The arguments to use to populate this resource's properties.
        options - A bag of options that control this resource's behavior.
    • Method Detail

      • arn

        public com.pulumi.core.Output<java.lang.String> arn()
        Returns:
        ARN of the file system.
      • automaticBackupRetentionDays

        public com.pulumi.core.Output<java.util.Optional<java.lang.Integer>> automaticBackupRetentionDays()
        Returns:
        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.
      • dailyAutomaticBackupStartTime

        public com.pulumi.core.Output<java.lang.String> dailyAutomaticBackupStartTime()
        Returns:
        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 `automaticBackupRetentionDays` to be set.
      • deploymentType

        public com.pulumi.core.Output<java.lang.String> deploymentType()
        Returns:
        Filesystem deployment type. Supports `MULTI_AZ_1`, `MULTI_AZ_2`, `SINGLE_AZ_1`, and `SINGLE_AZ_2`.
      • diskIopsConfiguration

        public com.pulumi.core.Output<OntapFileSystemDiskIopsConfiguration> diskIopsConfiguration()
        Returns:
        SSD IOPS configuration for the Amazon FSx for NetApp ONTAP file system. See `diskIopsConfiguration` below.
      • dnsName

        public com.pulumi.core.Output<java.lang.String> dnsName()
        Returns:
        Domain Name Service (DNS) name for the file system. You can mount your file system using its DNS name.
      • endpointIpAddressRange

        public com.pulumi.core.Output<java.lang.String> endpointIpAddressRange()
        Returns:
        IP address range in which the endpoints to access your file system will be created. By default, Amazon FSx selects an unused IP address range for you from the 198.19.\* range. Note that the 198.19.\* range is also used by AWS services such as WorkSpaces and AppStream 2.0 for their [management network interfaces](https://docs.aws.amazon.com/appstream2/latest/developerguide/management_ports.html).
      • endpoints

        public com.pulumi.core.Output<java.util.List<OntapFileSystemEndpoint>> endpoints()
        Returns:
        Endpoints that are used to access data or to manage the file system using the NetApp ONTAP CLI, REST API, or NetApp SnapMirror. See `endpoints` below.
      • fsxAdminPassword

        public com.pulumi.core.Output<java.util.Optional<java.lang.String>> fsxAdminPassword()
        Returns:
        ONTAP administrative password for the fsxadmin user that you can use to administer your file system using the ONTAP CLI and REST API.
      • haPairs

        public com.pulumi.core.Output<java.lang.Integer> haPairs()
        Returns:
        Number of haPairs to deploy for the file system. Valid value is 1 for `SINGLE_AZ_1` or `MULTI_AZ_1` and `MULTI_AZ_2`. Valid values are 1 through 12 for `SINGLE_AZ_2`.
      • kmsKeyId

        public com.pulumi.core.Output<java.lang.String> kmsKeyId()
        Returns:
        ARN for the KMS Key to encrypt the file system at rest, Defaults to an AWS managed KMS Key.
      • networkInterfaceIds

        public com.pulumi.core.Output<java.util.List<java.lang.String>> networkInterfaceIds()
        Returns:
        Set of Elastic Network Interface identifiers from which the file system is accessible The first network interface returned is the primary network interface.
      • networkType

        public com.pulumi.core.Output<java.lang.String> networkType()
        Returns:
        Network type. Valid values are `IPV4` and `DUAL`. Default value is `IPV4`.
      • ownerId

        public com.pulumi.core.Output<java.lang.String> ownerId()
        Returns:
        AWS account identifier that created the file system.
      • preferredSubnetId

        public com.pulumi.core.Output<java.lang.String> preferredSubnetId()
        Returns:
        ID for a subnet. A subnet is a range of IP addresses in your VPC.
      • region

        public com.pulumi.core.Output<java.lang.String> region()
        Returns:
        Region where this resource will be [managed](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). Defaults to the Region set in the provider configuration.
      • routeTableIds

        public com.pulumi.core.Output<java.util.List<java.lang.String>> routeTableIds()
        Returns:
        VPC route tables in which your file system's endpoints will be created. You should specify all VPC route tables associated with the subnets in which your clients are located. By default, Amazon FSx selects your VPC's default route table.
      • securityGroupIds

        public com.pulumi.core.Output<java.util.Optional<java.util.List<java.lang.String>>> securityGroupIds()
        Returns:
        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.
      • storageCapacity

        public com.pulumi.core.Output<java.lang.Integer> storageCapacity()
        Returns:
        Storage capacity (GiB) of the file system. Valid values between `1024` and `196608` for file systems with deploymentType `SINGLE_AZ_1` and `MULTI_AZ_1`. Valid values are between `1024` and `524288` for `MULTI_AZ_2`. Valid values between `1024` (`1024` per ha pair) and `1048576` for file systems with deploymentType `SINGLE_AZ_2`. For `SINGLE_AZ_2`, the `1048576` (1PB) maximum is only supported when using 2 or more ha_pairs, the maximum is `524288` (512TB) when using 1 ha_pair.
      • storageType

        public com.pulumi.core.Output<java.util.Optional<java.lang.String>> storageType()
        Returns:
        Filesystem storage type. Defaults to `SSD`.
      • subnetIds

        public com.pulumi.core.Output<java.util.List<java.lang.String>> subnetIds()
        Returns:
        List of IDs for the subnets that the file system will be accessible from. Up to 2 subnets can be provided.
      • tags

        public com.pulumi.core.Output<java.util.Optional<java.util.Map<java.lang.String,​java.lang.String>>> tags()
        Returns:
        Map of tags to assign to the file system. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
      • tagsAll

        public com.pulumi.core.Output<java.util.Map<java.lang.String,​java.lang.String>> tagsAll()
        Returns:
        Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
      • throughputCapacity

        public com.pulumi.core.Output<java.lang.Integer> throughputCapacity()
        Returns:
        Sets the throughput capacity (in MBps) for the file system that you're creating. Valid values are `128`, `256`, `512`, `1024`, `2048`, and `4096`. This parameter is only supported when not using the haPairs parameter. Either throughputCapacity or throughputCapacityPerHaPair must be specified.
      • throughputCapacityPerHaPair

        public com.pulumi.core.Output<java.lang.Integer> throughputCapacityPerHaPair()
        Returns:
        Sets the per-HA-pair throughput capacity (in MBps) for the file system that you're creating, as opposed to `throughputCapacity` which specifies the total throughput capacity for the file system. Valid value for `MULTI_AZ_1` and `SINGLE_AZ_1` are `128`, `256`, `512`, `1024`, `2048`, and `4096`. Valid values for deployment type `MULTI_AZ_2` and `SINGLE_AZ_2` are `384`,`768`,`1536`,`3072`,`6144` where `haPairs` is `1`. Valid values for deployment type `SINGLE_AZ_2` are `1536`, `3072`, and `6144` where `haPairs` is greater than 1. This parameter is only supported when specifying the haPairs parameter. Either throughputCapacity or throughputCapacityPerHaPair must be specified.
      • vpcId

        public com.pulumi.core.Output<java.lang.String> vpcId()
        Returns:
        Identifier of the VPC for the file system.
      • weeklyMaintenanceStartTime

        public com.pulumi.core.Output<java.lang.String> weeklyMaintenanceStartTime()
        Returns:
        Preferred start time (in `d:HH:MM` format) to perform weekly maintenance, in the UTC time zone.
      • get

        public static OntapFileSystem get​(java.lang.String name,
                                          com.pulumi.core.Output<java.lang.String> id,
                                          @Nullable
                                          OntapFileSystemState state,
                                          @Nullable
                                          com.pulumi.resources.CustomResourceOptions options)
        Get an existing Host resource's state with the given name, ID, and optional extra properties used to qualify the lookup.
        Parameters:
        name - The _unique_ name of the resulting resource.
        id - The _unique_ provider ID of the resource to lookup.
        state -
        options - Optional settings to control the behavior of the CustomResource.