instance Scheduler on AWS Exam Notes
Overview
Instance Scheduler is an AWS solution (not a service) to manage instance lifecycles, deployed via CloudFormation.
It can automatically start and stop AWS resources, potentially reducing costs by up to 70%.
Specifically useful for stopping EC2 instances, RDS instances, and managing Auto Scaling Groups to control costs outside business hours.
Architecture
Deployment: Deployed using CloudFormation.
Components:
Uses DynamoDB to manage schedules.
A Lambda function retrieves schedules and triggers other Lambdas to stop/start services.
Cross-Account/Region Support: It supports resources across accounts and regions, making it a production-ready solution.
Key Benefits
Cost Management: Automatically manage the start and stop times of instances, reducing unnecessary costs.
Flexibility: Schedule can be customized for various hours and conditions.
Deployment Steps
Search for Instance Scheduler AWS in the AWS Management Console.
Access the solution webpage and review the implementation guide and source code.
Launch the CloudFormation stack via the Management Console:
Click on Launch Solution.
The instance will pre-fill the CloudFormation template with necessary URL.
Provide stack parameters:
Schedule: frequency at which to check for stopping/starting instances.
Time Zone: define the default time zone for scheduling.
Service Enablement:
Choose services (EC2, RDS, etc.) for scheduling.
Tagging: Instances are tagged with scheduler actions for tracking.
Confirm and create the stack, then monitor the creation of resources.
DynamoDB Tables
The primary table created in DynamoDB is the config table that:
Holds the schedule details (name, description, start/end times).
Allows customization (e.g., workdays, specific weekdays).
Lambda Functions
Multiple Lambda functions handle the scheduling logic, performing actions based on the retrieved schedules.
Additional Resources
For further insights, look into the Developer Guide and Operator Guide provided with the solution.
Conclusion
The Instance Scheduler is a comprehensive and flexible tool for AWS users looking to optimize costs by managing the operational hours of their resources effectively. Familiarity with its architecture, setup, and configuration will be crucial for understanding the solution in exams.