The practice of allocating IT infrastructure to groups has been a common and well understood practice for decades, however its application to the cloud has been challenging due to dynamic infrastructure, delegation of control, consumption-based pricing, and the increased scale of resources being managed.
Due to a wide variety of infrastructure services, assets and resources, most organizations have several ways they want to slice and dice their cost, usage, performance, availability and security, and will change their reporting structure 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 do you define, structure and allocate your resources to enable you to easily organize your infrastructure?
What are perspectives?
Perspectives are “lenses” by which you can view your infrastructure. Each role within an organization measures and evaluates the business from a different viewpoint or “Perspective.” With Perspectives, business units can create views that align with their reporting needs based on groups of assets determined by their tags or other metadata.
How to build a good perspective:
When building a Perspective, there are multiple steps needed in order to group assets into your desired view for reporting. In the CloudHealth AWS Platform, there are two main groupings of assets in the Perspective Assets List: “Amazon Taggable Asset” and “Asset (EC2...Clusters).”
The difference between the two is that “Amazon Taggable Asset” looks at a list of assets CloudHealth supports tagging for, while “Asset” looks at the list of assets between the parentheses, and anything attached to them that may be untagged, such as volumes or snapshots.
Step 1: Cast a net that associates untagged assets with their dependent assets, by starting with the resource type “Asset (EC2...).”
Step 2: Switch to “Categorize” instead of “Search” and choose the tag you’d like to allocate resources by.
Step 3: Add these results as a dynamic rule, and then you can go back and categorize the remaining Assets Not Allocated by another tag variation, and by “Amazon Taggable Asset” as the resource type. These multiple categorizations create different dynamic blocks which can be merged together to create one view for reporting.
Here are the six most common Perspectives we see being used by our CloudHealth customers:
- Product - Creating a “Product” Perspective allows you to analyze the cost of a feature that is in development through to its 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. This will 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 Perspective to identify which users forgot to spin something down, which ones are using the most resources, and also allows the business to work directly with each owner on their usage to optimize and find savings.
- Environment - A good use case for viewing costs by “Environment” is to determine where you are spending the most (development, staging, production, etc.) and, if it's in production, how this is affecting your cost of goods sold (COGS). Another use case is using environment to dictate what can be analyzed for reservation purchases or what can be used in automated policies for start/stop, unattached volume deletion, and more.
- Organization/Business Unit - Another way to divide reporting based on the teams contributing to cost or usage is “Organization” or “Business Unit.” These Perspectives allow 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. In case your business doesn’t have a tag for organizations or business units, you can use CloudHealth’s Organization Feature to allocate accounts to various organizations for teams to visualize their data separate from other business units.
- Cost Center - Popular with Finance teams, a “Cost Center” Perspective populates 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 costs from multi-use accounts. This also allows Finance to use the budget feature to track actual cost vs budget throughout the month, and use policies to trigger alerts when cost exceeds these budgets.