Skip to content

Commit

Permalink
readme updates + initial commit
Browse files Browse the repository at this point in the history
  • Loading branch information
JOEL PROCTOR authored and JOEL PROCTOR committed Apr 9, 2022
1 parent e727b68 commit e5b7a38
Show file tree
Hide file tree
Showing 2 changed files with 54 additions and 29 deletions.
69 changes: 40 additions & 29 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,40 +15,51 @@ This project collects the outputs from conversations in the Slack [#KPIs room](h

## List of common FinOps KPIs

* RI Coverage
* Savings Plan Coverage
* Committed Use Discount coverage
* Rightsizing opportunity value
* Usage on weekends vs weekdays
* % of spot vs other coverage
* custom pricing commitment tracking
* % orphaned EBS volumes
* % orphaned snapshots
* Aged snapshots
* Idle instances > 30-days
* Idle instances < 30-days
* Total bill vs. forecast -- including variance % of forecast: actual bill
* % of oversized instances (not tagged as approved)
* % S3 storage on the wrong tier
* % EBS storage on wrong tier
* % unattached elastic IPs
* % wrong instance type
* % dev resources running out of hours (this means, running out of non-peak hours, like nights and weekends
* % untagged resources
* % wrongly tagged resources
* % total tag coverage
* % taggable items tagged
* % of spend that is untaggable
* Hours between cost incurred and cost displayed to end team
* Frequency of data updates
* Avg price per hour of compute
* Unit cost (spend divided by a business metric)
### platform team, sre, eng

### finance

| KPI | purpose | audience | | |
|---|---|---|---|---|
|% of resoruces considered waste (qty) | determine (1) how severe waste problem is and (2) if clean-up action is needed | eng | | |
|percentage of resources that are considered waste ($) | determine (1) how severe waste problem is and (2) if clean-up action is needed | eng | | |
| total cost of resources that are considered waste | determine (1) how severe waste problem is and (2) if clean-up action is needed | eng | | |
| % of untagged resources | baseline: determine if / when new tagging efforts are needed | eng | | |
| opportunity value of rightsizing efforts | determine when/if cleanup action is necessary | eng | | |
| % of orphaned ebs volumes | determine when/if cleanup action is necessary | eng | | |
| % of orphaned snapshots | determine when/if cleanup action is necessary | eng | | |
| avg age of snapshots | determine if new lifecycle policies are needed | eng | | |
| idle instances > 30-days | locate instances to shut-down or terminate | eng | | |
| Idle instances < 30-days | no actions required: useful visibility metric | eng | | |
| % of oversized instances (not tagged as approved) | targets for rightsizing | eng | | |
| % S3 storage on without recommended tier | | | | |
| % S3 storage on the wrong tier | | | | |
| % EBS storage on without recommended tier | | | | |
| % EBS storage on wrong tier | | | | |
| % unattached elastic IPs | | | | |
| % instances without recommended instance type | | | | |
| % dev resources running out of hours (this means, running out of non-peak hours, like nights and weekends | | | | |
| % untagged resources | | | | |
| % total tag coverage | | | | |
| % taggable items tagged | | | | |
| % of spend that is untaggable | | | | |
| frequency of data updates | | | | |
| avg price per hour of compute | | | | |
| unit cost (total spend divided by a business metric) | | | | |
| SP/RI coverage percentage | determine when or if to buy new plans | finance | | |
| SP/RI utilization percentage | determine when or if to sell existing plans, or prefer specific resource types | finance | | |
| expiring SP/RI plans | select when or if to purchase new plans | finance | | |
| total spot pricing opportunities (#) | determine spot eligibility | finance | | |
| total spot pricing opportunities ($) | determine spot viability | finance | | |
| total bill vs forecast (14, 21, 28 day) | | finance | | |
| budget variance | | finance | | |
| forecast variance (14, 21, 28 day) | finance | | | |
| usage on weekdays VS weekends | | finance | | |


## Planned Projects

* Add categories to KPIs (tags, optimization, accuracy, etc)
* Split out metrics by persona (FinOps team vs. Eng team vs Finance team)
* Add FinOps team OKRs / Goals

## Related Links
Expand Down
14 changes: 14 additions & 0 deletions pyproject.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
[tool.poetry]
name = "finops_kpis"
version = "0.1.0"
description = "collection of kpis for finops intiatives"
authors = ["Your Name <[email protected]>"]

[tool.poetry.dependencies]
python = "3.8.*"

[tool.poetry.dev-dependencies]

[build-system]
requires = ["poetry-core>=1.0.0"]
build-backend = "poetry.core.masonry.api"

0 comments on commit e5b7a38

Please sign in to comment.