Skip to content

Latest commit

 

History

History

unused_load_balancers

Azure Unused Load Balancers

What It Does

This Policy finds Azure Load Balancers that have had no network activity for the user-specified number of days and raises an incident with a list of said Azure Load Balancers. Optionally, it will delete them.

How It Works

  • The microsoft.network/loadbalancers API endpoint is used to gather a list of all Azure Load Balancers.
  • The microsoft.insights/metrics API endpoint is used to get ByteCount and PacketCount metrics for the above.
  • The Azure Load Balancers list is filtered to just those load balancers with a PacketCount of 0 for the user-specified number of days.

Policy Savings Details

The policy includes the estimated monthly savings. The estimated monthly savings is recognized if the resource is terminated.

  • The Estimated Monthly Savings is calculated by multiplying the amortized cost of the resource for 1 day, as found within Flexera CCO, by 30.44, which is the average number of days in a month.
  • Since the costs of individual resources are obtained from Flexera CCO, they will take into account any Flexera adjustment rules or cloud provider discounts present in the Flexera platform.
  • If the resource cannot be found in Flexera CCO, the Estimated Monthly Savings is 0.
  • The incident message detail includes the sum of each resource Estimated Monthly Savings as Potential Monthly Savings.
  • Both Estimated Monthly Savings and Potential Monthly Savings will be reported in the currency of the Flexera organization the policy is applied in.

Input Parameters

  • Email Addresses - A list of email addresses to notify
  • Azure Endpoint - Azure Endpoint to access resources
  • Lookback Period - How many days back to check Azure Load Balancers for network activity. This value cannot be set higher than 90 because Azure does not retain metrics for longer than 90 days.
  • Minimum Savings Threshold - Minimum potential savings required to generate a recommendation.
  • Allow/Deny Subscriptions - Allow or Deny entered Subscriptions to filter results.
  • Allow/Deny Subscriptions List - A list of allowed or denied Subscription IDs/names. Leave blank to check all Subscriptions.
  • Allow/Deny Regions - Allow or Deny entered regions to filter results.
  • Allow/Deny Regions List - A list of allowed or denied regions. Leave blank to check all Subscriptions.
  • Exclusion Tags - The policy will filter resources containing the specified tags from the results. The following formats are supported:
    • Key - Filter all resources with the specified tag key.
    • Key==Value - Filter all resources with the specified tag key:value pair.
    • Key!=Value - Filter all resources missing the specified tag key:value pair. This will also filter all resources missing the specified tag key.
    • Key=~/Regex/ - Filter all resources where the value for the specified key matches the specified regex string.
    • Key!~/Regex/ - Filter all resources where the value for the specified key does not match the specified regex string. This will also filter all resources missing the specified tag key.
  • Exclusion Tags: Any / All - Whether to filter instances containing any of the specified tags or only those that contain all of them. Only applicable if more than one value is entered in the Exclusion Tags field.
  • Automatic Actions - When this value is set, this policy will automatically take the selected action(s).

Please note that the "Automatic Actions" parameter contains a list of action(s) that can be performed on the resources. When it is selected, the policy will automatically execute the corresponding action on the data that failed the checks, post incident generation. Please leave it blank for manual action. For example if a user selects the "Delete Unused Load Balancers" action while applying the policy, all the Azure Load Balancers that didn't satisfy the policy condition will be deleted.

Policy Actions

The following policy actions are taken on any resources found to be out of compliance.

  • Send an email report
  • Delete unused Azure Load Balancers after an approval

Prerequisites

This Policy Template uses Credentials for authenticating to datasources -- in order to apply this policy you must have a Credential registered in the system that is compatible with this policy. If there are no Credentials listed when you apply the policy, please contact your Flexera Org Admin and ask them to register a Credential that is compatible with this policy. The information below should be consulted when creating the credential(s).

  • Azure Resource Manager Credential (provider=azure_rm) which has the following permissions:

    • Microsoft.Insights/metrics/read
    • Microsoft.Network/loadBalancers/read
    • Microsoft.Network/loadBalancers/delete*

    * Only required for taking action; the policy will still function in a read-only capacity without these permissions.

  • Flexera Credential (provider=flexera) which has the following roles:

    • billing_center_viewer

The Provider-Specific Credentials page in the docs has detailed instructions for setting up Credentials for the most common providers.

Supported Clouds

  • Azure

Cost

This policy template does not incur any cloud costs.