Skip to content

Commit 2c2e523

Browse files
authored
Merge pull request #263075 from MicrosoftDocs/main
1/11/2024 PM Publish
2 parents 92fd700 + afee504 commit 2c2e523

32 files changed

+357
-321
lines changed

articles/aks/TOC.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -105,14 +105,14 @@
105105
href: network-observability-overview.md
106106
- name: Security
107107
items:
108+
- name: Security concepts
109+
href: concepts-security.md
108110
- name: Access and identity
109111
href: concepts-identity.md
110112
- name: Security vulnerability management
111113
href: concepts-vulnerability-management.md
112114
- name: Security Baseline
113115
href: /security/benchmark/azure/baselines/aks-security-baseline?toc=/azure/aks/toc.json&bc=/azure/aks/breadcrumb/toc.json
114-
- name: Container Security
115-
href: concepts-security.md
116116
- name: Confidential Containers security policy
117117
href: ../confidential-computing/confidential-containers-aks-security-policy.md?toc=/azure/aks/toc.json&bc=/azure/aks/breadcrumb/toc.json
118118
- name: Security controls by Azure Policy

articles/aks/concepts-security.md

Lines changed: 1 addition & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ description: Learn about security in Azure Kubernetes Service (AKS), including m
44
author: miwithro
55
ms.topic: conceptual
66
ms.custom: build-2023
7-
ms.date: 10/31/2023
7+
ms.date: 01/11/2024
88
ms.author: miwithro
99
---
1010

@@ -82,25 +82,6 @@ Because of compliance or regulatory requirements, certain workloads may require
8282
* [Confidential Containers][confidential-containers] (preview), also based on Kata Confidential Containers, encrypts container memory and prevents data in memory during computation from being in clear text, readable format, and tampering. It helps isolate your containers from other container groups/pods, as well as VM node OS kernel. Confidential Containers (preview) uses hardware based memory encryption (SEV-SNP).
8383
* [Pod Sandboxing][pod-sandboxing] (preview) provides an isolation boundary between the container application and the shared kernel and compute resources (CPU, memory, and network) of the container host.
8484

85-
## Cluster upgrades
86-
87-
Azure provides upgrade orchestration tools to upgrade of an AKS cluster and components, maintain security and compliance, and access the latest features. This upgrade orchestration includes both the Kubernetes master and agent components.
88-
89-
To start the upgrade process, specify one of the [listed available Kubernetes versions](supported-kubernetes-versions.md). Azure then safely cordons and drains each AKS node and upgrades.
90-
91-
### Cordon and drain
92-
93-
During the upgrade process, AKS nodes are individually cordoned from the cluster to prevent new pods from being scheduled on them. The nodes are then drained and upgraded as follows:
94-
95-
1. A new node is deployed into the node pool.
96-
* This node runs the latest OS image and patches.
97-
1. One of the existing nodes is identified for upgrade.
98-
1. Pods on the identified node are gracefully terminated and scheduled on the other nodes in the node pool.
99-
1. The emptied node is deleted from the AKS cluster.
100-
1. Steps 1-4 are repeated until all nodes are successfully replaced as part of the upgrade process.
101-
102-
For more information, see [Upgrade an AKS cluster][aks-upgrade-cluster].
103-
10485
## Network security
10586

10687
For connectivity and security with on-premises networks, you can deploy your AKS cluster into existing Azure virtual network subnets. These virtual networks connect back to your on-premises network using Azure Site-to-Site VPN or Express Route. Define Kubernetes ingress controllers with private, internal IP addresses to limit services access to the internal network connection.

articles/azure-arc/kubernetes/tutorial-arc-enabled-open-service-mesh.md

Lines changed: 37 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,9 @@
11
---
22
title: Azure Arc-enabled Open Service Mesh
3-
description: Open Service Mesh (OSM) extension on Azure Arc-enabled Kubernetes cluster
3+
description: Deploy the Open Service Mesh (OSM) extension on Azure Arc-enabled Kubernetes cluster
44
ms.custom: ignite-2022, devx-track-azurecli, devx-track-arm-template
5-
ms.date: 10/12/2022
5+
ms.date: 01/11/2024
66
ms.topic: tutorial
7-
author: mayurigupta13
8-
ms.author: mayg
97
---
108

