Supported Services
EC2¶
Individual EC2 instances can be tagged for scheduling with the. During scheduling, instances will be stopped, retaining all data as they are not terminated.
Autoscaling Groups¶
Autoscaling Groups can be programmed to shut down by configuring the MinSize and MaxSize values to 0.0 with the scheduler. This action terminates all instances within the ASG, resulting in data loss. To mitigate this, the scheduler stores the current Min and Max values in DynamoDB for restoration during the next startup event.
Note
ASGs require explicit tagging, as they do not inherit provider default tags. Use the following HCL code to add tags:
RDS¶
RDS instances can be scheduled, ensuring data retention as instances are only stopped. However, be aware of the following limitations:
Warning
RDS instances restart automatically after 7 days, this is a limitation of the service.
Stopping an RDS for SQL Server DB instance in a multi-AZ deployment isn't supported.
You can't stop a DB instance that has a read replica, or that is a read replica.
Aurora¶
Aurora Clusters are supported by the scheduler, allowing for scheduled stops with data retention. Be mindful of the following restrictions:
Warning
Aurora clusters restart automatically after 7 days, this is a limitation of the service.
You can't stop and start a cluster that's part of an Aurora global database.
You can't stop and start a cluster that has a cross-Region read replica.
You can't stop and start a cluster that is part of a blue/green deployment.
For a cluster that uses the Aurora parallel query feature, the minimum Aurora MySQL version is 2.09.0.
You can't stop and start an Aurora Serverless v1 cluster.
ECS¶
ECS services can be tagged for scheduling. When the scheduler initiates a stop, it automatically sets the Min, Max, and Desired tasks values to 0, effectively stopping all running tasks associated with the service.
DocumentDB¶
DocumentDB clusters can be scheduled, retaining all data as instances are only stopped
Lambda¶
Lambda functions can be scheduled for "stop" actions, where the scheduler sets the Concurrent Executions to 0. Exercise caution with this specific use case, as adjusting your cron may achieve similar results.
AppRunner¶
AppRunner services can be scheduled.