Add OS snapshot restore capabilities to additional node types
While performing testing for this issue, we found that Chef provisioning time could be reduced by more than half by using snapshots of a host's OS disk as the starting point for provisioning. Testing was initially done using a Gitaly node in GSTG using the generic-stor terraform module.
To use this restore mechanism for additional node types, we'll need to add the same functionality to additional terraform modules. The ones that stand out as being useful for this are:
An overview of the changes made to the generic-stor module can be seen here. (Ignore changes to README.md, these are auto-generated)
The revert MR from the config-mgmt repo will provide an idea of how this was tested in GSTG. By creating a node both with a "normal" clean Ubuntu image and one from a snapshot of the OS disk, it's possible to compare the provisioning timings between the two and obtain baseline data.