Skip to content

Commit 0afa284

Browse files
authored
Merge pull request #197528 from MicrosoftDocs/main
5/09 AM Publish
2 parents 2e29efb + 9f8f9d2 commit 0afa284

File tree

82 files changed

+2047
-1081
lines changed

Some content is hidden

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

82 files changed

+2047
-1081
lines changed

articles/active-directory/develop/msal-net-token-cache-serialization.md

Lines changed: 3 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -278,39 +278,9 @@ You can also specify options to limit the size of the in-memory token cache:
278278

279279
#### Distributed caches
280280

281-
If you use `app.AddDistributedTokenCache`, the token cache is an adapter against the .NET `IDistributedCache` implementation. So you can choose between a distributed memory cache, a SQL Server cache, a Redis cache, or an Azure Cosmos DB cache. For details about the `IDistributedCache` implementations, see [Distributed memory cache](/aspnet/core/performance/caching/distributed).
281+
If you use `app.AddDistributedTokenCache`, the token cache is an adapter against the .NET `IDistributedCache` implementation. So you can choose between a SQL Server cache, a Redis cache, an Azure Cosmos DB cache, or any other cache implementing the [IDistributedCache](https://docs.microsoft.com/dotnet/api/microsoft.extensions.caching.distributed.idistributedcache?view=dotnet-plat-ext-6.0) interface.
282282
283-
Here's the code for a distributed in-memory token cache:
284-
285-
```CSharp
286-
// In-memory distributed token cache
287-
app.AddDistributedTokenCache(services =>
288-
{
289-
// In net462/net472, requires to reference Microsoft.Extensions.Caching.Memory
290-
services.AddDistributedMemoryCache();
291-
292-
// Distributed token caches have an L1/L2 mechanism.
293-
// L1 is in memory, and L2 is the distributed cache
294-
// implementation that you will choose below.
295-
// You can configure them to limit the memory of the
296-
// L1 cache, encrypt, and set eviction policies.
297-
services.Configure<MsalDistributedTokenCacheAdapterOptions>(options =>
298-
{
299-
// You can disable the L1 cache if you want
300-
options.DisableL1Cache = false;
301-
302-
// Or limit the memory (by default, this is 500 MB)
303-
options.sizeLimit = 1024 * 1024 * 1024, // 1 GB
304-
305-
// You can choose to encrypt the cache or not
306-
options.Encrypt = false;
307-
308-
// And you can set eviction policies for the distributed
309-
// cache
310-
options.SlidingExpiration = TimeSpan.FromHours(1);
311-
});
312-
});
313-
```
283+
For testing purposes only, you may want to use `services.AddDistributedMemoryCache()`, an in-memory implementation of `IDistributedCache`.
314284

315285
Here's the code for a SQL Server cache:
316286

@@ -320,8 +290,7 @@ Here's the code for a SQL Server cache:
320290
{
321291
services.AddDistributedSqlServerCache(options =>
322292
{
323-
// In net462/net472, requires to reference Microsoft.Extensions.Caching.Memory
324-
293+
325294
// Requires to reference Microsoft.Extensions.Caching.SqlServer
326295
options.ConnectionString = @"Data Source=(localdb)\MSSQLLocalDB;Initial Catalog=TestCache;Integrated Security=True;Connect Timeout=30;Encrypt=False;TrustServerCertificate=False;ApplicationIntent=ReadWrite;MultiSubnetFailover=False";
327296
options.SchemaName = "dbo";

articles/aks/azure-disk-volume.md

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ title: Create a static volume for pods in Azure Kubernetes Service (AKS)
33
description: Learn how to manually create a volume with Azure disks for use with a pod in Azure Kubernetes Service (AKS)
44
services: container-service
55
ms.topic: article
6-
ms.date: 04/01/2019
6+
ms.date: 05/09/2019
77

88

99
#Customer intent: As a developer, I want to learn how to manually create and attach storage to a specific pod in AKS.
@@ -20,9 +20,9 @@ For more information on Kubernetes volumes, see [Storage options for application
2020

2121
## Before you begin
2222

23-
This article assumes that you have an existing AKS cluster. If you need an AKS cluster, see the AKS quickstart [using the Azure CLI][aks-quickstart-cli], [using Azure PowerShell][aks-quickstart-powershell], or [using the Azure portal][aks-quickstart-portal].
23+
This article assumes that you have an existing AKS cluster with 1.21 or later version. If you need an AKS cluster, see the AKS quickstart [using the Azure CLI][aks-quickstart-cli], [using Azure PowerShell][aks-quickstart-powershell], or [using the Azure portal][aks-quickstart-portal].
2424

25-
You also need the Azure CLI version 2.0.59 or later installed and configured. Run `az --version` to find the version. If you need to install or upgrade, see [Install Azure CLI][install-azure-cli].
25+
If you want to interact with Azure Disks on an AKS cluster with 1.20 or previous version, see the [Kubernetes plugin for Azure Disks][kubernetes-disks].
2626

2727
## Create an Azure disk
2828

@@ -146,8 +146,6 @@ kubectl apply -f azure-disk-pod.yaml
146146

147147
For associated best practices, see [Best practices for storage and backups in AKS][operator-best-practices-storage].
148148

149-
For more information about AKS clusters interact with Azure disks, see the [Kubernetes plugin for Azure Disks][kubernetes-disks].
150-
151149
<!-- LINKS - external -->
152150
[kubernetes-disks]: https://github.com/kubernetes/examples/blob/master/staging/volumes/azure_disk/README.md
153151
[kubernetes-volumes]: https://kubernetes.io/docs/concepts/storage/volumes/

articles/aks/azure-files-volume.md

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ titleSuffix: Azure Kubernetes Service
44
description: Learn how to manually create a volume with Azure Files for use with multiple concurrent pods in Azure Kubernetes Service (AKS)
55
services: container-service
66
ms.topic: article
7-
ms.date: 04/1/2022
7+
ms.date: 05/09/2022
88

99

1010
#Customer intent: As a developer, I want to learn how to manually create and attach storage using Azure Files to a pod in AKS.
@@ -19,9 +19,9 @@ For more information on Kubernetes volumes, see [Storage options for application
1919

2020
## Before you begin
2121

22-
This article assumes that you have an existing AKS cluster. If you need an AKS cluster, see the AKS quickstart [using the Azure CLI][aks-quickstart-cli], [using Azure PowerShell][aks-quickstart-powershell], or [using the Azure portal][aks-quickstart-portal].
22+
This article assumes that you have an existing AKS cluster with 1.21 or later version. If you need an AKS cluster, see the AKS quickstart [using the Azure CLI][aks-quickstart-cli], [using Azure PowerShell][aks-quickstart-powershell], or [using the Azure portal][aks-quickstart-portal].
2323

24-
You also need the Azure CLI version 2.0.59 or later installed and configured. Run `az --version` to find the version. If you need to install or upgrade, see [Install Azure CLI][install-azure-cli].
24+
If you want to interact with Azure Files on an AKS cluster with 1.20 or previous version, see the [Kubernetes plugin for Azure Files][kubernetes-files].
2525

2626
## Create an Azure file share
2727

@@ -68,7 +68,7 @@ kubectl create secret generic azure-secret --from-literal=azurestorageaccountnam
6868

6969
## Mount file share as an inline volume
7070
> [!NOTE]
71-
> Inline `azureFile` volume can only access secrets in the same namespace as the pod. To specify a different secret namespace, [please use the persistent volume example][persistent-volume-example] below instead.
71+
> Inline volume can only access secrets in the same namespace as the pod. To specify a different secret namespace, [please use the persistent volume example][persistent-volume-example] below instead.
7272
7373
To mount the Azure Files share into your pod, configure the volume in the container spec. Create a new file named `azure-files-pod.yaml` with the following contents. If you changed the name of the Files share or secret name, update the *shareName* and *secretName*. If desired, update the `mountPath`, which is the path where the Files share is mounted in the pod. For Windows Server containers, specify a *mountPath* using the Windows path convention, such as *'D:'*.
7474

@@ -201,8 +201,6 @@ kubectl apply -f azure-files-pod.yaml
201201

202202
For Azure File CSI driver parameters, see [CSI driver parameters][CSI driver parameters].
203203

204-
For information about AKS 1.20 or below clusters interact with Azure Files, see the [Kubernetes plugin for Azure Files][kubernetes-files].
205-
206204
For associated best practices, see [Best practices for storage and backups in AKS][operator-best-practices-storage].
207205

208206
<!-- LINKS - external -->

articles/application-gateway/ingress-controller-troubleshoot.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ spec:
5555
port: 80
5656
targetPort: 80
5757
---
58-
apiVersion: extensions/v1beta1
58+
apiVersion: networking.k8s.io/v1
5959
kind: Ingress
6060
metadata:
6161
name: test-agic-app-ingress
@@ -323,4 +323,4 @@ rbac:
323323
# Specify aks cluster related information. THIS IS BEING DEPRECATED.
324324
aksClusterConfiguration:
325325
apiServerAddress: <aks-api-server-address>
326-
```
326+
```

articles/automanage/TOC.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,8 @@
4040
href: repair-automanage-account.md
4141
- name: Move an Automanaged virtual machine across regions
4242
href: move-automanaged-vms.md
43+
- name: Move an Automanaged configuration profile across regions
44+
href: move-automanaged-configuration-profile.md
4345
- name: Windows Server VNext Datacenter Azure Edition (preview)
4446
href: windows-server-azure-edition-vnext.md
4547
- name: Resources
Lines changed: 106 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,106 @@
1+
---
2+
title: Move an Azure Automanage configuration profile across regions
3+
description: Learn how to move an Automanage Configuration Profile across regions
4+
ms.service: automanage
5+
ms.workload: infrastructure
6+
ms.topic: how-to
7+
ms.date: 05/01/2022
8+
ms.custom: subject-moving-resources
9+
# Customer intent: As a sysadmin, I want move my Automanage Configuration Profile to a different region.
10+
---
11+
12+
# Move an Azure Automanage configuration profile to a different region
13+
This article describes how to migrate an Automanage Configuration Profile to a different region. You might want to move your Configuration Profiles to another region for many reasons. For example, to take advantage of a new Azure region, to meet internal policy and governance requirements, or in response to capacity planning requirements. You may want to deploy Azure Automanage to some VMs that are in a new region. Some regions may require that you use Automanage Configuration Profiles that are local to that region.
14+
15+
## Prerequisites
16+
* Ensure that your target region is [supported by Automanage](./automanage-virtual-machines.md#prerequisites).
17+
* Ensure that your Log Analytics workspace region, Automation account region, and your target region are all regions supported by the region mappings [here](../automation/how-to/region-mappings.md).
18+
19+
## Download your desired Automanage configuration profile
20+
21+
We'll begin by downloading our previous Configuration Profile using PowerShell. First, perform a `GET` using `Invoke-RestMethod` against the Automanage Resource Provider, substituting the values for your subscription.
22+
23+
```url
24+
https://management.azure.com/subscriptions/<yourSubscription>/providers/Microsoft.Automanage/configurationProfiles?api-version=2021-04-30-preview
25+
```
26+
27+
The GET command will display a list of Automanage Configuration Profile information, including the settings and the ConfigurationProfile ID
28+
```azurepowershell-interactive
29+
$listConfigurationProfilesURI = "https://management.azure.com/subscriptions/<yourSubscription>/providers/Microsoft.Automanage/configurationProfiles?api-version=2021-04-30-preview"
30+
31+
Invoke-RestMethod `
32+
-URI $listConfigurationProfilesURI
33+
```
34+
35+
Here are the results, edited for brevity.
36+
37+
```json
38+
{
39+
"id": "/subscriptions/yourSubscription/resourceGroups/yourResourceGroup/providers/Microsoft.Automanage/configurationProfiles/testProfile1",
40+
"name": "testProfile1",
41+
"type": "Microsoft.Automanage/configurationProfiles",
42+
"location": "westus",
43+
"properties": {
44+
"configuration": {
45+
"Antimalware/Enable": false,
46+
"Backup/Enable": true,
47+
"Backup/PolicyName": "dailyBackupPolicy",
48+
}
49+
}
50+
},
51+
{
52+
"id": "/subscriptions/yourSubscription/resourceGroups/yourResourceGroup/providers/Microsoft.Automanage/configurationProfiles/testProfile2",
53+
"name": "testProfile2",
54+
"type": "Microsoft.Automanage/configurationProfiles",
55+
"location": "eastus2euap",
56+
"properties": {
57+
"configuration": {
58+
"Antimalware/Enable": false,
59+
"Backup/Enable": true,
60+
"Backup/PolicyName": "dailyBackupPolicy",
61+
}
62+
}
63+
}
64+
```
65+
66+
The next step is to do another `GET`, this time to retrieve the specific profile we would like to create in a new region. For this example, we'll retrieve 'testProfile1'. We'll perform a `GET` against the `id` value for the desired profile.
67+
68+
```azurepowershell-interactive
69+
$profileId = "https://management.azure.com/subscriptions/yourSubscription/resourceGroups/yourResourceGroup/providers/Microsoft.Automanage/configurationProfiles/testProfile1?api-version=2021-04-30-preview"
70+
71+
$profile = Invoke-RestMethod `
72+
-URI $listConfigurationProfilesURI
73+
```
74+
75+
## Adjusting the location
76+
77+
Creating the profile in a new location is as simple as changing the `Location` property to our desired Azure Region.
78+
79+
We also will need to create a new name for this profile. Let's change the name of the Configuration Profile `profileUk`. We should update the `Name` property within the profile, and also in the URL. We can use the `-replace` format operator to make this simple.
80+
81+
```powershell
82+
$profile.Location = "westeurope"
83+
$profile.Name -replace "testProfile1", "profileUk"
84+
$profileId -replace "testProfile1", "profileUk"
85+
```
86+
87+
Now that we have changed the Location value, this updated Configuration Profile will be created in Western Europe when we submit it.
88+
89+
## Creating the new profile in the desired location
90+
91+
All that remains now is to `PUT` this new profile, using `Invoke-RestMethod` once more.
92+
93+
```powershell
94+
$profile = Invoke-RestMethod `
95+
-Method PUT `
96+
-URI $profileId
97+
```
98+
99+
## Enable Automanage on your VMs
100+
For details on how to move your VMs, see this [article](../resource-mover/tutorial-move-region-virtual-machines.md).
101+
102+
Once you've moved your profile to a new region, you may use it as a custom profile for any VM. Details are available [here](./automanage-virtual-machines.md#enabling-automanage-for-vms-in-azure-portal).
103+
104+
## Next steps
105+
* [Learn more about Azure Automanage](./automanage-virtual-machines.md)
106+
* [View frequently asked questions about Azure Automanage](./faq.yml)

articles/availability-zones/az-region.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@ In the Product Catalog, always-available services are listed as "non-regional" s
6666

6767
| **Products** | **Resiliency** |
6868
| --- | --- |
69-
| [Azure Application Gateway (V2)](../application-gateway/application-gateway-autoscaling-zone-redundant.md) | ![An icon that signifies this service is zonal.](media/icon-zonal.svg) |
69+
| [Azure Application Gateway (V2)](../application-gateway/application-gateway-autoscaling-zone-redundant.md) | ![An icon that signifies this service is zone redundant.](media/icon-zone-redundant.svg) ![An icon that signifies this service is zonal.](media/icon-zonal.svg) |
7070
| [Azure Backup](../backup/backup-create-rs-vault.md) | ![An icon that signifies this service is zonal.](media/icon-zonal.svg) |
7171
| [Azure Cosmos DB](../cosmos-db/high-availability.md) | ![An icon that signifies this service is zone redundant.](media/icon-zone-redundant.svg) |
7272
| [Azure DNS: Azure DNS Private Zones](../dns/private-dns-getstarted-portal.md) | ![An icon that signifies this service is zone redundant.](media/icon-zone-redundant.svg) |
@@ -212,4 +212,4 @@ You can access Azure availability zones by using your Azure subscription. To lea
212212

213213
- [Building solutions for high availability using availability zones](/azure/architecture/high-availability/building-solutions-for-high-availability)
214214
- [High availability with Azure services](/azure/architecture/framework/resiliency/overview)
215-
- [Design patterns for high availability](/azure/architecture/framework/resiliency/app-design)
215+
- [Design patterns for high availability](/azure/architecture/framework/resiliency/app-design)

articles/azure-monitor/app/asp-net-troubleshoot-no-data.md

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -27,9 +27,11 @@ ms.date: 05/21/2020
2727

2828
* SDK channel keeps telemetry in buffer, and sends them in batches. If the application is shutting down, you might need to explicitly call [Flush()](api-custom-events-metrics.md#flushing-data). Behavior of `Flush()` depends on the actual [channel](telemetry-channels.md#built-in-telemetry-channels) used.
2929

30+
* Per [.NET Core/.NET Framework Console application](worker-service.md#net-corenet-framework-console-application), explicitly calling Flush() followed by sleep is required in Console Apps.
31+
3032
## Request count collected by Application Insights SDK doesn't match the IIS log count for my application
3133

32-
Internet Information Services (IIS) logs counts of all request reaching IIS and inherently could differ from the total request reaching an application. Due to this, it isn't guaranteed that the request count collected by the SDKs will match the total IIS log count.
34+
Internet Information Services (IIS) logs counts of all request reaching IIS and inherently could differ from the total request reaching an application. Due to this behavior, it isn't guaranteed that the request count collected by the SDKs will match the total IIS log count.
3335

3436
## No data from my server
3537
* I installed my app on my web server, and now I don't see any telemetry from it. It worked OK on my dev machine.*
@@ -216,13 +218,13 @@ Performance data (CPU, IO rate, and so on) is available for [Java web services](
216218
* Have you hit your monthly quota of data points? Open the Settings/Quota and Pricing to find out. If so, you can upgrade your plan, or pay for more capacity. See the [pricing scheme](https://azure.microsoft.com/pricing/details/application-insights/).
217219

218220
## I don't see all the data I'm expecting
219-
If your application sends a lot of data and you're using the Application Insights SDK for ASP.NET version 2.0.0-beta3 or later, the [adaptive sampling](./sampling.md) feature may operate and send only a percentage of your telemetry.
221+
If your application sends considerable data and you're using the Application Insights SDK for ASP.NET version 2.0.0-beta3 or later, the [adaptive sampling](./sampling.md) feature may operate and send only a percentage of your telemetry.
220222

221-
You can disable it, but doing so is not recommended. Sampling is designed so that related telemetry is correctly transmitted, for diagnostic purposes.
223+
You can disable it, but doing so isn't recommended. Sampling is designed so that related telemetry is correctly transmitted, for diagnostic purposes.
222224

223225
## Client IP address is 0.0.0.0
224226

225-
On February 5 2018, we announced that we removed logging of the Client IP address. This doesn't affect Geo Location.
227+
On February 5 2018, we announced that we removed logging of the Client IP address. This recommendation doesn't affect Geo Location.
226228

227229
> [!NOTE]
228230
> If you need the first 3 octets of the IP address, you can use a [telemetry initializer](./api-filtering-sampling.md#addmodify-properties-itelemetryinitializer) to add a custom attribute.
@@ -243,7 +245,7 @@ Follow these instructions to capture troubleshooting logs for your framework.
243245
> [!NOTE]
244246
> Starting in version 2.14, the [Microsoft.AspNet.ApplicationInsights.HostingStartup](https://www.nuget.org/packages/Microsoft.AspNet.ApplicationInsights.HostingStartup) package is no longer necessary, SDK logs are now collected with the [Microsoft.ApplicationInsights](https://www.nuget.org/packages/Microsoft.ApplicationInsights/) package. No additional package is required.
245247

246-
1. Modify your applicationinsights.config file to include the following:
248+
1. Modify your applicationinsights.config file to include the following XML:
247249

248250
```xml
249251
<TelemetryModules>
@@ -305,7 +307,7 @@ For more information,
305307

306308
## Collect logs with dotnet-trace
307309

308-
Alternatively, customers can also use a cross-platform .NET Core tool, [`dotnet-trace`](/dotnet/core/diagnostics/dotnet-trace) for collecting logs that can further help in troubleshooting. This may be helpful for linux-based environments.
310+
Alternatively, customers can also use a cross-platform .NET Core tool, [`dotnet-trace`](/dotnet/core/diagnostics/dotnet-trace) for collecting logs that can further help in troubleshooting. This tool may be helpful for linux-based environments.
309311

310312
After installation of [`dotnet-trace`](/dotnet/core/diagnostics/dotnet-trace), execute the command below in bash.
311313

0 commit comments

Comments
 (0)