sassoftware / viya4-iac-aws

This project contains Terraform configuration files to provision infrastructure components required to deploy SAS Viya platform products products on Amazon AWS.
Apache License 2.0
39 stars 44 forks source link

feat: (IAC-1120) Add support for gp3 #185

Open joshcoburn opened 1 year ago

joshcoburn commented 1 year ago

Add support for gp3

dhoucgitter commented 11 months ago

gp3 volumes are available in all AWS commercial and gov cloud regions according to this AWS announcement.

joshcoburn commented 11 months ago

@dhoucgitter understood.. this feature request was more about ensuring that gp3 is a fully supported across the board option within the IAC. Further, it might be worth considering this as the default option across the board as well from a pricing/performance standpoint: see AWS article Migrate from gp2 to gp3 and save up to 20% on costs. However, I acknowledge this would be viewed as breaking change.

The EKS worker nodes currently support gp3 as is using tfvars: set os_disk_type parameter to gp3 and os_disk_iops parameter to min of 3000 within each node group.

The vms also currently support gp3 as is using tfvars: set os_disk_type to gp3 and os_disk_iops to min of 3000. Additionally if NFS is selected, the data_disk_type and data_disk_iops should also be set accordingly.

The only challenge I currently see, is the default_nodepool_os_disk_type .. there is currently a validation check that prohibits users from specifying gp3 disk without needing to modify the main variables.tf. So options here would be either expand the validation check to also include gp3 disk or get rid of the validation check altogether. Interestingly, none of the other disk type variables have a validation check implemented.

Other considerations outside the scope of IAC: EKS default storageclass is set to gp2 disk. SAS Viya utilizes this default storageclass for redis and opendistro PV. Additionally, viya4-monitoring uses default storageclass. So if gp3 disks across the board are desired, the default storageclass would also need to be updated to gp3.

sayeun commented 11 months ago

This requires PM review.