8 Ways to Improve Cloud Automation Through Tagging
The 10 Most Influential Business Leaders in 2021
Since the beginning of public cloud, users
have been attempting to improve cloud automation. This can be driven by
laziness, scale, organizational mandate, or some combination of those. Since
the rise of DevOps practices and principles, this “automate everything”
approach has become even more popular, as it’s one of the main pillars of
DevOps. One of the ways you can help sort, filter, and automate your cloud
environment is to utilize tags on your cloud resources.
Tagging Methodologies
In the cloud infrastructure world, tags are
labels or identifiers that are attached to your instances. This is a way for
you to provide custom metadata to accompany the existing metadata, such as
instance family and size, region, VPC, IP information, and more. Tags are
created as key/value pairs, although the value is optional if you just want to
use the key. For instance, your key could be “Department” with a value of
“Finance”, or you could have a key of just “Finance”.
There are 4 general tag categories, as laid
out in the best practices from AWS:
- Technical — This often includes things like the application
that is running on the resource, what cluster it belongs to, or which
environment it’s running in (such as “dev” or “staging”).
- Automation — These tags are read by automated software, and can
include things like dates for when to decommission the resource, a flag
for opting in or out of a service, or what version of a script or package
to install.
- Business and billing — Companies with lots of resources need to
track which department or user owns a resource for billing purposes, which
customer an instance is serving, or some sort of tracking ID or internal
asset management tag.
- Security — Tags can help with compliance and information
security, as well as with access controls for users and roles who may be
listing and accessing resources.
In general, more tags are better, even if
you aren’t actively using those tags just yet. Planning ahead for ways you
might search through or group instances and resources can help save headaches
down the line. You should also ensure that you standardize your tags by being
consistent with the capitalization/spelling and limiting the scope of both the
keys and the values for those keys. Using management and provisioning tools
like Terraform or Ansible can automate and maintain your tagging standards.
Automation Methodologies
Once you’ve got your tagging system
implemented and your resources labeled properly, you can really dive into your
cloud automation strategy. Many different automation tools can read these tags
and utilize them, but here are a few ideas to help make your life better:
- Configuration Management — Tools like Chef, Puppet, Ansible,
and Salt are often used for installing and configuring systems once they
are provisioned. This can determine which settings to change or
configuration bundles to run on the instances.
- Cost Control — this is the automation area we focus on at ParkMyCloud — our
platform’s automated policies can read the tags on servers, scale groups,
and databases to determine which schedule to apply and which team to
assign the resource to, among other actions.
- CI/CD — If your build tool (like Jenkins or Bamboo) is set to
provision or utilize cloud resources for the build or deployment, you can
use tags for the build number or code repository to help with the
continuous integration or continuous delivery.
- Cloud Account Clean-up — Scripts and tools that help keep your
account tidy can use tags that set an end date for the resource as a way
to ensure that only necessary systems are around long-term. You can also
take steps to automatically shut down or terminate instances that aren’t
properly tagged, so you know your resources won’t be orphaned.
Conclusion: Tagging Will Improve Your
Cloud Automation
As your cloud use grows, implementing cloud
automation will be a crucial piece of your infrastructure management. Utilizing
tags not only helps with human sorting and searching, but also with automated
tasks and scripts. If you’re not already tagging your systems, having a
strategy on the tagging and the automation can save you both time and money.
Jay Chapel (Author) is the CEO of ParkMyCloud.