You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: Terraform/deploy-fsx-ontap/module/README.md
+31-72Lines changed: 31 additions & 72 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -2,8 +2,6 @@
2
2
This is a Terraform module which creates an FSx for NetApp ONTAP file system in a multi-AZ fashion, including an SVM, a Security-Group and a FlexVolume in that file system, using AWS Terraform provider.
3
3
This repo should be sourced as a terraform module, and does not need to be cloned locally!
4
4
Follow the instructions below to use this sample in your environment.
5
-
> [!NOTE]
6
-
> This module does not support scale-out! One ha pair per deployment.
7
5
8
6
## Table of Contents
9
7
*[Introduction](#introduction)
@@ -35,22 +33,24 @@ Calling this terraform module will result the following:
35
33
-**Ingress** allow https port 443
36
34
-**Egress** allow all traffic
37
35
38
-
*Two new AWS secrets. One that contains the fsxadmin password and another that contains the SVM admin password.
36
+
*Create two new AWS secrets. One that contains the fsxadmin password and another that contains the SVM admin password.
39
37
40
-
* Create a new FSx for Netapp ONTAP file-system in your AWS account named "_terraform-fsxn_". The file-system will be created with the following configuration parameters:
38
+
* Create a new FSx for Netapp ONTAP file-system. Much of the configuration has default values, but can be modified to your preference by providing your own values in the module block. The default configuration includes:
41
39
* 1024Gb of storage capacity
42
-
* Multi AZ deployment type
43
-
* 128Mbps of throughput capacity
44
-
45
-
* Create a Storage Virtual Maching (SVM) in this new file-system named "_first_svm_"
46
-
47
-
* Create a new FlexVol volume in this SVM named "_vol1_" with the following configuration parameters:
48
-
* Size of 1024Mb
49
-
* Storage efficiencies mechanism enabled
50
-
* Auto tiering policy with 31 cooling days
40
+
* Generation 1 Multi AZ deployment type
41
+
* 128Mbps of throughput capacity
42
+
* 1 HA pair
43
+
* 1 Storage Virtual Machine (SVM)
44
+
* 1 FlexVol volume with the following configuration parameters:
45
+
* Size of 2TB - Thin provisioned
46
+
* Junction path of /vol1
47
+
* Security style of UNIX
48
+
* Storage efficiencies enabled
49
+
* Auto tiering policy with 31 cooling days
50
+
* post-delete backup disabled
51
51
52
52
> [!NOTE]
53
-
> All of the above configuration parameters can be modified for your preference by assigning your own values in the module block!
53
+
> All of the above configuration parameters can be modified for your preference by assigning your own values in the module block! See below for more information.
54
54
55
55
## Prerequisites
56
56
@@ -113,7 +113,7 @@ terraform {
113
113
required_providers {
114
114
aws = {
115
115
source = "hashicorp/aws"
116
-
version = "5.25"
116
+
version >= "5.25"
117
117
}
118
118
}
119
119
}
@@ -126,78 +126,37 @@ provider "aws" {
126
126
### Reference this module
127
127
128
128
Add the following module block to your local `main.tf` file.
129
-
Make sure to replace all values within `< >` with your own variables.
129
+
Of course changing the subnets, route_table_ids, and other variables to match your environment.
130
+
You will find below a complete list of all the parameters that can be passed to the module block.
create_sg = true // true to create Security Group for the Fs / false otherwise
141
-
cidr_for_sg = "<YOUR-CIDR-BLOCK>"
142
-
fsx_secret_name = "<YOUR_SECRET>" // The name of a secret in AWS Secrets Manager that contains the FSxN admin password.
143
-
tags = {
144
-
Terraform = "true"
145
-
Environment = "dev"
146
-
}
147
-
}
148
-
```
136
+
name = "Development"
149
137
150
-
> [!NOTE]
151
-
> To Override default values assigned to other variables in this module, add them to this source block as well. The above source block includes the minimum requirements only.
138
+
deployment_type = "MULTI_AZ_2"
139
+
ha_pairs = 1
140
+
throughput_in_MBps = 384
152
141
153
-
> [!NOTE]
154
-
> The default deployment type is: MULTI_AZ_1. For SINGLE AZ deployment, set the `fsx_deploy_type` variable to SINGLE_AZ_1 in the module block.
155
-
156
-
Please read the vriables descriptions in `variables.tf` file for more information regarding the variables passed to the module block.
157
-
158
-
### Example main.tf file
159
-
160
-
For a quick and easy start, copy and paste the below example to your main.tf file and modify the variables with your enviroonment's values.
Whenever you add a new module to a configuration, Terraform must install the module before it can be used. Both the `terraform get` and `terraform init` commands will install and update modules. The `terraform init` command will also initialize backends and install plugins.
157
+
Whenever you add a new module to a configuration, Terraform must install the module before
158
+
it can be used. Both the `terraform get` and `terraform init` commands will install and
159
+
update modules. The `terraform init` command will also initialize backends and install plugins.
0 commit comments