Cloud deployments need special attention because of the cloud environment itself and each cloud vendor needs unique attention. AWS is the most popular environment so this post will discuss some of the additional configurations that are needed and available in the Greenplum on AWS Marketplace product offerings.
To enable Accelerated Networking, AWS requires either an Intel or Elastic Network Adapter (ENA) driver installed in your VMs depending on the Instance Type you are using. Not only is the driver needed, but you must modify the VM to enable the driver.
After the driver has been installed, you then must stop the VM and execute a CLI command to enable Accelerated Networking. After the VM starts again, you should verify that the drivers have been installed.
# Intel Driver modinfo ixgbevf #ENA Driver modinfo ena
After this is done, you can create an Amazon Machine Image (AMI) so that new VMs you create have both the drivers and Accelerated Networking.
Elastic Block Storage (EBS) Timeout
Did you know that your VM may timeout when trying to communicate with a mounted EBS volume? When it does timeout, the operating system doesn’t know what to do either. The disk can’t be unmounted and you can’t use the disk at all. It isn’t a good situation to be in.
EBS may recover the disk properly but not your operating system may corrupt the disk. You can try to reboot but there isn’t a guarantee that the files will be intact. EBS didn’t technically fail either. Your VM just timed out communicating with EBS.
The default timeout is 30 seconds but can be increased up to 255 seconds. AWS recommends using the largest timeout possible to avoid this scenario too.
To alter this, you have to add
nvme_core.io_timeout=255 to your kernel boot options and then restart the VM. Ideally, this setting is part of your AMI so that all VMs automatically get this setting so that you can avoid an EBS timeout.
Disk Settings on Reboot
Did you know that when you reboot a VM in AWS, the blockdev readahead and disk scheduler will get set back to the defaults? The consequence of this means much slower disk performance.
Greenplum on AWS Marketplace
The Greenplum on AWS Marketplace products have Accelerated Networking enabled, EBS Timeout at the max 255 seconds, and service on startup that automatically sets the optimal disk settings.
By using the Greenplum on AWS, Azure, or GCP Marketplace products, you can focus on using the database without having to worry with the tuning and configuration that is required for each cloud environment.