If you’re like me, you probably sat down with your family over the holiday break to relax and watch something on Netflix, only to find that its service was uncharacteristically down. Well, it seems that the company has corrected this problem, and now wants to share what it learned with the rest of us.
Netflix officially released a new open source tools for killing old Amazon Web Services (AWS) instances this week known as Janitor Monkey. This solution, which is part of the company’s “Simian Army” of internal management tools, is meant for enterprise organizations that employ a public cloud through AWS, particularly when they are unknowingly spending unnecessary money because they have forgotten to shut off an old instance.
“It is pretty easy to lose track of the cloud resources that are no longer needed or used,” say Netflix’s Michael Fu and Corey Bennett in a recent blog post. “Perhaps you forgot to delete the cluster with the previous version of your application, or forgot to destroy the volume when you no longer needed the extra disk.”
Janitor Monkey works largely with Netflix’s open source Asgard tool, which lets administrators delete their unused resources; this process is streamlined thanks to Janitor Monkey, which does the work of automatically tracking down these useless instances and allowing Asgard to clean them up.
According to Netflix, Janitor Monkey had deleted over 5000 resources from the company’s production and test environments when it was being used as an in-house product.
In addition to AWS instances, Janitor Monkey also detects EBS volumes, EBS volume snapshots and auto-scaling groups, and all of them come with their own unique rules for how they are marked. (For example, EBS volumes are marked as “cleanup candidates” if they haven’t been attached an instance for 30 days.) Once Janitor Monkey inspects these resources and applies the appropriate rules to them, it will determine if they are, in fact, cleanup candidates and, if so, it marks them for clean up and schedules a time for Asgard to do it. These events will be logged in an Amazon SimpleDB table by default, and it should be small enough to fit inside Amazon’s free-pricing tier.
However, just to double check itself and make sure it isn’t acting too hastily, Janitor Monkey will then inform the administrations attached the specific resources with an alert sent two days before it is scheduled to be cleaned up. Out of the box, Janitor Monkey is automatically configured to run on non-holiday weekends at 11 a.m., but it can be modified to run at other customized times.