-
Notifications
You must be signed in to change notification settings - Fork 4
/
main.tf
404 lines (341 loc) · 16.6 KB
/
main.tf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
module "anf" {
source = ".//azure/anf"
#anf volume details
az_location = var.az_location
az_prefix = var.az_prefix
az_vnet_address_space = var.az_vnet_address_space
az_subnet_address_prefix = var.az_subnet_address_prefix
az_volume_path = var.az_volume_path
az_capacity_pool_size = var.az_capacity_pool_size
az_vnet_creation_bool = var.az_vnet_creation_bool
az_subnet_creation_bool = var.az_subnet_creation_bool
az_subnet_id_for_anf_vol = var.az_subnet_id_for_anf_vol
az_netapp_pool_service_level = var.az_netapp_pool_service_level
az_netapp_vol_service_level = var.az_netapp_vol_service_level
az_netapp_vol_protocol = var.az_netapp_vol_protocol
az_netapp_vol_security_style = var.az_netapp_vol_security_style
az_netapp_vol_storage_quota = var.az_netapp_vol_storage_quota
}
module "anf_data_protection" {
source = ".//azure/anf_data_protection"
#general volume details
az_prefix = var.az_prefix
az_dp_replication_frequency = var.az_dp_replication_frequency
#primary volume details
az_location = var.az_location
az_vnet_primary_address_space = var.az_vnet_primary_address_space
az_subnet_primary_address_prefix = var.az_subnet_primary_address_prefix
az_volume_path_primary = var.az_volume_path_primary
az_capacity_pool_size_primary = var.az_capacity_pool_size_primary
az_vnet_primary_creation_bool = var.az_vnet_primary_creation_bool
az_subnet_primary_creation_bool = var.az_subnet_primary_creation_bool
az_primary_subnet_id_for_anf_vol = var.az_primary_subnet_id_for_anf_vol
az_netapp_pool_service_level_primary = var.az_netapp_pool_service_level_primary
az_netapp_vol_service_level_primary = var.az_netapp_vol_service_level_primary
az_netapp_vol_protocol_primary = var.az_netapp_vol_protocol_primary
az_netapp_vol_storage_quota_primary = var.az_netapp_vol_storage_quota_primary
#secondary volume details
az_alt_location = var.az_alt_location
az_vnet_secondary_address_space = var.az_vnet_secondary_address_space
az_subnet_secondary_address_prefix = var.az_subnet_secondary_address_prefix
az_volume_path_secondary = var.az_volume_path_secondary
az_capacity_pool_size_secondary = var.az_capacity_pool_size_secondary
az_vnet_secondary_creation_bool = var.az_vnet_secondary_creation_bool
az_subnet_secondary_creation_bool = var.az_subnet_secondary_creation_bool
az_secondary_subnet_id_for_anf_vol = var.az_secondary_subnet_id_for_anf_vol
az_netapp_pool_service_level_secondary = var.az_netapp_pool_service_level_secondary
az_netapp_vol_service_level_secondary = var.az_netapp_vol_service_level_secondary
az_netapp_vol_protocol_secondary = var.az_netapp_vol_protocol_secondary
az_netapp_vol_storage_quota_secondary = var.az_netapp_vol_storage_quota_secondary
}
module "anf_dual_protocol" {
source = ".//azure/anf_dual_protocol"
#anf volume details
az_location = var.az_location
az_prefix = var.az_prefix
az_vnet_address_space = var.az_vnet_address_space
az_subnet_address_prefix = var.az_subnet_address_prefix
az_volume_path = var.az_volume_path
az_capacity_pool_size = var.az_capacity_pool_size
az_vnet_creation_bool = var.az_vnet_creation_bool
az_subnet_creation_bool = var.az_subnet_creation_bool
az_subnet_id_for_anf_vol = var.az_subnet_id_for_anf_vol
az_netapp_pool_service_level = var.az_netapp_pool_service_level
az_netapp_vol_service_level = var.az_netapp_vol_service_level
az_netapp_vol_protocol1 = var.az_netapp_vol_protocol1
az_netapp_vol_protocol2 = var.az_netapp_vol_protocol2
az_netapp_vol_storage_quota = var.az_netapp_vol_storage_quota
#smb server details
az_smb_server_username = var.az_smb_server_username
az_smb_server_password = var.az_smb_server_password
az_smb_server_name = var.az_smb_server_name
az_smb_dns_servers = var.az_smb_dns_servers
}
module "anf_volume_from_snapshot" {
source = ".//azure/anf_volume_from_snapshot"
#anf volume details
az_location = var.az_location
az_prefix = var.az_prefix
az_vnet_address_space = var.az_vnet_address_space
az_subnet_address_prefix = var.az_subnet_address_prefix
az_volume_path = var.az_volume_path
az_capacity_pool_size = var.az_capacity_pool_size
az_vnet_creation_bool = var.az_vnet_creation_bool
az_subnet_creation_bool = var.az_subnet_creation_bool
az_subnet_id_for_anf_vol = var.az_subnet_id_for_anf_vol
az_netapp_pool_service_level = var.az_netapp_pool_service_level
az_netapp_vol_service_level = var.az_netapp_vol_service_level
az_netapp_vol_protocol = var.az_netapp_vol_protocol
az_netapp_vol_storage_quota = var.az_netapp_vol_storage_quota
az_snapshot_id = var.az_snapshot_id
}
module "az_cvo_single_node_deployment" {
source = ".//azure/cvo_single_node_deployment"
#refresh token
refresh_token = var.refresh_token
#connector details
az_connector_name = var.az_connector_name
az_connector_location = var.az_connector_location
az_connector_subscription_id = var.az_connector_subscription_id
az_connector_company = var.az_connector_company
az_connector_resource_group = var.az_connector_resource_group
az_connector_subnet_id = var.az_connector_subnet_id
az_connector_vnet_id = var.az_connector_vnet_id
az_connector_network_security_group_name = var.az_connector_network_security_group_name
az_connector_associate_public_ip_address = var.az_connector_associate_public_ip_address
az_connector_account_id = var.az_connector_account_id
az_connector_admin_password = var.az_connector_admin_password
az_connector_admin_username = var.az_connector_admin_username
#azure service principal credentials
az_tenant_id = var.az_tenant_id
az_application_id = var.az_application_id
az_application_key = var.az_application_key
#cvo details
az_cvo_name = var.az_cvo_name
az_cvo_location = var.az_cvo_location
az_cvo_subnet_id = var.az_cvo_subnet_id
az_cvo_vnet_id = var.az_cvo_vnet_id
az_cvo_vnet_resource_group = var.az_cvo_vnet_resource_group
az_cvo_data_encryption_type = var.az_cvo_data_encryption_type
az_cvo_storage_type = var.az_cvo_storage_type
az_cvo_svm_password = var.az_cvo_svm_password
az_cvo_workspace_id = var.az_cvo_workspace_id
az_cvo_capacity_tier = var.az_cvo_capacity_tier
az_cvo_writing_speed_state = var.az_cvo_writing_speed_state
az_cvo_ontap_version = var.az_cvo_ontap_version
az_cvo_instance_type = var.az_cvo_instance_type
az_cvo_license_type = var.az_cvo_license_type
az_cvo_nss_account = var.az_cvo_nss_account
}
module "az_cvo_ha_deployment" {
source = ".//azure/cvo_ha_deployment"
#refresh token
refresh_token = var.refresh_token
#connector details
az_connector_name = var.az_connector_name
az_connector_location = var.az_connector_location
az_connector_subscription_id = var.az_connector_subscription_id
az_connector_company = var.az_connector_company
az_connector_resource_group = var.az_connector_resource_group
az_connector_subnet_id = var.az_connector_subnet_id
az_connector_vnet_id = var.az_connector_vnet_id
az_connector_network_security_group_name = var.az_connector_network_security_group_name
az_connector_associate_public_ip_address = var.az_connector_associate_public_ip_address
az_connector_account_id = var.az_connector_account_id
az_connector_admin_password = var.az_connector_admin_password
az_connector_admin_username = var.az_connector_admin_username
#azure service principal credentials
az_tenant_id = var.az_tenant_id
az_application_id = var.az_application_id
az_application_key = var.az_application_key
#cvo details
az_cvo_name = var.az_cvo_name
az_cvo_location = var.az_cvo_location
az_cvo_subnet_id = var.az_cvo_subnet_id
az_cvo_vnet_id = var.az_cvo_vnet_id
az_cvo_vnet_resource_group = var.az_cvo_vnet_resource_group
az_cvo_data_encryption_type = var.az_cvo_data_encryption_type
az_cvo_storage_type = var.az_cvo_storage_type
az_cvo_svm_password = var.az_cvo_svm_password
az_cvo_workspace_id = var.az_cvo_workspace_id
az_cvo_capacity_tier = var.az_cvo_capacity_tier
az_cvo_writing_speed_state = var.az_cvo_writing_speed_state
az_cvo_ontap_version = var.az_cvo_ontap_version
az_cvo_instance_type = var.az_cvo_instance_type
az_cvo_license_type = var.az_cvo_license_type
az_cvo_nss_account = var.az_cvo_nss_account
}
module "aws_sn" {
source = ".//aws/cvo_single_node_deployment"
#refresh token
refresh_token = var.refresh_token
#connector details
aws_connector_deploy_bool = var.aws_connector_deploy_bool
#if aws_connector_deploy_bool is set to false
aws_connector_client_id = var.aws_connector_client_id
#if aws_connector_deploy_bool is set to true
aws_connector_name = var.aws_connector_name
aws_connector_region = var.aws_connector_region
aws_connector_key_name = var.aws_connector_key_name
aws_connector_company = var.aws_connector_company
aws_connector_instance_type = var.aws_connector_instance_type
aws_connector_subnet_id = var.aws_connector_subnet_id
aws_connector_security_group_id = var.aws_connector_security_group_id
aws_connector_iam_instance_profile_name = var.aws_connector_iam_instance_profile_name
aws_connector_account_id = var.aws_connector_account_id
aws_connector_public_ip_bool = var.aws_connector_public_ip_bool
#cvo details
cvo_name = var.cvo_name
cvo_region = var.cvo_region
cvo_subnet_id = var.cvo_subnet_id
cvo_vpc_id = var.cvo_vpc_id
cvo_svm_password = var.cvo_svm_password
cvo_writing_speed_state = var.cvo_writing_speed_state
}
module "aws_ha" {
source = ".//aws/cvo_ha_deployment"
#refresh token
refresh_token = var.refresh_token
#connector details
aws_connector_deploy_bool = var.aws_connector_deploy_bool
#if aws_connector_deploy_bool is set to false
aws_connector_client_id = var.aws_connector_client_id
#if aws_connector_deploy_bool is set to true
aws_connector_name = var.aws_connector_name
aws_connector_region = var.aws_connector_region
aws_connector_key_name = var.aws_connector_key_name
aws_connector_company = var.aws_connector_company
aws_connector_instance_type = var.aws_connector_instance_type
aws_connector_subnet_id = var.aws_connector_subnet_id
aws_connector_security_group_id = var.aws_connector_security_group_id
aws_connector_iam_instance_profile_name = var.aws_connector_iam_instance_profile_name
aws_connector_account_id = var.aws_connector_account_id
aws_connector_public_ip_bool = var.aws_connector_public_ip_bool
#cvo details
cvo_name = var.cvo_name
cvo_region = var.cvo_region
cvo_is_ha = var.cvo_is_ha
cvo_failover_mode = var.cvo_failover_mode
cvo_node1_subnet_id = var.cvo_node1_subnet_id
cvo_node2_subnet_id = var.cvo_node2_subnet_id
cvo_mediator_subnet_id = var.cvo_mediator_subnet_id
cvo_mediator_key_pair_name = var.cvo_mediator_key_pair_name
cvo_cluster_floating_ip = var.cvo_cluster_floating_ip
cvo_data_floating_ip = var.cvo_data_floating_ip
cvo_data_floating_ip2 = var.cvo_data_floating_ip2
cvo_svm_floating_ip = var.cvo_svm_floating_ip
cvo_route_table_ids = var.cvo_route_table_ids
cvo_vpc_id = var.cvo_vpc_id
cvo_svm_password = var.cvo_svm_password
cvo_license_type = var.cvo_license_type
}
module "aws_fsx" {
source = ".//aws/fsx_deployment"
#refresh token
refresh_token = var.refresh_token
#connector details
aws_connector_deploy_bool = var.aws_connector_deploy_bool
#if aws_connector_deploy_bool is set to true
aws_connector_name = var.aws_connector_name
aws_connector_region = var.aws_connector_region
aws_connector_key_name = var.aws_connector_key_name
aws_connector_company = var.aws_connector_company
aws_connector_instance_type = var.aws_connector_instance_type
aws_connector_subnet_id = var.aws_connector_subnet_id
aws_connector_security_group_id = var.aws_connector_security_group_id
aws_connector_iam_instance_profile_name = var.aws_connector_iam_instance_profile_name
aws_connector_account_id = var.aws_connector_account_id
aws_connector_public_ip_bool = var.aws_connector_public_ip_bool
#fsx details
fsx_name = var.fsx_name
fsx_region = var.fsx_region
fsx_primary_subnet_id = var.fsx_primary_subnet_id
fsx_secondary_subnet_id = var.fsx_secondary_subnet_id
fsx_account_id = var.fsx_account_id
fsx_workspace_id = var.fsx_workspace_id
fsx_admin_password = var.fsx_admin_password
fsx_throughput_capacity = var.fsx_throughput_capacity
fsx_storage_capacity_size = var.fsx_storage_capacity_size
fsx_storage_capacity_size_unit = var.fsx_storage_capacity_size_unit
fsx_cloudmanager_aws_credential_name = var.fsx_cloudmanager_aws_credential_name
}
module "gcp_single_node" {
source = ".//gcp/cvo_single_node_deployment"
#refresh token
refresh_token = var.refresh_token
#connector details
gcp_connector_deploy_bool = var.gcp_connector_deploy_bool
#if aws_connector_deploy_bool is set to false
gcp_connector_client_id = var.gcp_connector_client_id
#if aws_connector_deploy_bool is set to true
gcp_connector_name = var.gcp_connector_name
gcp_connector_project_id = var.gcp_connector_project_id
gcp_connector_zone = var.gcp_connector_zone
gcp_connector_company = var.gcp_connector_company
gcp_connector_service_account_email = var.gcp_connector_service_account_email
gcp_connector_service_account_path = var.gcp_connector_service_account_path
gcp_connector_account_id = var.gcp_connector_account_id
#cvo details
gcp_cvo_name = var.gcp_cvo_name
gcp_cvo_project_id = var.gcp_cvo_project_id
gcp_cvo_zone = var.gcp_cvo_zone
gcp_cvo_gcp_service_account = var.gcp_cvo_gcp_service_account
gcp_cvo_svm_password = var.gcp_cvo_svm_password
gcp_cvo_workspace_id = var.gcp_cvo_workspace_id
gcp_cvo_license_type = var.gcp_cvo_license_type
gcp_cvo_capacity_package_name = var.gcp_cvo_capacity_package_name
}
module "gcp_ha" {
source = ".//gcp/cvo_ha_deployment"
#refresh token
refresh_token = var.refresh_token
#connector details
gcp_connector_deploy_bool = var.gcp_connector_deploy_bool
#if aws_connector_deploy_bool is set to false
gcp_connector_client_id = var.gcp_connector_client_id
#if aws_connector_deploy_bool is set to true
gcp_connector_name = var.gcp_connector_name
gcp_connector_project_id = var.gcp_connector_project_id
gcp_connector_zone = var.gcp_connector_zone
gcp_connector_company = var.gcp_connector_company
gcp_connector_service_account_email = var.gcp_connector_service_account_email
gcp_connector_service_account_path = var.gcp_connector_service_account_path
gcp_connector_account_id = var.gcp_connector_account_id
#cvo details
gcp_cvo_is_ha = var.gcp_cvo_is_ha
gcp_cvo_name = var.gcp_cvo_name
gcp_cvo_project_id = var.gcp_cvo_project_id
gcp_cvo_zone = var.gcp_cvo_zone
gcp_cvo_node1_zone = var.gcp_cvo_node1_zone
gcp_cvo_node2_zone = var.gcp_cvo_node2_zone
gcp_cvo_mediator_zone = var.gcp_cvo_mediator_zone
gcp_cvo_vpc_id = var.gcp_cvo_vpc_id
gcp_cvo_subnet_id = var.gcp_cvo_subnet_id
gcp_cvo_vpc0_node_and_data_connectivity = var.gcp_cvo_vpc0_node_and_data_connectivity
gcp_cvo_vpc1_cluster_connectivity = var.gcp_cvo_vpc1_cluster_connectivity
gcp_cvo_vpc2_ha_connectivity = var.gcp_cvo_vpc2_ha_connectivity
gcp_cvo_vpc3_data_replication = var.gcp_cvo_vpc3_data_replication
gcp_cvo_subnet0_node_and_data_connectivity = var.gcp_cvo_subnet0_node_and_data_connectivity
gcp_cvo_subnet1_cluster_connectivity = var.gcp_cvo_subnet1_cluster_connectivity
gcp_cvo_subnet2_ha_connectivity = var.gcp_cvo_subnet2_ha_connectivity
gcp_cvo_subnet3_data_replication = var.gcp_cvo_subnet3_data_replication
gcp_cvo_gcp_service_account = var.gcp_cvo_gcp_service_account
gcp_cvo_svm_password = var.gcp_cvo_svm_password
gcp_cvo_workspace_id = var.gcp_cvo_workspace_id
gcp_cvo_license_type = var.gcp_cvo_license_type
gcp_cvo_capacity_package_name = var.gcp_cvo_capacity_package_name
gcp_cvo_gcp_volume_size = var.gcp_cvo_gcp_volume_size
gcp_cvo_gcp_volume_size_unit = var.gcp_cvo_gcp_volume_size_unit
}
module "gcp_cvs_volume" {
source = ".//gcp/cvs_volume"
#cvs details
gcp_cvs_name = var.gcp_cvs_name
gcp_cvs_project_id = var.gcp_cvs_project_id
gcp_cvs_gcp_service_account_path = var.gcp_cvs_gcp_service_account_path
gcp_cvs_region = var.gcp_cvs_region
gcp_cvs_network = var.gcp_cvs_network
gcp_cvs_size = var.gcp_cvs_size
gcp_cvs_volume_path = var.gcp_cvs_volume_path
gcp_cvs_protocol_types = var.gcp_cvs_protocol_types
}