Skip to content

Level 100: Cost and Usage Governance

Authors

  • Nathan Besh, Cost Lead Well-Architected

Feedback

If you wish to provide feedback on this lab, there is an error, or you want to make a suggestion, please email: costoptimization@amazon.com

Table of Contents

  1. Create an AWS Budget - monthly forecast
  2. Create an AWS Budget - EC2 actual
  3. Create an AWS Budget - RI Coverage
  4. Tear down
  5. Rate this Lab

1. Create and implement an AWS Budget for monthly forecasted usage

Budgets allow you to manage cost and usage by providing notifications when usage or cost are outside of configured amounts. They cannot be used to restrict actions, only notify on usage after it has occurred.

NOTE: You may not receive an alarm for a forecasted budget if your account is new. Forecasting requires existing usage within the account.

Create a monthly cost budget for your account

We will create a monthly cost budget which will notify if the forecasted amount exceeds the budget.

  1. Go to the Billing console: Images/AWSBudget1.png

  2. Select Budgets from the left menu: Images/AWSBudget2.png

  3. Click on Create a budget: Images/AWSBudget3.png

  4. Ensure Cost Budget is selected, and click Set your budget >: Images/AWSBudget4.png

  5. Create a cost budget, enter the following details:

  6. Name: (enter a name),
  7. Budgeted amount: (enter an amount a lot LESS than last months cost),
  8. Budget effective dates: Select Recurring Budget and start month is the current month,
  9. Other fields: leave as defaults: Images/AWSBudget5.png

  10. Scroll down and click Configure alerts >: Images/AWSBudget6.png

  11. Select:

  12. Send alert based on: Forecasted Costs
  13. Alert threshold: 100% of budgeted amount
  14. Email contacts: (your email address)
  15. Click on Confirm budget >: Images/AWSBudget7.png

  16. Review the configuration, and click Create: Images/AWSBudget8.png

  17. You can see the current forecast will exceed the budget (it is red, you may need to refresh your browser): Images/AWSBudget9.png

10: You will receive an email similar to this within a few minutes: Images/AWSBudget10.png

You have created a forecasted budget, when your forecasted costs for the entire account are predicted to exceed the forecast, you will receive a notification. You can also create an actual budget, for when your current costs actually exceed a defined amount.

2. Create and implement an AWS Budget for EC2 actual cost

We will create a monthly EC2 actual cost budget, which will notify if the actual costs of EC2 instances exceeds the specified amount.

  1. Click Create budget: Images/AWSBudget11.png

  2. Select Cost budget, and click Set your budget >: Images/AWSLab0.png

  3. Create a cost budget, enter the following details:

  4. Name: (enter a name),
  5. Budgeted amount: (enter an amount a lot LESS than last months cost),
  6. Budget effective dates: Select Recurring Budget and start month is the current month,
  7. Other fields: leave a defaults
  8. Under FILTERING click on Service: Images/AWSLab1.png

  9. Type Elastic in the search field, then select the checkbox next to EC2-Instances(Elastic Compute Cloud - Compute) and Click Apply filters: Images/AWSLab2.png

  10. De-select Upfront reservation fees, and click Configure alerts >: Images/AWSLab3.png

  11. Select:

  12. Send alert based on: Actual Costs
  13. Alert threshold: 100% of budgeted amount
  14. Email contacts: (your email address)
  15. Click on Confirm budget >: Images/AWSLab4.png

  16. Review the configuration, and click Create: Images/AWSLab5.png

  17. You can see the current amount exceeds the budget (it is red, you may need to refresh your browser): Images/AWSLab6.png

  18. You will receive an email similar to the previous budget within a few minutes.

You have created an actual cost budget for EC2 usage. You can extend this budget by adding specific filters such as linked accounts, tags or instance types. You can also create budgets for other services than EC2.

3. Create and implement an AWS Budget for EC2 Instance RI coverage

We will create a monthly RI coverage budget which will notify if the coverage of Reserved Instances for EC2 is below the specified amount.

  1. Click Create budget: Images/AWSLab7.png

  2. Select Reservation budget, and click Set your budget >: Images/AWSLab8.png

  3. For Reservation budget type Select RI Coverage, enter a Name, select EC2-Instances as the Service, enter a Coverage threshold of 80% and click Configure alerts >: Images/AWSLab9.png

  4. Enter an address for Email contacts and click Confirm budget >: Images/AWSLab10.png

  5. Review the configuration, and click Create in the lower right: Images/AWSLab11.png

  6. You have created an RI Coverage budget. High coverage is critical for cost optimization, as it ensures you are paying the lowest price for your resources. Images/AWSLab12.png

  7. You will receive an email similar to this within a few minutes: Images/AWSLab13.png

4. Tear down

Delete a budget

We will delete all three budgets that were configured in sections 2,3 and 4.

  1. From the budgets homepage, click on the budget name CostBudget1: Images/AWSTeardown15.png

  2. Click on the 3 dot menu in the top right, select Delete: Images/AWSTeardown16.png

  3. Click on the other budget name EC2_actual: Images/AWSTeardown17.png

  4. Click on the 3 dot menu in the top right, select Delete: Images/AWSTeardown18.png

  5. Click on the other budget name EC2_RI_Coverage: Images/AWSTeardown19.png

  6. Click on the 3 dot menu in the top right, select Delete: Images/AWSTeardown20.png

  7. ALl budgets should be deleted that were created in this workshop: Images/AWSTeardown21.png

5. Rate this lab

1 Star 2 star 3 star 4 star 5 star