How to Use Tagging to Help Manage AWS Budgeting
Brien Posey shows how to use Cost Allocation Tags to get billing details in a way that matches your organization's own unique business needs.
If you have ever received an AWS bill that was a bit higher than what you expected, then you have probably paid a visit to the Cost Explorer. For those who might not be familiar with this tool, it provides a graphical display of your month to month spending, broken down by service. If you look at Figure 1 for example, you can see that my spending was way up in August and September, primarily because of VPC usage.
While it's great to be able to get a service by service breakdown of your spending, simply knowing how much was spent on a particular service might be inadequate for some organizations. If an organization uses chargebacks for example, then they would need to be able to break resource consumption down by department or project so that those resources could be billed against the proper budget. Thankfully, Amazon does provide a way to get billing details in a way that matches your organization's own unique business needs.
The trick is to use a mechanism called Cost Allocation Tags. As you probably know, Amazon supports the use of general purpose tagging throughout its cloud services. Organizations commonly use tags (which are essentially just key / value pairs) to annotate the objects that they create within the Amazon cloud. For instance, an organization might use a tag to identify the application that is running on a particular Web server.
Cost allocation tags work very similar to the tags that Amazon uses for other purposes. In fact, cost allocation tags can be based on your existing general purpose tags. However, there are two things that differentiate cost allocation tags from other types of tags that you might use.
The primary difference between a normal tag and a cost allocation tag is that a cost allocation tag can be used as a filtering mechanism within the Cost Explorer, whereas a general purpose tag normally cannot.
The second difference is that unlike general purpose tags, there are two different types of cost allocation tags.
The first type of cost allocation tag is an AWS generated cost allocation tag. As its name implies, an AWS generated cost allocation tag is created automatically by Amazon and is designed to assist with basic cost tracking.
Contrary to what you might expect, AWS generated cost allocation tags are not enabled automatically. You have to activate the tags before you can use them. To activate a tag, go to the Billing and Cost Management console, and then choose the Cost Allocation Tags option from within the navigation pane. Next, locate the AWS Generated Cost Allocation tags section, and click the Activate button, shown in Figure 2. It can take up to 24 hours for the tags to be activated. In case you are wondering, once tags have been activated you can use them as a filtering mechanism within the Cost Explorer.
User defined cost allocation tags are activated in a manner that is similar to that of AWS generated tags. Simply select the checkboxes associated with the tags that you want to activate, and then click on the Activate button. If you look at Figure 3 for example, you can see my unactivated and activated tags.
As you look at the screen capture above, you may be wondering where the tags on the list came from, and why the interface does not give you an opportunity to create a "user defined tag." The User Defined Cost Allocation Tag section isn't designed to create tags, but rather to help you to use existing tags for cost management purposes. If you use a tag elsewhere in the AWS cloud, that tag will appear on the list and can then be activated. For example, the tag that I activated in the previous screen capture was created within EC2.
Brien Posey is a 22-time Microsoft MVP with decades of IT experience. As a freelance writer, Posey has written thousands of articles and contributed to several dozen books on a wide variety of IT topics. Prior to going freelance, Posey was a CIO for a national chain of hospitals and health care facilities. He has also served as a network administrator for some of the country's largest insurance companies and for the Department of Defense at Fort Knox. In addition to his continued work in IT, Posey has spent the last several years actively training as a commercial scientist-astronaut candidate in preparation to fly on a mission to study polar mesospheric clouds from space. You can follow his spaceflight training on his Web site.