Skip to content

Commit 3f6471e

Browse files
committed
More articles
1 parent caa1f95 commit 3f6471e

6 files changed

+28
-27
lines changed

AKS-Arc/concepts-security-access-identity.md

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -121,7 +121,7 @@ With this feature, you not only give users permissions to the AKS resource acros
121121

122122
## Microsoft Entra integration
123123

124-
Enhance your AKS cluster security with Microsoft Entra integration. Built on enterprise identity management experience, Microsoft Entra ID is a multitenant, cloud-based directory and identity management service that combines core directory services, application access management, and identity protection. With Microsoft Entra ID, you can integrate on-premises identities into AKS clusters to provide a single source for account management and security.
124+
Microsoft Entra integration can help to enhance your AKS cluster security. Built on enterprise identity management experience, Microsoft Entra ID is a multitenant, cloud-based directory and identity management service that combines core directory services, application access management, and identity protection. With Microsoft Entra ID, you can integrate on-premises identities into AKS clusters to provide a single source for account management and security.
125125

126126
:::image type="content" source="media/concepts-security-access-identity/entra-integration.png" alt-text="Flowchart showing Entra integration." lightbox="media/concepts-security-access-identity/entra-integration.png":::
127127

@@ -143,7 +143,6 @@ The following table contains a summary of how users can authenticate to Kubernet
143143
3. Run `kubectl` commands.
144144
- The first command can trigger browser-based authentication to authenticate to the Kubernetes cluster, as described in the following table.
145145

