import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../types/input"; import * as outputs from "../types/output"; /** * 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 * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as aws from "@pulumi/aws"; * * const test = new aws.fsx.OntapFileSystem("test", { * storageCapacity: 1024, * subnetIds: [ * test1.id, * test2.id, * ], * deploymentType: "MULTI_AZ_1", * throughputCapacity: 512, * preferredSubnetId: test1.id, * }); * ``` * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as aws from "@pulumi/aws"; * * const testhapairs = new aws.fsx.OntapFileSystem("testhapairs", { * storageCapacity: 2048, * subnetIds: [test1.id], * deploymentType: "SINGLE_AZ_1", * haPairs: 2, * throughputCapacityPerHaPair: 128, * preferredSubnetId: test1.id, * }); * ``` * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as aws from "@pulumi/aws"; * * const testsingleazgen2 = new aws.fsx.OntapFileSystem("testsingleazgen2", { * storageCapacity: 4096, * subnetIds: [test1.id], * deploymentType: "SINGLE_AZ_2", * haPairs: 4, * throughputCapacityPerHaPair: 384, * preferredSubnetId: test1.id, * }); * ``` * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as aws from "@pulumi/aws"; * * const testmultiazgen2 = new aws.fsx.OntapFileSystem("testmultiazgen2", { * storageCapacity: 1024, * subnetIds: [ * test1.id, * test2.id, * ], * deploymentType: "MULTI_AZ_2", * haPairs: 1, * throughputCapacityPerHaPair: 384, * preferredSubnetId: test1.id, * }); * ``` * * ## 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: * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as aws from "@pulumi/aws"; * * const example = new aws.fsx.OntapFileSystem("example", {securityGroupIds: [exampleAwsSecurityGroup.id]}, { * ignoreChanges: ["securityGroupIds"], * }); * ``` */ export declare class OntapFileSystem extends pulumi.CustomResource { /** * Get an existing OntapFileSystem resource's state with the given name, ID, and optional extra * properties used to qualify the lookup. * * @param name The _unique_ name of the resulting resource. * @param id The _unique_ provider ID of the resource to lookup. * @param state Any extra arguments used during the lookup. * @param opts Optional settings to control the behavior of the CustomResource. */ static get(name: string, id: pulumi.Input, state?: OntapFileSystemState, opts?: pulumi.CustomResourceOptions): OntapFileSystem; /** * Returns true if the given object is an instance of OntapFileSystem. This is designed to work even * when multiple copies of the Pulumi SDK have been loaded into the same process. */ static isInstance(obj: any): obj is OntapFileSystem; /** * ARN of the file system. */ readonly arn: pulumi.Output; /** * 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. */ readonly automaticBackupRetentionDays: pulumi.Output; /** * 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. */ readonly dailyAutomaticBackupStartTime: pulumi.Output; /** * Filesystem deployment type. Supports `MULTI_AZ_1`, `MULTI_AZ_2`, `SINGLE_AZ_1`, and `SINGLE_AZ_2`. */ readonly deploymentType: pulumi.Output; /** * SSD IOPS configuration for the Amazon FSx for NetApp ONTAP file system. See `diskIopsConfiguration` below. */ readonly diskIopsConfiguration: pulumi.Output; /** * Domain Name Service (DNS) name for the file system. You can mount your file system using its DNS name. */ readonly dnsName: pulumi.Output; /** * 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). */ readonly endpointIpAddressRange: pulumi.Output; /** * 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. */ readonly endpoints: pulumi.Output; /** * ONTAP administrative password for the fsxadmin user that you can use to administer your file system using the ONTAP CLI and REST API. */ readonly fsxAdminPassword: pulumi.Output; /** * 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`. */ readonly haPairs: pulumi.Output; /** * ARN for the KMS Key to encrypt the file system at rest, Defaults to an AWS managed KMS Key. */ readonly kmsKeyId: pulumi.Output; /** * Set of Elastic Network Interface identifiers from which the file system is accessible The first network interface returned is the primary network interface. */ readonly networkInterfaceIds: pulumi.Output; /** * Network type. Valid values are `IPV4` and `DUAL`. Default value is `IPV4`. */ readonly networkType: pulumi.Output; /** * AWS account identifier that created the file system. */ readonly ownerId: pulumi.Output; /** * ID for a subnet. A subnet is a range of IP addresses in your VPC. */ readonly preferredSubnetId: pulumi.Output; /** * 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. */ readonly region: pulumi.Output; /** * 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. */ readonly routeTableIds: pulumi.Output; /** * 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. */ readonly securityGroupIds: pulumi.Output; /** * 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. */ readonly storageCapacity: pulumi.Output; /** * Filesystem storage type. Defaults to `SSD`. */ readonly storageType: pulumi.Output; /** * List of IDs for the subnets that the file system will be accessible from. Up to 2 subnets can be provided. */ readonly subnetIds: pulumi.Output; /** * 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. */ readonly tags: pulumi.Output<{ [key: string]: string; } | undefined>; /** * Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block. */ readonly tagsAll: pulumi.Output<{ [key: string]: string; }>; /** * 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. */ readonly throughputCapacity: pulumi.Output; /** * 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. */ readonly throughputCapacityPerHaPair: pulumi.Output; /** * Identifier of the VPC for the file system. */ readonly vpcId: pulumi.Output; /** * Preferred start time (in `d:HH:MM` format) to perform weekly maintenance, in the UTC time zone. */ readonly weeklyMaintenanceStartTime: pulumi.Output; /** * Create a OntapFileSystem resource with the given unique name, arguments, and options. * * @param name The _unique_ name of the resource. * @param args The arguments to use to populate this resource's properties. * @param opts A bag of options that control this resource's behavior. */ constructor(name: string, args: OntapFileSystemArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering OntapFileSystem resources. */ export interface OntapFileSystemState { /** * ARN of the file system. */ arn?: pulumi.Input; /** * 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. */ automaticBackupRetentionDays?: pulumi.Input; /** * 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. */ dailyAutomaticBackupStartTime?: pulumi.Input; /** * Filesystem deployment type. Supports `MULTI_AZ_1`, `MULTI_AZ_2`, `SINGLE_AZ_1`, and `SINGLE_AZ_2`. */ deploymentType?: pulumi.Input; /** * SSD IOPS configuration for the Amazon FSx for NetApp ONTAP file system. See `diskIopsConfiguration` below. */ diskIopsConfiguration?: pulumi.Input; /** * Domain Name Service (DNS) name for the file system. You can mount your file system using its DNS name. */ dnsName?: pulumi.Input; /** * 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). */ endpointIpAddressRange?: pulumi.Input; /** * 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. */ endpoints?: pulumi.Input[] | undefined>; /** * ONTAP administrative password for the fsxadmin user that you can use to administer your file system using the ONTAP CLI and REST API. */ fsxAdminPassword?: pulumi.Input; /** * 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`. */ haPairs?: pulumi.Input; /** * ARN for the KMS Key to encrypt the file system at rest, Defaults to an AWS managed KMS Key. */ kmsKeyId?: pulumi.Input; /** * Set of Elastic Network Interface identifiers from which the file system is accessible The first network interface returned is the primary network interface. */ networkInterfaceIds?: pulumi.Input[] | undefined>; /** * Network type. Valid values are `IPV4` and `DUAL`. Default value is `IPV4`. */ networkType?: pulumi.Input; /** * AWS account identifier that created the file system. */ ownerId?: pulumi.Input; /** * ID for a subnet. A subnet is a range of IP addresses in your VPC. */ preferredSubnetId?: pulumi.Input; /** * 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. */ region?: pulumi.Input; /** * 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. */ routeTableIds?: pulumi.Input[] | undefined>; /** * 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. */ securityGroupIds?: pulumi.Input[] | undefined>; /** * 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. */ storageCapacity?: pulumi.Input; /** * Filesystem storage type. Defaults to `SSD`. */ storageType?: pulumi.Input; /** * List of IDs for the subnets that the file system will be accessible from. Up to 2 subnets can be provided. */ subnetIds?: pulumi.Input[] | undefined>; /** * 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. */ tags?: pulumi.Input<{ [key: string]: pulumi.Input; } | undefined>; /** * Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block. */ tagsAll?: pulumi.Input<{ [key: string]: pulumi.Input; } | undefined>; /** * 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. */ throughputCapacity?: pulumi.Input; /** * 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. */ throughputCapacityPerHaPair?: pulumi.Input; /** * Identifier of the VPC for the file system. */ vpcId?: pulumi.Input; /** * Preferred start time (in `d:HH:MM` format) to perform weekly maintenance, in the UTC time zone. */ weeklyMaintenanceStartTime?: pulumi.Input; } /** * The set of arguments for constructing a OntapFileSystem resource. */ export interface OntapFileSystemArgs { /** * 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. */ automaticBackupRetentionDays?: pulumi.Input; /** * 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. */ dailyAutomaticBackupStartTime?: pulumi.Input; /** * Filesystem deployment type. Supports `MULTI_AZ_1`, `MULTI_AZ_2`, `SINGLE_AZ_1`, and `SINGLE_AZ_2`. */ deploymentType: pulumi.Input; /** * SSD IOPS configuration for the Amazon FSx for NetApp ONTAP file system. See `diskIopsConfiguration` below. */ diskIopsConfiguration?: pulumi.Input; /** * 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). */ endpointIpAddressRange?: pulumi.Input; /** * ONTAP administrative password for the fsxadmin user that you can use to administer your file system using the ONTAP CLI and REST API. */ fsxAdminPassword?: pulumi.Input; /** * 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`. */ haPairs?: pulumi.Input; /** * ARN for the KMS Key to encrypt the file system at rest, Defaults to an AWS managed KMS Key. */ kmsKeyId?: pulumi.Input; /** * Network type. Valid values are `IPV4` and `DUAL`. Default value is `IPV4`. */ networkType?: pulumi.Input; /** * ID for a subnet. A subnet is a range of IP addresses in your VPC. */ preferredSubnetId: pulumi.Input; /** * 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. */ region?: pulumi.Input; /** * 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. */ routeTableIds?: pulumi.Input[] | undefined>; /** * 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. */ securityGroupIds?: pulumi.Input[] | undefined>; /** * 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. */ storageCapacity: pulumi.Input; /** * Filesystem storage type. Defaults to `SSD`. */ storageType?: pulumi.Input; /** * List of IDs for the subnets that the file system will be accessible from. Up to 2 subnets can be provided. */ subnetIds: pulumi.Input[]>; /** * 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. */ tags?: pulumi.Input<{ [key: string]: pulumi.Input; } | undefined>; /** * 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. */ throughputCapacity?: pulumi.Input; /** * 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. */ throughputCapacityPerHaPair?: pulumi.Input; /** * Preferred start time (in `d:HH:MM` format) to perform weekly maintenance, in the UTC time zone. */ weeklyMaintenanceStartTime?: pulumi.Input; } //# sourceMappingURL=ontapFileSystem.d.ts.map