Huggies – AWS Elastic Beanstalk Automation Tool

Huggies is a side project that I started when working for the NAPI team which pronounced as [‘næpɪ], and that is why I named it as Huggies 😉

The team’s environments are mostly on AWS Elastic Beanstalk. In general, Elastic Beanstalk is a good tool as it abstracts the complexicity of managing Elastic Load Balancer, Autoscaling group, Route 53 etc. It allows developers to focus on the codes, instead of worrying much about the running environments. But there were still a few pain points that I observed the team was sufferring:

  • Hard to start or stop environments
  • Hard to manage the environments scheduled scaling
  • Elastic Beanstalk does not support spot instance

Huggies is built on Hubot framework, it is a plug and play tool which solves the above the pain points. Watch the demo if you are interested to know more about Huggies.

The current version has following features:

  • Support both Slack and RESTful API
  • Role based user management
  • Start/stop single Elastic Beanstalk environment
  • Start/stop multiple Elastic Beanstalk environments
  • Show Elastic Beanstalk environment details
  • Use spot instances for Elastic Beanstalk environments
  • Report activities in Slack channel
  • Monitor spot instance request status, and automatically adjust bid price
  • Custom scale up/down schedule
  • Support multiple AWS accounts and regions
  • Check the monthly/weekly/daily/hourly AWS cost (via CloudHealth)
  • Find out the oncall stuff (via OpsGenie)

4 thoughts on “Huggies – AWS Elastic Beanstalk Automation Tool

  1. Hey Jackie, great tool! I’m not clear on exactly what happens if Huggies detects that the spot price exceeds my bid… will it switch back to using on-demand, increase my bid, or let the spot instances be terminated?

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s