Instance Scheduling

Running all Compute instances nonstop is like leaving the lights on in the office after the employees have gone home. Set tags to indicate which instances are required 24/7 and which are only in use during work hours. Then save approximately 65% of instance cost by automatically stopping these Compute instances on nights and weekends. Instance Scheduling is typically one of the largest areas of potential optimization for cloud cost savings.

This section walks you through how to:

Configure Instance Scheduling
Specify Instance Scheduling Tags
Configure the Instance Scheduling Policy
Define the Scope of the Instances to Include for Scheduling
Define the Instance Scheduling Actions to Take
Configure the General Instance Scheduling Policy Options
Customize the Instance Scheduling Policy
Review Actions Taken by the Instance Scheduling Policy
Notify Users on How to Use the Instance Scheduling Policy

Configure Instance Scheduling

You will define the desired schedule for each instance using a tag on the instance. The policy will then look for the tags and start and stop the instances on that schedule.

The tag 'instance:schedule' defines the schedule when you want each instance to run. The schedule consists of a start hour, stop hour, and days of the week. The start and stop hour are in 24-hour format, and the days of the week are two-character abbreviations, for example: MO, TU, WE. Use an optional time zone TZ value to indicate a time zone to stop or start the instance.

Specify Instance Scheduling Tags

Start and Stop hours: 24-hour format: for example, 8-17 is start at 8 a.m. and stop at 5 p.m.

Days of the week: SU, MO, TU, WE, TH, FR, SA

Time zone: Optionally, use the TZ database name from the Time Zone List. For example, use America/New_York for Eastern time. Times default to Coordinated Universal Time (UTC) if no value is provided in the time zone field.

For example, the tag instance:schedule=8-17;MO,TU,WE,TH,FR;America/New_York will start the instance at 8 a.m. and stop it at 5 p.m. Monday-Friday, Eastern Time.

To automate setting default schedule tags, use the Untagged Resource Policy.

Configure the Instance Scheduling Policy

To configure the Instance Scheduling Policy:

1. Go to the Catalog page (Automation > Catalog).
2. Select the appropriate policy and click Apply.
3. Select the options to configure the policy.

Define the Scope of the Instances to Include for Scheduling

To define the scope of the Instances to include for scheduling:

Determine which resources to include in the scheduling policy by clicking Select Accounts to specify the list of accounts to evaluate. You may wish to limit the rightsizing to non-production accounts or to any subset of accounts.

Define the Instance Scheduling Actions to Take

To define the Instance Scheduling actions to take:

Perform the following action.

Select users to be notified: Specify the list of recipients who should receive email reports about scheduling. Add as many recipients as you like to the Email addresses of the recipients you wish to notify field. They do not need to be registered as Cloud Cost Optimization users.

Configure the General Instance Scheduling Policy Options

To configure the general Instance Scheduling Policy options:

Set the following standard policy configuration options when the Instance Scheduling Policy is applied.

Frequency for policy to run: Specify the frequency the policy will perform the checks, such as weekly, daily, hourly, or every 15 minutes.
Fully automated vs approval required: Specify at the time when applied whether the policy will take action after user approval versus automatically without user intervention. See the Skip Action Approvals documentation.

Note:Approvals may delay the start and stop schedule, so it is recommended to operate this policy with Skip Approvals activated.

Customize the Instance Scheduling Policy

To customize the Instance Scheduling Policy:

Policy designers can customize the Instance Scheduling Policy definition in several ways:

Add actions to be taken before stopping the instances, such as snapshotting.
Allow user input of commands to take before stopping instances.
Control the order in which actions are taken.
Provide scheduling of other services, such as Database as a Service (DBaaS) instances.

Review Actions Taken by the Instance Scheduling Policy

Any instances that meet the conditions specified will be stopped and started at the appropriate times. While the instances are stopped, they will no longer incur charges.