ParkMyCloud allows you to apply parking schedules (essentially on/off times) to compute instances that aren’t currently in use to save money. Great! So how do you figure out what you can park?
How to Determine What to Park
First, look at your development or non-production environments. Although there are some production systems that have regular times without usage, parking is most applicable to non-production environments. Non-production environments include anything that does not directly support your customers, for example, Test, Quality Assurance and Staging. When your employees go home for the night or weekend, these instances sit idle while your AWS bill continues to count up.
Ideally you would be able to identify these by looking at the names of the instances. ParkMyCloud allows you to search by instance name to apply parking calendars.
In reality, instance names may not be a reliable search method – some names can be cryptic. So in an environment where you aren’t really sure what is development and what isn’t, how do you determine what should be parked?
I have seen environments where development servers are in one region and production in other. Regions are also searchable from our platform. However, your best tool is likely to be tagging.
How to Add AWS Tags to Your Instances
AWS provides a very simple mechanism for tagging instances that also allows you to get pretty inventive if you want to. If you haven’t looked into it, you should. AWS tags are simple and can prove to be extremely useful. Each is made up of a key and a value.
Let’s say you want to group 5 servers together. You can apply a tag to all of them where the key is “application type” and the value is “my awesome app”. Then you can search for “my awesome app” and instantly see the 5 servers that make up that application. How is this useful? Let me show you some examples:
- Key: Department, Value: Development
- Key: Team, Value: QA for my awesome app
- Key: Environment, Value: staging
- Key: Application Owner, Value: my awesome app Dev team
If you aren’t using tags currently, you need your appropriate team members to add the tag following whatever convention you come up with. You would also want teams to provision servers with the appropriate tagging convention moving forward. You could do this through process, or cloud formations, or a cloud management platform that handles provisioning.
Once the tags are on your EC2 instances, they will be automatically discovered by ParkMyCloud. You can then search on those tags and see the instances that match.
ParkMyCloud now provides users with recommendations of parkable instances. This newly added feature searches instance names and tags for specific keywords to find instances that might be considered parkable. We provide a few keywords from the beginning, which you can customize by removing or adding keywords to fit your needs. If there are any false positives identified, you can select it and ignore it, so that you do not continue to receive recommendations for that instance.
We are continuing to make enhancements to the platform every day, and are working on the next expansion of the parking recommendation functionality. For example, future recommendations may include notifications that when CPU usage is at 0% between the hours of 7 p.m. and 7 a.m. Or a recommendation could be made when we notice no one is logged into the system during those hours. All this and more to come.
What are your suggestions for recommending parkable instances? Let us know in the comments below.