The content in this blog is outdated and we cannot reliably say it is still accurate with the speed in which the cloud industry moves. But don’t worry—below are more recent, up-to-date blogs.
Why is tagging important?
As organizations scale their cloud environment, there is a wide variety of infrastructure services, assets and resources on which stakeholders across the organization will want to analyze, measure and report. Most organizations will have several ways they want to report their cost, usage, performance, availability and security, and these needs will change over time in response to the requirements of different stakeholders. For example, finance may want a monthly breakdown of costs by product line or shared environment; operations may need a usage breakdown by project or team; and engineering may want a performance breakdown by application role. Having multiple ways to organize infrastructure is pivotal to enabling users with different needs to manage and make effective use of their cloud infrastructure.
The challenge for most organizations becomes how to define, structure and allocate your resources to enable you to easily organize infrastructure. Things can go awry with tag misspellings, conventions or capitalizations, all of which contribute to new variations of an existing tag structure and increase the difficulty in which to report on.
Start with the basics - How does tagging work?
Creating a set of defined key and value pairs for reporting is the first step to identifying optimizations and trends in your environment. Tags are not automatically assigned to your resource and must be assigned by whoever launched the resource, or by an administrator. Creating a tag governance strategy that spans all accounts and clouds will go a long way into giving you consolidated visibility into everything that is going on in your cloud environment.
Tagging Best Practices
Every organization has a different use case for what they’d like to report on and the way their infrastructure is managed. However, after working with hundreds of organizations on their tagging structure, we’ve identified several common tagging approaches that may help you when creating a new tagging strategy. The following are what we’ve observed as best practices to help identify optimizations and trends for many of our customers:
- Customer - Depending on the company and product, “customer” is a valuable tag to use to identify customer growth, cost per customer, and margins. This also provides insight for different areas of the business to identify what resources are necessary when adding a new customer as there is previous data on a similar sized customer to compare to.
- Product - Creating a “Product” tag allows you to analyze the cost of a feature that is in development, through to production. This enables finance and the business to determine how much a new feature costs while being developed versus how much the product is making once in production.
- Team - “Team” allows the business to send reports and optimizations based on a team's cost, usage or performance to the various members of the team to hold them accountable for their cost, as well as give them visibility into their usage to allow for better optimization and cost savings.
- Owner - In order to hold users accountable for what they are spinning up, “owner” is a great tag to identify which users forgot to spin something down, which ones are using the most resources, and also allow the business to work directly with each owner on their usage to optimize and find savings.
- Environment - A good use case for this is viewing cost by environment to determine where you are spending the most (development, staging, production, etc.) and, if it's production, how is this affecting your cost of goods sold (COGS). Another use case is using environments to dictate what can be analyzed for reservation purchases or what can be used in automated policies for start/stop policies, unattached volume deletion, and more.
- Organization/Business Unit - Another way to divide cost and usage based on the teams contributing to cost or usage is “organization” or “business unit.” This allows the business to determine which units are spending the most, hold them accountable for savings and optimizations, and direct conversations towards the right group when looking at cost or usage increases.
- Function - Sometimes trends in service item cost alone can’t tell the story of why usage is increasing. Adding a “function” tag to assets allows cost or usage reports to show trends based on what these assets are actually being used for and where to go back and find the root cause of the growth. This also allows users to look at rightsizing reports by function to identify which uses can be modified, and which were provisioned on a certain size for a reason.
- Cost Center - Popular with finance teams, “cost center” allows reporting to populate cost or usage reports by an internal cost center for financial and month-end reporting. In some cases, accounts align one-for-one with a cost center, but in other cases, cost center is used as a tag to assign cost from multi-use accounts. This also allows finance to use our budget feature to track actual cost vs budget throughout the month, and use policies to trigger alerts when cost exceeds these budgets.
How to Leverage Tags in CloudHealth
By creating a key and value pair, CloudHealth is able to reference that information and allocate assets based on their tag to various groups for reporting. While tags can only be applied to certain active assets, CloudHealth can help manage reporting on these groups through other metadata for untagged assets, as well as using custom CloudHealth tags for terminated assets that can no longer be tagged.
CloudHealth uses the concept of Perspectives as an additional way to filter reporting, group assets for optimizations and analysis, and to enable policies to act on certain resources defined by a tagging structure. By using tags on your resources, Perspectives can create groups based on the values under these tags to allow reporting, policies, and optimizations to be sorted, filtered and analyzed by these groups and values. Policies can even alert users when resources are spun up without a tag or without following the tag patterns, using regex. With these types of policies, CloudHealth can help maintain the governance structures put in place to ensure accurate reporting by tag, assist with chargebacks and provide accountability for those who are spinning up resources.