146-
147146
| Description | Role grant required | Cluster admin Microsoft Entra groups | When to use |
148147
| ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ |
149148
| Admin login using client certificate | [Azure Kubernetes Service Arc Cluster Admin Role](/azure/role-based-access-control/built-in-roles/containers#azure-kubernetes-service-arc-cluster-admin-role). This role allows `az aksarc get-credentials` to be used with the `--admin` flag, which downloads a non-Microsoft Entra cluster admin certificate into the user's **.kube/config**. This is the only purpose of the Azure Kubernetes Admin role. | n/a | If you're permanently blocked by not having access to a valid Microsoft Entra group with access to your cluster. |

AKS-Arc/create-kubernetes-cluster.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ title: Quickstart to create a local Kubernetes cluster using Windows Admin Cente
33
description: Learn how to create a local Kubernetes cluster using Windows Admin Center
44
author: sethmanheim
55
ms.topic: quickstart
6-
ms.date: 12/27/2023
6+
ms.date: 07/03/2025
77
ms.author: sethm
88
ms.lastreviewed: 1/14/2022
99
ms.reviewer: dawhite

AKS-Arc/deploy-load-balancer-cli.md

Lines changed: 19 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ title: Create a MetalLB load balancer using the Azure CLI
33
description: Learn how to deploy extension for MetalLB for Azure Arc enabled Kubernetes clusters
44
ms.topic: how-to
55
ms.custom: devx-track-azurecli
6-
ms.date: 04/02/2024
6+
ms.date: 07/03/2025
77
author: sethmanheim
88
ms.author: sethm
99
ms.reviewer: xinyuhe
@@ -14,13 +14,13 @@ ms.lastreviewed: 04/02/2024
1414

1515
[!INCLUDE [hci-applies-to-23h2](includes/hci-applies-to-23h2.md)]
1616

17-
The main purpose of a load balancer is to distribute traffic across multiple nodes in a Kubernetes cluster. This can help prevent downtime and improve overall performance of applications. AKS enabled by Azure Arc supports creating [MetalLB](https://metallb.universe.tf/) load balancer instance on your Kubernetes cluster using an Arc extension.
17+
The main purpose of a load balancer is to distribute traffic across multiple nodes in a Kubernetes cluster. This can help prevent downtime and improve overall performance of applications. AKS enabled by Azure Arc supports creating a [MetalLB](https://metallb.universe.tf/) load balancer instance on your Kubernetes cluster using an Arc extension.
1818

1919
## Prerequisites
2020

21-
- An Azure Arc enabled Kubernetes cluster with at least one Linux node. You can create a Kubernetes cluster on Azure Local using the [Azure CLI](aks-create-clusters-cli.md) or the [Azure portal](aks-create-clusters-portal.md). AKS on Azure Local clusters are Arc-enabled by default.
22-
- Make sure you have enough IP addresses for the load balancer. For AKS on Azure Local, ensure that the IP addresses reserved for the load balancer do not conflict with the IP addresses in Arc VM logical networks and control plane IPs. For more information about IP address planning and networking in Kubernetes, see [Networking requirements for Kubernetes](aks-hci-network-system-requirements.md) and [IP address planning for Kubernetes](aks-hci-ip-address-planning.md).
23-
- This how-to guide assumes you understand how Metal LB works. For more information, see the [overview for MetalLB for Kubernetes](load-balancer-overview.md).
21+
- An Azure Arc-enabled Kubernetes cluster with at least one Linux node. You can create a Kubernetes cluster on Azure Local using the [Azure CLI](aks-create-clusters-cli.md) or the [Azure portal](aks-create-clusters-portal.md). AKS on Azure Local clusters are Arc-enabled by default.
22+
- Make sure you have enough IP addresses for the load balancer. For AKS on Azure Local, ensure that the IP addresses reserved for the load balancer don't conflict with the IP addresses in Arc VM logical networks and control plane IPs. For more information about IP address planning and networking in Kubernetes, see [Networking requirements for Kubernetes](aks-hci-network-system-requirements.md) and [IP address planning for Kubernetes](aks-hci-ip-address-planning.md).
23+
- This how-to guide assumes you understand how MetalLB works. For more information, see the [overview for MetalLB for Kubernetes](load-balancer-overview.md).
2424

2525
## Install the Azure CLI extension
2626

@@ -34,28 +34,29 @@ az extension add -n k8s-runtime --upgrade
3434

3535
Configure the following variables before proceeding:
3636

37-
| Parameter | Description |
37+
| Parameter | Description |
3838
| ----------------------------- | ------------------------ |
3939
| `$subId` | Azure subscription ID of your Kubernetes cluster. |
4040
| `$rgName` | Azure resource group of your Kubernetes cluster. |
4141
| `$clusterName` | The name of your Kubernetes cluster. |
4242

43-
### Option 1: Enable Arc extension for MetalLB using `az k8s-runtime load-balancer enable` command
43+
### Option 1: Enable Arc extension for MetalLB using `az k8s-runtime load-balancer enable`
4444

45-
To enable the Arc extension for MetalLB using the following command, you must have [Graph permission Application.Read.All](/graph/permissions-reference#applicationreadall). You can check if you have this permission by logging into your Azure subscription, and running the following command:
45+
To enable the Arc extension for MetalLB using the following command, you must have [Graph permission Application.Read.All](/graph/permissions-reference#applicationreadall). You can check if you have this permission by logging into your Azure subscription, and running the following command:
4646

4747
```azurecli
48-
`az ad sp list --filter "appId eq '087fca6e-4606-4d41-b3f6-5ebdf75b8b4c'" --output json`
48+
az ad sp list --filter "appId eq '087fca6e-4606-4d41-b3f6-5ebdf75b8b4c'" --output json
4949
```
50+
5051
If the command fails, contact your Azure tenant administrator to get `Application.Read.All` role.
5152

52-
If you do have the permission, you can use the [`az k8s-runtime load-balancer enable`](/cli/azure/k8s-runtime/load-balancer#az-k8s-runtime-load-balancer-enable) command to install the Arc extension and register the resource provider for your Kubernetes cluster. The `--resource-uri` parameter refers to the resource manager ID of your Kubernetes cluster.
53+
If you do have the permission, you can use the [`az k8s-runtime load-balancer enable`](/cli/azure/k8s-runtime/load-balancer#az-k8s-runtime-load-balancer-enable) command to install the Arc extension and register the resource provider for your Kubernetes cluster. The `--resource-uri` parameter refers to the resource manager ID of your Kubernetes cluster:
5354

5455
```azurecli
5556
az k8s-runtime load-balancer enable --resource-uri subscriptions/$subId/resourceGroups/$rgName/providers/Microsoft.Kubernetes/connectedClusters/$clusterName
5657
```
5758

58-
### Option 2: Enable Arc extension for MetalLB using `az k8s-extension add` command
59+
### Option 2: Enable Arc extension for MetalLB using `az k8s-extension add`
5960

6061
If you don't have [Graph permission Application.Read.All](/graph/permissions-reference#applicationreadall), you can follow these steps:
6162

@@ -72,33 +73,34 @@ az provider show -n Microsoft.KubernetesRuntime -o table
7273
```
7374

7475
Expected output:
76+
7577
```output
7678
Namespace RegistrationPolicy RegistrationState
7779
--------------------------- -------------------- -------------------
7880
Microsoft.KubernetesRuntime RegistrationRequired Registered
7981
```
8082

81-
2. To install the Arc extension for MetalLB, obtain the AppID of the MetalLB extension resource provider, and then run the extension create command. You must run the following commands once per Arc Kubernetes cluster.
83+
1. To install the Arc extension for MetalLB, obtain the AppID of the MetalLB extension resource provider, and then run the extension create command. You must run the following commands once per Arc Kubernetes cluster.
8284

8385
Obtain the Application ID of the Arc extension by running [az ad sp list](/cli/azure/ad/sp#az-ad-sp-list). In order to run the following command, you must be a `user` member of your Azure tenant. For more information about user and guest membership, see [default user permissions in Microsoft Entra ID](/entra/fundamentals/users-default-permissions).
8486

8587
```azurecli
8688
$objID = az ad sp list --filter "appId eq '00001111-aaaa-2222-bbbb-3333cccc4444'" --query "[].id" --output tsv
8789
```
8890

89-
Once you have the $objID, you can install the MetalLB Arc extension on your Kubernetes cluster. To run the below command, you need to have [**Kubernetes extension contributor**](/azure/role-based-access-control/built-in-roles/containers#kubernetes-extension-contributor) role.
91+
Once you have the `objID`, you can install the MetalLB Arc extension on your Kubernetes cluster. To run the following command, you must have the [**Kubernetes extension contributor**](/azure/role-based-access-control/built-in-roles/containers#kubernetes-extension-contributor) role.
9092

9193
```azurecli
9294
az k8s-extension create --cluster-name $clusterName -g $rgName --cluster-type connectedClusters --extension-type microsoft.arcnetworking --config k8sRuntimeFpaObjectId=$objID -n arcnetworking
9395
```
9496

9597
## Deploy MetalLB load balancer on your Kubernetes cluster
9698

97-
You can now create a load balancer for your Kubernetes cluster remotely by running the [`az k8s-runtime load-balancer create`](/cli/azure/k8s-runtime/load-balancer#az-k8s-runtime-load-balancer-create) command. This command creates a custom resource of type `IPAddressPool` in the namespace `kube-system`.
99+
You can now create a load balancer for your Kubernetes cluster remotely by running the [`az k8s-runtime load-balancer create`](/cli/azure/k8s-runtime/load-balancer#az-k8s-runtime-load-balancer-create) command. This command creates a custom resource of type `IPAddressPool` in the namespace `kube-system`.
98100

99101
Configure the following variables before proceeding:
100102

101-
| Parameter | Description |
103+
| Parameter | Description |
102104
| ----------------------------- | ------------------------ |
103105
| `$lbName` | The name of your MetalLB load balancer instance. |
104106
| `$advertiseMode` | The mode for your MetalLB load balancer. Supported values are `ARP`, `BGP`, or `Both`. |
@@ -116,7 +118,7 @@ Create a BGP peer for your Kubernetes cluster remotely by running the [`az k8s-r
116118

117119
Configure the following variables before proceeding:
118120

119-
| Parameter | Description |
121+
| Parameter | Description |
120122
| ----------------------------- | ------------------------ |
121123
| `$peerName` | The name of your BGP peer. |
122124
| `$myASN` | AS number to use for the local end of the session. |
@@ -129,4 +131,4 @@ az k8s-runtime bgp-peer create --bgp-peer-name $peerName --resource-uri subscrip
129131

130132
## Next steps
131133

132-
- [Use GitOps Flux v2 Arc extension to deploy applications on your Kubernetes cluster](/azure/azure-arc/kubernetes/monitor-gitops-flux-2)
134+
[Use GitOps Flux v2 Arc extension to deploy applications on your Kubernetes cluster](/azure/azure-arc/kubernetes/monitor-gitops-flux-2)

AKS-Arc/deploy-load-balancer-portal.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
title: Deploy extension for MetalLB for Azure Arc enabled Kubernetes using the Azure portal
33
description: Learn how to deploy extension for MetalLB for Azure Arc enabled Kubernetes using the Azure portal
44
ms.topic: how-to
5-
ms.date: 04/02/2024
5+
ms.date: 07/03/2025
66
author: sethmanheim
77
ms.author: sethm
88
ms.reviewer: abha
@@ -14,13 +14,13 @@ ms.lastreviewed: 04/02/2024
1414

1515
[!INCLUDE [hci-applies-to-23h2](includes/hci-applies-to-23h2.md)]
1616

17-
The main purpose of a load balancer is to distribute traffic across multiple nodes in a Kubernetes cluster. This can help prevent downtime and improve overall performance of applications. AKS enabled by Azure Arc supports creating [MetalLB](https://metallb.universe.tf/) load balancer instance on your Kubernetes cluster using the **extension for MetalLB for Azure Arc enabled Kubernetes**
17+
The main purpose of a load balancer is to distribute traffic across multiple nodes in a Kubernetes cluster. This can help prevent downtime and improve overall performance of applications. AKS enabled by Azure Arc supports creating a [MetalLB](https://metallb.universe.tf/) load balancer instance on your Kubernetes cluster using the **MetalLB extension for Azure Arc enabled Kubernetes**.
1818

1919
## Prerequisites
2020

2121
- An Azure Arc enabled Kubernetes cluster with at least one Linux node. You can create a Kubernetes cluster on Azure Local using the [Azure CLI](aks-create-clusters-cli.md) or the [Azure portal](aks-create-clusters-portal.md). AKS on Azure Local clusters are Arc enabled by default.
22-
- Make sure you have enough IP addresses for the load balancer. For AKS on Azure Local, ensure that the IP addresses reserved for the load balancer do not conflict with the IP addresses in Arc VM logical networks and control plane IPs. For more information about IP address planning and networking in Kubernetes, see [Networking requirements for Kubernetes](aks-hci-network-system-requirements.md) and [IP address planning for Kubernetes](aks-hci-ip-address-planning.md).
23-
- This how-to guide assumes you understand how Metal LB works. For more information, see the [overview for MetalLB for Kubernetes](load-balancer-overview.md).
22+
- Make sure you have enough IP addresses for the load balancer. For AKS on Azure Local, ensure that the IP addresses reserved for the load balancer don't conflict with the IP addresses in Arc VM logical networks and control plane IPs. For more information about IP address planning and networking in Kubernetes, see [Networking requirements for Kubernetes](aks-hci-network-system-requirements.md) and [IP address planning for Kubernetes](aks-hci-ip-address-planning.md).
23+
- This how-to guide assumes you understand how MetalLB works. For more information, see the [overview for MetalLB for Kubernetes](load-balancer-overview.md).
2424

2525
## Deploy MetalLB load balancer using the Azure Arc extension
2626

@@ -48,7 +48,7 @@ Once the load balancer is successfully created, it's shown in the list as follow
4848
To clean up resources, do the following:
4949

5050
- When one of the load balancers is no longer needed, select the start of the row for the load balancer and select **Delete**. Then select **Yes**.
51-
- When the load balancer service is no longer needed, delete all existing load balancers and then select **Uninstall**. Select **Yes** to uninstall the extension.
51+
- When the load balancer service is no longer needed, delete all existing load balancers and then select **Uninstall**. Select **Yes** to uninstall the MetalLB extension.
5252

5353
## Next steps
5454

AKS-Arc/load-balancer-overview.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,4 +57,4 @@ No, MetalLB can't be reused across AKS Arc clusters. MetalLB lives as pods in a
5757

5858
## Next steps
5959

60-
- [Deploy MetalLB using Azure portal](deploy-load-balancer-portal.md)
60+
[Deploy MetalLB using Azure portal](deploy-load-balancer-portal.md)

AKS-Arc/ssh-connection.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ description: Learn how to use Secure Shell Protocol (SSH) to connect to worker n
44
author: sethmanheim
55
ms.topic: how-to
66
ms.custom: linux-related-content
7-
ms.date: 06/27/2024
7+
ms.date: 07/03/2025
88
ms.author: sethm
99
ms.lastreviewed: 1/14/2022
1010
ms.reviewer: abha

0 commit comments

Comments
 (0)