Skip to content

Commit 4a45e4e

Browse files
authored
Merge pull request #204290 from MicrosoftDocs/main
7/11 AM Publish
2 parents be79823 + 5034484 commit 4a45e4e

File tree

633 files changed

+2693
-2069
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

633 files changed

+2693
-2069
lines changed

.openpublishing.redirection.azure-monitor.json

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -216,6 +216,11 @@
216216
"redirect_url": "/azure/azure-monitor/visualize/workbooks-overview",
217217
"redirect_document_id": false
218218
},
219+
{
220+
"source_path_from_root": "/articles/azure-monitor/visualize/workbooks-sample-links.md",
221+
"redirect_url": "/azure/azure-monitor/visualize/workbooks-samples",
222+
"redirect_document_id": false
223+
},
219224
{
220225
"source_path_from_root": "/articles/azure-monitor/visualize/view-designer-conversion-access.md",
221226
"redirect_url": "/azure/azure-monitor/visualize/workbooks-overview",

articles/aks/security-controls-policy.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
---
22
title: Azure Policy Regulatory Compliance controls for Azure Kubernetes Service (AKS)
33
description: Lists Azure Policy Regulatory Compliance controls available for Azure Kubernetes Service (AKS). These built-in policy definitions provide common approaches to managing the compliance of your Azure resources.
4-
ms.date: 06/16/2022
4+
ms.date: 07/06/2022
55
ms.topic: sample
66
ms.service: container-service
77
ms.custom: subject-policy-compliancecontrols

articles/api-management/api-management-capacity.md

Lines changed: 30 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -4,103 +4,103 @@ description: This article explains what the capacity metric is and how to make i
44
services: api-management
55
documentationcenter: ''
66
author: dlepow
7-
manager: anneta
8-
editor: ''
97

108
ms.service: api-management
11-
ms.workload: integration
12-
ms.topic: article
13-
ms.date: 06/18/2018
9+
ms.topic: how-to
10+
ms.date: 07/06/2022
1411
ms.author: danlep
1512
ms.custom: fasttrack-edit
1613
---
1714

1815
# Capacity of an Azure API Management instance
1916

20-
**Capacity** is the most important [Azure Monitor metric](api-management-howto-use-azure-monitor.md#view-metrics-of-your-apis) for making informed decisions whether to scale an API Management instance to accommodate more load. Its construction is complex and imposes certain behavior.
17+
**Capacity** is the most important [Azure Monitor metric](api-management-howto-use-azure-monitor.md#view-metrics-of-your-apis) for making informed decisions whether to [scale or upgrade](upgrade-and-scale.md) an API Management instance to accommodate more load. Its construction is complex and imposes certain behavior.
2118

2219
This article explains what the **capacity** is and how it behaves. It shows how to access **capacity** metrics in the Azure portal and suggests when to consider scaling or upgrading your API Management instance.
2320

2421
> [!IMPORTANT]
25-
> This article discusses how you can monitor and scale your Azure API Management instance based upon its capacity metric. However, it is equally important to understand what happens when an individual API Management instance has actually *reached* its capacity. Azure API Management will not apply any service-level throttling to prevent a physical overload of the instances. When an instance reaches its physical capacity, it will behave similar to any overloaded web server that is unable to process incoming requests: latency will increase, connections will get dropped, timeout errors will occur, etc. This means that API clients should be prepared to deal with this possibility similar as with any other external service (e.g. by applying retry policies).
22+
> This article discusses how you can monitor and scale your Azure API Management instance based upon its capacity metric. However, it is equally important to understand what happens when an individual API Management instance has actually *reached* its capacity. Azure API Management will not apply service-level throttling to prevent a physical overload of the instances. When an instance reaches its physical capacity, it will behave similar to any overloaded web server that is unable to process incoming requests: latency will increase, connections will get dropped, timeout errors will occur, and so on. This means that API clients should be prepared to deal with this possibility as they do with any other external service (for example, by applying retry policies).
2623
2724
## Prerequisites
2825

29-
To follow the steps from this article, you must have:
26+
To follow the steps in this article, you must have:
3027

3128
+ An active Azure subscription.
3229

3330
[!INCLUDE [quickstarts-free-trial-note](../../includes/quickstarts-free-trial-note.md)]
3431

35-
+ An APIM instance. For more information, see [Create an Azure API Management instance](get-started-create-service-instance.md).
32+
+ An API Management instance. For more information, see [Create an Azure API Management instance](get-started-create-service-instance.md).
3633

3734
[!INCLUDE [premium-dev-standard-basic.md](../../includes/api-management-availability-premium-dev-standard-basic.md)]
3835

3936
## What is capacity
4037

4138
![Diagram that explains the Capacity metric.](./media/api-management-capacity/capacity-ingredients.png)
4239

43-
**Capacity** is an indicator of load on an API Management instance. It reflects resources usage (CPU, memory) and network queue lengths. CPU and memory usage reveals resources consumption by:
40+
**Capacity** is an indicator of load on an API Management instance. It reflects usage of resources (CPU, memory) and network queue lengths. CPU and memory usage reveals consumption of resources by:
4441

4542
+ API Management data plane services, such as request processing, which can include forwarding requests or running a policy.
46-
+ API Management management plane services, such as management actions applied via the Azure Portal or ARM, or load coming from the [developer portal](api-management-howto-developer-portal.md).
43+
+ API Management management plane services, such as management actions applied via the Azure portal or Azure Resource Manager, or load coming from the [developer portal](api-management-howto-developer-portal.md).
4744
+ Selected operating system processes, including processes that involve cost of TLS handshakes on new connections.
45+
+ Platform updates, such as OS updates on the underlying compute resources for the instance.
4846

49-
Total **capacity** is an average of its own values from every unit of an API Management instance.
47+
Total **capacity** is an average of its own values from every [unit](upgrade-and-scale.md) of an API Management instance.
5048

5149
Although the **capacity metric** is designed to surface problems with your API Management instance, there are cases when problems won't be reflected in changes in the **capacity metric**.
5250

5351
## Capacity metric behavior
5452

5553
Because of its construction, in real life **capacity** can be impacted by many variables, for example:
5654

57-
+ connection patterns (new connection on a request vs reusing the existing connection)
55+
+ connection patterns (new connection on a request versus reusing the existing connection)
5856
+ size of a request and response
5957
+ policies configured on each API or number of clients sending requests.
6058

61-
The more complex operations on the requests are, the higher the **capacity** consumption will be. For example, complex transformation policies consume much more CPU than a simple request forwarding. Slow backend service responses will increase it too.
59+
The more complex operations on the requests are, the higher the **capacity** consumption will be. For example, complex transformation policies consume much more CPU than a simple request forwarding. Slow backend service responses will increase it, too.
6260

6361
> [!IMPORTANT]
6462
> **Capacity** is not a direct measure of the number of requests being processed.
6563
6664
![Capacity metric spikes](./media/api-management-capacity/capacity-spikes.png)
6765

68-
**Capacity** can also spike intermittently or be greater than zero even if there are no requests being processed. It happens because of system- or platform-specific actions and should not be taken into consideration when deciding whether to scale an instance.
66+
**Capacity** can also spike intermittently or be greater than zero even if no requests are being processed. It happens because of system- or platform-specific actions and should not be taken into consideration when deciding whether to scale an instance.
6967

7068
Low **capacity metric** doesn't necessarily mean that your API Management instance isn't experiencing any problems.
7169

72-
## Use the Azure Portal to examine capacity
70+
## Use the Azure portal to examine capacity
7371

7472
![Capacity metric](./media/api-management-capacity/capacity-metric.png)
7573

76-
1. Navigate to your APIM instance in the [Azure portal](https://portal.azure.com/).
77-
2. Select **Metrics**.
78-
3. From the purple section, select **Capacity** metric from available metrics and leave the default **Avg** aggregation.
74+
1. Navigate to your API Management instance in the [Azure portal](https://portal.azure.com/).
75+
2. In the left menu, under **Monitoring**, select **Metrics**.
76+
3. Select the **Capacity** metric from the available metrics and leave the default **Avg** aggregation.
7977

8078
> [!TIP]
81-
> You should always look at a **capacity** metric breakdown per location to avoid wrong interpretations.
79+
> If you've deployed your instance to multiple locations, you should always look at a **capacity** metric breakdown per location to avoid wrong interpretations.
8280
83-
4. From the green section, select **Location** for splitting the metric by dimension.
81+
4. To split the metric by location, from the section at the top, select **Apply splitting** and then select **Location**.
8482
5. Pick a desired timeframe from the top bar of the section.
8583

86-
You can set a metric alert to let you know when something unexpected is happening. For example, get notifications when your APIM instance has been exceeding its expected peak capacity for over 20 minutes.
84+
You can set a [metric alert](api-management-howto-use-azure-monitor.md#set-up-an-alert-rule) to let you know when something unexpected is happening. For example, get notifications when your API Management instance has exceeded its expected peak capacity for more than 20 minutes.
8785

8886
>[!TIP]
89-
> You can configure alerts to let you know when your service is running low on capacity or use Azure Monitor autoscaling functionality to automatically add an Azure API Management unit. Scaling operation can take around 30 minutes, so you should plan your rules accordingly.
87+
> You can configure alerts to let you know when your service is running low on capacity or use Azure Monitor [autoscaling](api-management-howto-autoscale.md) to automatically add an Azure API Management unit. Scaling operation can take around 30 minutes, so you should plan your rules accordingly.
9088
> Only scaling the master location is allowed.
9189
9290
## Use capacity for scaling decisions
9391

94-
**Capacity** is the metric for making decisions whether to scale an API Management instance to accommodate more load. Consider:
92+
**Capacity** is the metric for making decisions whether to scale an API Management instance to accommodate more load. The following are general considerations:
9593

96-
+ Looking at a long-term trend and average.
97-
+ Ignoring sudden spikes that are most likely not related to any increase in load (see "Capacity metric behavior" section for explanation).
98-
+ Upgrading or scaling your instance, when **capacity**'s value exceeds 60% or 70% for a longer period of time (for example 30 minutes). Different values may work better for your service or scenario.
94+
+ Look at a long-term trend and average.
95+
+ Ignore sudden spikes that are most likely not related to an increase in load (see [Capacity metric behavior](#capacity-metric-behavior) section for explanation).
96+
+ As a general rule, upgrade or scale your instance when the **capacity** value exceeds **60% - 70%** for a long period of time (for example, 30 minutes). Different values may work better for your service or scenario.
97+
+ If your instance is configured with only 1 unit, upgrade or scale your instance when the **capacity** value exceeds **40%** for a long period. This recommendation is based on the need to reserve capacity for guest OS updates in the underlying service platform.
9998

10099
>[!TIP]
101-
> If you are able to estimate your traffic beforehand, test your APIM instance on workloads you expect. You can increase the request load on your tenant gradually and monitor what value of the capacity metric corresponds to your peak load. Follow the steps from the previous section to use Azure portal to understand how much capacity is used at any given time.
100+
> If you are able to estimate your traffic beforehand, test your API Management instance on workloads you expect. You can increase the request load on your tenant gradually and monitor the value of the capacity metric that corresponds to your peak load. Follow the steps from the previous section to use Azure portal to understand how much capacity is used at any given time.
102101
103102
## Next steps
104103

105-
- [How to scale or upgrade an Azure API Management service instance](upgrade-and-scale.md)
106-
- [Optimize and save on your cloud spending](../cost-management-billing/costs/quick-acm-cost-analysis.md?WT.mc_id=costmanagementcontent_docsacmhorizontal_-inproduct-learn)
104+
- [Upgrade and scale an Azure API Management service instance](upgrade-and-scale.md)
105+
- [Automatically scale an Azure API Management instance](api-management-howto-autoscale.md)
106+
- [Plan and manage costs for API Management](plan-manage-costs.md)

0 commit comments

Comments
 (0)