You can now schedule and manage EC2 snapshots from the AWS console. No longer is it necessary to script this out.
How’s this done? At a high level, You can create a policy to snapshot every 12 or 24 hours based on a tag, setting the number of snapshots to retain. Enable policy, tag instances and you’re done.
Granted, this is only for the simplest of scenarios. If you want to place a copy of your snapshots in another AZ, you’ll still have to script that.
However, if you’re running an EC2 instance that’s sole purpose is to take snapshots, you could consider ditching it to save some cash.
I should note that this doesn’t appear to use the VSS aware snapshot feature..seems to be only crash consistent.
Find out more here:
https://aws.amazon.com/blogs/aws/new-lifecycle-management-for-amazon-ebs-snapshots/
https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/snapshot-lifecycle.html