119
# Azure Arc-enabled Open Service Mesh
@@ -14,6 +12,8 @@ ms.author: mayg
1412

1513
OSM runs an Envoy-based control plane on Kubernetes, can be configured with [SMI](https://smi-spec.io/) APIs, and works by injecting an Envoy proxy as a sidecar container next to each instance of your application. [Read more](https://docs.openservicemesh.io/#features) on the service mesh scenarios enabled by Open Service Mesh.
1614

15+
All components of Azure Arc-enabled OSM are deployed on availability zones, making them zone redundant.
16+
1717
## Installation options and requirements
1818

1919
Azure Arc-enabled Open Service Mesh can be deployed through Azure portal, Azure CLI, an ARM template, or a built-in Azure policy.
@@ -67,8 +67,9 @@ export RESOURCE_GROUP=<resource-group-name>
6767
If you're using an OpenShift cluster, skip to the [OpenShift installation steps](#install-osm-on-an-openshift-cluster).
6868

6969
Create the extension:
70+
7071
> [!NOTE]
71-
> If you would like to pin a specific version of OSM, add the `--version x.y.z` flag to the `create` command. Note that this will set the value for `auto-upgrade-minor-version` to false.
72+
> To pin a specific version of OSM, add the `--version x.y.z` flag to the `create` command. Note that this will set the value for `auto-upgrade-minor-version` to false.
7273
7374
```azurecli-interactive
7475
az k8s-extension create --cluster-name $CLUSTER_NAME --resource-group $RESOURCE_GROUP --cluster-type connectedClusters --extension-type Microsoft.openservicemesh --scope cluster --name osm
@@ -181,8 +182,10 @@ Now, [install OSM with custom values](#setting-values-during-osm-installation).
181182
[cert-manager](https://cert-manager.io/) is a provider that can be used for issuing signed certificates to OSM without
182183
the need for storing private keys in Kubernetes. Refer to OSM's [cert-manager documentation](https://docs.openservicemesh.io/docs/guides/certificates/)
183184
and [demo](https://docs.openservicemesh.io/docs/demos/cert-manager_integration/) to learn more.
185+
184186
> [!NOTE]
185187
> Use the commands provided in the OSM GitHub documentation with caution. Ensure that you use the correct namespace in commands or specify with flag `--osm-namespace arc-osm-system`.
188+
186189
To install OSM with cert-manager as the certificate provider, create or append to your existing JSON settings file the `certificateProvider.kind`
187190
value set to cert-manager as shown here. To change from the default cert-manager values specified in OSM documentation,
188191
also include and update the subsequent `certmanager.issuer` lines.
@@ -218,29 +221,26 @@ To set required values for configuring Contour during OSM installation, append t
218221
}
219222
```
220223

221-
Now, [install OSM with custom values](#setting-values-during-osm-installation).
222-
223224
### Setting values during OSM installation
224225

225226
Any values that need to be set during OSM installation need to be saved to a single JSON file and passed in through the Azure CLI
226227
install command.
227228

228229
After you create a JSON file with applicable values as described in the custom installation sections, set the file path as an environment variable:
229230

230-
```azurecli-interactive
231-
export SETTINGS_FILE=<json-file-path>
232-
```
231+
```azurecli-interactive
232+
export SETTINGS_FILE=<json-file-path>
233+
```
233234

234-
Run the `az k8s-extension create` command to create the OSM extension, passing in the settings file using the
235+
Run the `az k8s-extension create` command to create the OSM extension, passing in the settings file using the `--configuration-settings-file` flag:
235236

236-
`--configuration-settings-file` flag:
237-
```azurecli-interactive
238-
az k8s-extension create --cluster-name $CLUSTER_NAME --resource-group $RESOURCE_GROUP --cluster-type connectedClusters --extension-type Microsoft.openservicemesh --scope cluster --name osm --configuration-settings-file $SETTINGS_FILE
239-
```
237+
```azurecli-interactive
238+
az k8s-extension create --cluster-name $CLUSTER_NAME --resource-group $RESOURCE_GROUP --cluster-type connectedClusters --extension-type Microsoft.openservicemesh --scope cluster --name osm --configuration-settings-file $SETTINGS_FILE
239+
```
240240

241241
## Install Azure Arc-enabled OSM using ARM template
242242

243-
After connecting your cluster to Azure Arc, create a JSON file with the following format, making sure to update the \<cluster-name\> and \<osm-arc-version\> values:
243+
After connecting your cluster to Azure Arc, create a JSON file with the following format, making sure to update the `<cluster-name>` and `<osm-arc-version>` values:
244244

245245
```json
246246
{
@@ -307,7 +307,7 @@ export TEMPLATE_FILE_NAME=<template-file-path>
307307
export DEPLOYMENT_NAME=<desired-deployment-name>
308308
```
309309

310-
Run this command to install the OSM extension using the az CLI:
310+
Run this command to install the OSM extension:
311311

312312
```azurecli-interactive
313313
az deployment group create --name $DEPLOYMENT_NAME --resource-group $RESOURCE_GROUP --template-file $TEMPLATE_FILE_NAME
@@ -317,7 +317,9 @@ You should now be able to view the OSM resources and use the OSM extension in yo
317317

318318
## Install Azure Arc-enabled OSM using built-in policy
319319

320-
A built-in policy is available on Azure portal under the category of **Kubernetes** by the name of **Azure Arc-enabled Kubernetes clusters should have the Open Service Mesh extension installed**. This policy can be assigned at the scope of a subscription or a resource group. The default action of this policy is **Deploy if not exists**. However, you can choose to audit the clusters for extension installations by changing the parameters during assignment. You're also prompted to specify the version you wish to install (v1.0.0-1 or higher) as a parameter.
320+
A built-in policy is available on Azure portal under the **Kubernetes** category: **Azure Arc-enabled Kubernetes clusters should have the Open Service Mesh extension installed**. This policy can be assigned at the scope of a subscription or a resource group.
321+
322+
The default action of this policy is **Deploy if not exists**. However, you can choose to audit the clusters for extension installations by changing the parameters during assignment. You're also prompted to specify the version you wish to install (v1.0.0-1 or higher) as a parameter.
321323

322324
## Validate installation
323325

@@ -360,15 +362,17 @@ You should see a JSON output similar to:
360362
}
361363
```
362364

365+
For more commands that you can use to validate and troubleshoot the deployment of the Open Service Mesh (OSM) extension components on your cluster, see [our troubleshooting guide](extensions-troubleshooting.md#azure-arc-enabled-open-service-mesh)
366+
363367
## OSM controller configuration
364368

365-
OSM deploys a MeshConfig resource `osm-mesh-config` as a part of its control plane in arc-osm-system namespace. The purpose of this MeshConfig is to provide the mesh owner/operator the ability to update some of the mesh configurations based on their needs. to view the default values, use the following command.
369+
OSM deploys a MeshConfig resource `osm-mesh-config` as a part of its control plane in `arc-osm-system` namespace. The purpose of this MeshConfig is to provide the mesh owner/operator the ability to update some of the mesh configurations based on their needs. To view the default values, use the following command.
366370

367371
```azurecli-interactive
368372
kubectl describe meshconfig osm-mesh-config -n arc-osm-system
369373
```
370374

371-
The output would show the default values:
375+
The output shows the default values:
372376

373377
```azurecli-interactive
374378
Certificate:
@@ -416,6 +420,7 @@ For more information, see the [Config API reference](https://docs.openservicemes
416420

417421
> [!NOTE]
418422
> Values in the MeshConfig `osm-mesh-config` are persisted across upgrades.
423+
419424
Changes to `osm-mesh-config` can be made using the `kubectl patch` command. In the following example, the permissive traffic policy mode is changed to false.
420425

421426
```azurecli-interactive
@@ -436,7 +441,7 @@ Alternatively, to edit `osm-mesh-config` in Azure portal, select **Edit configur
436441

437442
## Using Azure Arc-enabled OSM
438443

439-
To start using OSM capabilities, you need to first onboard the application namespaces to the service mesh. Download the OSM CLI from [OSM GitHub releases page](https://github.com/openservicemesh/osm/releases/). Once the namespaces are added to the mesh, you can configure the SMI policies to achieve the desired OSM capability.
444+
To start using OSM capabilities, you need to first onboard the application namespaces to the service mesh. Download the OSM CLI from the [OSM GitHub releases page](https://github.com/openservicemesh/osm/releases/). Once the namespaces are added to the mesh, you can configure the SMI policies to achieve the desired OSM capability.
440445

441446
### Onboard namespaces to the service mesh
442447

@@ -445,18 +450,19 @@ Add namespaces to the mesh by running the following command:
445450
```azurecli-interactive
446451
osm namespace add <namespace_name>
447452
```
453+
448454
Namespaces can be onboarded from Azure portal as well by selecting **+Add** in the cluster's Open Service Mesh section.
449455

450456
[![+Add button located on top of the Open Service Mesh section](media/tutorial-arc-enabled-open-service-mesh/osm-portal-add-namespace.jpg)](media/tutorial-arc-enabled-open-service-mesh/osm-portal-add-namespace.jpg#lightbox)
451457

452-
More information about onboarding services can be found [here](https://docs.openservicemesh.io/docs/guides/app_onboarding/#onboard-services).
458+
For more information about onboarding services, see the [Open Service Mesh documentation](https://docs.openservicemesh.io/docs/guides/app_onboarding/#onboard-services).
453459

454460
### Configure OSM with Service Mesh Interface (SMI) policies
455461

456462
You can start with a [sample application](https://docs.openservicemesh.io/docs/getting_started/install_apps/) or use your test environment to try out SMI policies.
457463

458464
> [!NOTE]
459-
> If you are using a sample applications, ensure that their versions match the version of the OSM extension installed on your cluster. For example, if you are using v1.0.0 of the OSM extension, use the bookstore manifest from release-v1.0 branch of OSM upstream repository.
465+
> If you use sample applications, ensure that their versions match the version of the OSM extension installed on your cluster. For example, if you are using v1.0.0 of the OSM extension, use the bookstore manifest from release-v1.0 branch of OSM upstream repository.
460466
461467
### Configuring your own Jaeger, Prometheus and Grafana instances
462468

@@ -526,21 +532,23 @@ InsightsMetrics
526532
### Navigating the OSM dashboard
527533

528534
1. Access your Arc connected Kubernetes cluster using this [link](https://aka.ms/azmon/osmux).
529-
2. Go to Azure Monitor and navigate to the Reports tab to access the OSM workbook.
535+
2. Go to Azure Monitor and navigate to the **Reports** tab to access the OSM workbook.
530536
3. Select the time-range & namespace to scope your services.
531537

532538
[![OSM workbook](media/tutorial-arc-enabled-open-service-mesh/osm-workbook.jpg)](media/tutorial-arc-enabled-open-service-mesh/osm-workbook.jpg#lightbox)
533539

534540
#### Requests tab
535541

536-
- This tab shows a summary of all the http requests sent via service to service in OSM.
542+
The **Requests** tab shows a summary of all the http requests sent via service to service in OSM.
543+
537544
- You can view all the services by selecting the service in the grid.
538545
- You can view total requests, request error rate & P90 latency.
539546
- You can drill down to destination and view trends for HTTP error/success code, success rate, pod resource utilization, and latencies at different percentiles.
540547

541548
#### Connections tab
542549

543-
- This tab shows a summary of all the connections between your services in Open Service Mesh.
550+
The **Connections** tab shows a summary of all the connections between your services in Open Service Mesh.
551+
544552
- Outbound connections: total number of connections between Source and destination services.
545553
- Outbound active connections: last count of active connections between source and destination in selected time range.
546554
- Outbound failed connections: total number of failed connections between source and destination service.
@@ -590,17 +598,8 @@ When you use the `az k8s-extension` command to delete the OSM extension, the `ar
590598
> [!NOTE]
591599
> Use the az k8s-extension CLI to uninstall OSM components managed by Arc. Using the OSM CLI to uninstall is not supported by Arc and can result in undesirable behavior.
592600

593-
## Troubleshooting
594-
595-
Refer to the [extension troubleshooting guide](extensions-troubleshooting.md#azure-arc-enabled-open-service-mesh) for help with issues.
596-
597-
## Frequently asked questions
598-
599-
### Is the extension of Azure Arc-enabled OSM zone redundant?
600-
601-
Yes, all components of Azure Arc-enabled OSM are deployed on availability zones and are hence zone redundant.
602-
603601
## Next steps
604602

605-
> **Just want to try things out?**
606-
> Get started quickly with an [Azure Arc Jumpstart](https://aka.ms/arc-jumpstart-osm) scenario using Cluster API.
603+
- Just want to try things out? Get started quickly with an [Azure Arc Jumpstart](https://aka.ms/arc-jumpstart-osm) scenario using Cluster API.
604+
- Get [troubleshooting help for Azure Arc-enabled OSM](extensions-troubleshooting.md#azure-arc-enabled-open-service-mesh).
605+
- - Explore other [extensions for Arc-enabled Kubernetes](extensions-release.md).

articles/azure-monitor/agents/azure-monitor-agent-mma-removal-tool.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ ms.custom:
1010
# Customer intent: As an Azure account administrator, I want to use the available Azure Monitor tools to migrate from Log Analytics Agent to Azure Monitor Agent and track the status of the migration in my account.
1111
---
1212

13-
# MMA Discovery and Removal Tool
13+
# MMA Discovery and Removal Tool (Preview)
1414
After you migrate your machines to AMA, you need to remove the MMA agent to avoid duplication of logs. AzTS MMA Discovery and Removal Utility can centrally remove MMA extension from Azure Virtual Machine (VMs), Azure Virtual Machine Scale Sets and Azure Arc Servers from a tenant.
1515
The utility works in two steps
1616
1. Discovery – First the utility creates an inventory of all machines that have the MMA agents installed. We recommend that no new VMs, Virtual Machine Scale Sets or Azure Arc Servers with MMA extension are created while the utility is running.

articles/azure-netapp-files/configure-customer-managed-keys.md

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -259,12 +259,11 @@ The process to configure a NetApp account with customer-managed keys in the Azur
259259
az netappfiles account update --name <account_name> \
260260
--resource-group <resource_group> \
261261
--identity-type UserAssigned \
262-
--user-identity-id $user-assigned-identity \
263262
--key-source Microsoft.Keyvault \
264263
--key-vault-uri $key_vault_uri \
265264
--key-name <key> \
266265
--keyvault-resource-id <key-vault> \
267-
--user-assigned-identity
266+
--user-assigned-identity $user_assigned_identity
268267
```
269268
270269
### [Azure PowerShell](#tab/azure-powershell)

articles/azure-resource-manager/bicep/file.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -405,7 +405,7 @@ See [Arrays](./data-types.md#arrays) and [Objects](./data-types.md#objects) for
405405
## Known limitations
406406

407407
* No support for the concept of apiProfile, which is used to map a single apiProfile to a set apiVersion for each resource type.
408-
* No support for user-defined functions.
408+
* User-defined functions are not supported at the moment. However, an experimental feature is currently accessible. For more information, see [User-defined functions in Bicep](./user-defined-functions.md).
409409
* Some Bicep features require a corresponding change to the intermediate language (Azure Resource Manager JSON templates). We announce these features as available when all of the required updates have been deployed to global Azure. If you're using a different environment, such as Azure Stack, there may be a delay in the availability of the feature. The Bicep feature is only available when the intermediate language has also been updated in that environment.
410410

411411
## Next steps

0 commit comments

Comments
 (0)