Maximize Savings On Mixed-Instance ASGs
If you’re currently using Spot to save on your ASG costs, you’re familiar with the complexity and time needed to cost-optimize your commitment usage and choosing the best Spot instances for your workloads.
Compute Copilot was created to make it easy to save, bringing Spot market insights and awareness of your commitments to your Mixed-Instance ASGs. It automatically and continuously tunes your ASG configurations to ensure you’re (1) always using the right amount of Spot, and (2) always on the most cost-effective and reliable option available, gracefully replacing your nodes before termination.
And because it’s built on your existing AWS-native ASGs, it’s ultra-easy to onboard. Simply plug it in to effortlessly run mission-critical workloads with peace of mind that you are scheduled on the most cost-optimized and stable option at all times.
New Mixed-Instance Policy & Lifecycle Hook Support
For hassle-free savings on the full range of your ASGs, Copilot now optimizes:
- ASGs with Mixed Instance Policies — Launch multiple instance types and On-Demand Instances and Spot Instances within a single Auto Scaling group.
- ASGs with Lifecycle Hooks — Create solutions that are aware of events in the Auto Scaling instance lifecycle, and then perform a custom action on instances when the corresponding lifecycle event occurs.
It just takes a couple of quick tags to onboard and start realizing effortless Spot savings on all of your ASGs.
At nOps, our mission is to make it easy for engineers to optimize cost. Learn more about how Compute Copilot can help you save while freeing up your time to focus on building and innovation.
How It Works
The below diagram provides additional information on how Copilot optimizes your ASGs.
ASG launches a new on-demand instance
Lambda intercepts the EC2 Instance State-change Notification event from EventBridge
If the created instance is not protected from termination and should be replaced, Compute Copilot performs the following steps:
- Copy the Launch Template or Launch Configuration from the ASG launch template
- In the copied Launch Template, modify Network Interfaces, Tags, Block Device and/or Mappings from the instance Launch Template or Configuration if needed
- Fetch recommended instance types from nOps API
- Request Spot Fleet with the copied Launch Template and recommended instance types
- Once the Spot request is fulfilled, get the Spot Instance and wait for it to its state to be Running
- Attach the created Spot Instance to the ASG
- Wait for the attached Spot Instance’s state to be InService
- If there is a lifecycle hook for termination for On-Demand, the On-Demand will go through the lifecycle hook action for termination
- Terminate the On-Demand instance
- If there is a Mixed-Instance Policy, modify the percentages of On-Demand and Spot accordingly.
For more information, you can also consult the documentation.