During Black Friday 2017there seemed to be a lot of missing capacity in several AWS regions, even for on-demand instances. As such, some AWS users are wary of using EC2 spot instances going into Black Friday. In this post we will explain how Spot by NetApp can help ensure high availability while fully leveraging spot instances.
AWS Auto Scaling Groups and multiple instance types
Traditional Auto Scaling Groups tend to be locked into a single instance type.If that instance is out of capacity, the group is unable to continue scaling. This is especially problematic during Black Friday as systems might start crashing under the load.
To solve this issue, Spot by NetApp’sElastigroup makes it simple to work with multiple instance types within a single scaling group. During this periodwe recommend enabling a larger number of non-preferred EC2 spot capacity pools than normally used, for the duration of the holiday. This will enableElastigroup to not only look for a broader variety of spot instances, but also fall-back onto available on-demand instances in the most affordable markets. Let’s take a look at how to set it up.
How to set up your Elastigroupcapacity pool
Pick the relevant Elastigroup.
On the top right corner, press ‘Actions’ → ‘Edit Configuration’.
Under the ‘General’ tab → Advanced, make sure that the ‘Fallback to On-Demand’ checkbox is checked.
Go to the ‘Compute’ tab and scroll down to ‘Additional Configurations’.
Click the ‘Preferred Spot Types’ window and select all your currently used Instance Types as preferred – this will make sure Elastigroup prioritizes your preferred instances before attempting to utilize any other instance types.
After you selected your ‘Preferred Spot Types’, scroll back up to the `Spot Types` table and add as many instance types as your workload can support.Ideally you will end up with something similar to this: Important note: A m5.4xlarge instance spot instance has a comparable price to a m5.xlarge on-demand instance and is less expensive than m5.2xlarge on-demand.
Click ‘Next’ twice to the ‘Review’ tab and then click ‘Update’ to save changes.
What behavior should I expect?
Elastigroup will provision instances in the following order, moving to the next step in case no capacity is available:
Preferred spot instance types
Non-preferred spot instance types
On-demand type (the one selected on the top right corner of the ‘Compute’ tab)
Other selectedspot instance types as on-demand instances starting with the least expensive ones and up
What if I want to have a baseline of on-demand instances prior to Black Friday?
If you still want to set a baseline of on-demand instances prior to Black Friday to guarantee capacity, go back to the ‘Edit Configuration’ and under ‘General’ set a number of ‘On-Demand Count’ to have Elastigroup run a fixed baseline of On-Demand Instances.
Specific preparation for containerized workloads running in Ocean
Spot by NetApp’s Ocean simplifies infrastructure management for Kubernetes and other containerized workloads while reliably leveraging spot instances for rock-bottom pricing. One aspect of Ocean is its focus on container-driven autoscaling. Ocean will launch the most appropriate instance type depending on your pod/container requirements while also accounting for any native labels, taints, tolerations, network and storage requirements. As a result, Ocean by default will enable several different instance types, sizes and families in your cluster, which in turn opens upmanydifferent spot markets for Ocean to use.
Warm start with Ocean Headroom
Another consideration for Ocean customers is the use of “headroom”. Headroom ensures that the cluster has the capacity to quickly scale more Pods without waiting for new nodes to be provisioned. Ocean optimally manages the headroom to provide the best possible cost/performance balance. However, headroom may also be manually configured to support any use case. In this case, headroom can be used to over-provision the clusters ahead of Black Friday
To customize the scaling configuration:
Navigate to your Ocean cluster
Click on the Actions button on the top-right side of the screen to open the actions menu
Choose Customize Scaling
Ocean also allows you to configure a separate headroom on a Virtual Node Group level. When custom headroom units are specified on one Virtual Node Group or more, Ocean will maintain a buffer of spare capacity that matches the constraints defined in that Virtual Node Group (node labels, taints, etc.), in addition to the cluster level headroom units. For example, if the cluster level headroom is configured to maintain 2 headroom units of 2048 MiB and 2000 CPU, and a specific Virtual Node Group is configured to maintain 2 Headroom unit of the same size, that means a total of 4 headroom units will be maintained at all times, 2 of them matching the Virtual Node Group’s constraints.
Get started with Spot by NetAppso your cloud environment will be highly availablefor Black Friday at the lowest possible cost.
We use technologies like cookies to store and/or access device information. We do this to improve browsing experience and to show (non-) personalized ads. Consenting to these technologies will allow us to process data such as browsing behavior or unique IDs on this site. Not consenting or withdrawing consent, may adversely affect certain features and functions.
Functional
Always active
The technical storage or access is strictly necessary for the legitimate purpose of enabling the use of a specific service explicitly requested by the subscriber or user, or for the sole purpose of carrying out the transmission of a communication over an electronic communications network.
Preferences
The technical storage or access is necessary for the legitimate purpose of storing preferences that are not requested by the subscriber or user.
Statistics
The technical storage or access that is used exclusively for statistical purposes.The technical storage or access that is used exclusively for anonymous statistical purposes. Without a subpoena, voluntary compliance on the part of your Internet Service Provider, or additional records from a third party, information stored or retrieved for this purpose alone cannot usually be used to identify you.
Marketing
The technical storage or access is required to create user profiles to send advertising, or to track the user on a website or across several websites for similar marketing purposes.