Skip to content

Commit 41c6fb6

Browse files
Merge pull request #15380 from sethmanheim/wk6-24
AKS Arc freshness reviews
2 parents 6a5ff9e + e312657 commit 41c6fb6

10 files changed

+39
-43
lines changed

AKS-Hybrid/ad-sso.md

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ title: Use Active Directory single sign-on for secure connection to Kubernetes A
33
description: Use Active Directory Authentication to securely connect to the API server with SSO credentials
44
author: sethmanheim
55
ms.topic: how-to
6-
ms.date: 02/15/2024
6+
ms.date: 06/24/2024
77
ms.author: sethm
88
ms.lastreviewed: 1/14/2022
99
ms.reviewer: sulahiri
@@ -21,7 +21,7 @@ You can create a secure connection to your Kubernetes API server in AKS enabled
2121

2222
## Overview of AD in AKS enabled by Arc
2323

24-
Without Active Directory authentication, users must rely on a certificate-based _kubeconfig_ file when connecting to the API server via the `kubectl` command. The kubeconfig file contains secrets such as private keys and certificates that need to be carefully distributed, which can be a significant security risk.
24+
Without Active Directory authentication, you must rely on a certificate-based _kubeconfig_ file when you connect to the API server via the `kubectl` command. The **kubeconfig** file contains secrets such as private keys and certificates that need to be carefully distributed, which can be a significant security risk.
2525

2626
As an alternative to using certificate-based kubeconfig, you can use AD SSO credentials as a secure way to connect to the API server. AD integration with AKS Arc lets users on a Windows domain-joined machine connect to the API server via `kubectl` using their SSO credentials. This removes the need to manage and distribute certificate-based kubeconfig files that contain private keys.
2727

@@ -32,7 +32,7 @@ Another security benefit with AD integration is that the users and groups are st
3232
> [!NOTE]
3333
> Currently, AD SSO connectivity is only supported for workload clusters.
3434
35-
This article guides you through the following steps to set up Active Directory as the identity provider and to enable SSO via `kubectl`:
35+
This article guides you through the steps to set up Active Directory as the identity provider and to enable SSO via `kubectl`:
3636

3737
- Create the AD account for the API server, and then create the [keytab](https://web.mit.edu/kerberos/krb5-devel/doc/basic/keytab_def.html) file associated with the account. See [Create AD Auth using the keytab file](#create-ad-auth-using-the-keytab-file) to create the AD account and generate the keytab file.
3838
- Use the [keytab](https://web.mit.edu/kerberos/krb5-devel/doc/basic/keytab_def.html) file to install AD Auth on the Kubernetes cluster. As part of this step, a default role-based access control (RBAC) configuration is automatically created.
@@ -87,21 +87,21 @@ Install-AksHciAdAuth -name mynewcluster1 -keytab .\current.keytab -SPN k8s/apise
8787

8888
If the cluster host isn't domain-joined, use the admin user name or group name in SID format, as shown in the following example.
8989

90-
If using an admin user:
90+
Admin user:
9191

9292
```powershell
9393
Install-AksHciAdAuth -name mynewcluster1 -keytab .\current.keytab -SPN k8s/[email protected] -adminUserSID <User SID>
9494
```
9595

96-
If using an admin group:
96+
Admin group:
9797

9898
```powershell
9999
Install-AksHciAdAuth -name mynewcluster1 -keytab .\current.keytab -SPN k8s/[email protected] -adminGroupSID <Group SID>
100100
```
101101

102102
To find the SID for the user account, see [Determine the user or group security identifier](#determine-the-user-or-group-security-identifier).
103103

104-
Before proceeding to the next steps, make note of the following items:
104+
Before you proceed to the next steps, make note of the following items:
105105

106106
- Make sure the keytab file is named **current.keytab**.
107107
- Replace the SPN that corresponds to your environment.
@@ -154,19 +154,19 @@ You should copy the following three files from the AKS workload cluster to your
154154
155155
### Step 6: Connect to the API server from the client machine
156156
157-
After you've completed the previous steps, use your SSO credentials to sign in to your Windows domain-joined client machine. Open PowerShell, and then attempt to access the API server using `kubectl`. If the operation completes successfully, you have set up AD SSO correctly.
157+
After you complete the previous steps, use your SSO credentials to sign in to your Windows domain-joined client machine. Open PowerShell, and then attempt to access the API server using `kubectl`. If the operation completes successfully, you set up AD SSO correctly.
158158
159159
## Create and update the AD group role binding
160160
161-
As mentioned in Step 2, a default role binding with cluster admin privileges is created for the user and/or the group that was provided during installation. Role binding in Kubernetes defines the access policies for AD groups. This step describes how to use RBAC to create new AD group role bindings in Kubernetes and to edit existing role bindings. For example, the cluster admin may want to grant additional privileges to users by using AD groups (which makes the process more efficient). For more information about RBAC, see [using RBAC authorization](https://kubernetes.io/docs/reference/access-authn-authz/rbac/).
161+
As mentioned in Step 2, a default role binding with cluster admin privileges is created for the user and/or the group that was provided during installation. Role binding in Kubernetes defines the access policies for AD groups. This step describes how to use RBAC to create new AD group role bindings in Kubernetes and to edit existing role bindings. For example, the cluster admin might want to grant additional privileges to users by using AD groups (which makes the process more efficient). For more information about RBAC, see [using RBAC authorization](https://kubernetes.io/docs/reference/access-authn-authz/rbac/).
162162
163163
When you create or edit other AD group RBAC entries, the subject name should have the **microsoft:activedirectory:CONTOSO\group name** prefix. Note that the names must contain a domain name and a prefix that are enclosed by double quotes.
164164
165165
Here are two examples:
166166
167167
### Example 1
168168
169-
```yml
169+
```yaml
170170
apiVersion: rbac.authorization.k8s.io/v1
171171
kind: ClusterRoleBinding
172172
metadata:
@@ -185,7 +185,7 @@ subjects:
185185
186186
The following example shows how to create a custom role and role binding for a [namespace](https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/) with an AD group. In the example, `SREGroup` is a pre-existing group in the Contoso Active Directory. When users are added to the AD group, they're immediately granted privileges.
187187

188-
```yml
188+
```yaml
189189
kind: Role
190190
apiVersion: rbac.authorization.k8s.io/v1
191191
metadata:

AKS-Hybrid/concepts-container-networking.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
title: Container networking concepts
33
description: Learn about container networking in AKS enabled by Azure Arc.
44
ms.topic: conceptual
5-
ms.date: 10/04/2022
5+
ms.date: 06/24/2024
66
ms.author: sethm
77
ms.lastreviewed: 05/31/2022
88
ms.reviewer: mikek
@@ -19,7 +19,7 @@ author: sethmanheim
1919

2020
Application components must work together to process their tasks in a container-based microservices approach. Kubernetes provides resources that enable application communications and allow you to connect to and expose applications internally or externally. You can load balance your applications to build highly available applications.
2121

22-
More complex applications may require configuration of ingress traffic for SSL/TLS termination or routing of multiple components. You may also need to restrict the flow of network traffic into or between pods and nodes for security.
22+
More complex applications might require configuration of ingress traffic for SSL/TLS termination or routing of multiple components. You might also need to restrict the flow of network traffic into or between pods and nodes for security.
2323

2424
This article introduces the core concepts that provide networking to your applications in AKS enabled by Arc:
2525

@@ -119,16 +119,16 @@ Calico supports multiple data planes including: a Linux eBPF data plane, a Linux
119119
> [!IMPORTANT]
120120
> Currently, the default selection is to use Calico in an overlay networking mode. To enable Flannel, use the `-primaryNetworkPlugin` parameter of the [`New-AksHciCluster`](./reference/ps/new-akshcicluster.md) PowerShell command and specify `flannel` as the value. This value cannot be changed after you deploy the cluster, and it applies to both Windows and Linux cluster nodes.
121121
122-
Here's an example:
122+
For example:
123123

124124
```powershell
125125
New-AksHciCluster -name MyCluster -primaryNetworkPlugin 'flannel'
126126
```
127127

128128
## Next steps
129129

130-
This article covers networking concepts for containers in AKS nodes on Azure Stack HCI. For more information on AKS on Azure Stack HCI concepts, see the following articles:
130+
This article covers networking concepts for containers in AKS nodes on Azure Stack HCI. For more information about AKS on Azure Stack HCI concepts, see the following articles:
131131

132132
- [Network concepts for AKS nodes](./concepts-node-networking.md)
133133
- [Clusters and workloads](./kubernetes-concepts.md)
134-
- [Secure traffic between pods using network policies](./calico-networking-policy.md).
134+
- [Secure traffic between pods using network policies](./calico-networking-policy.md)

AKS-Hybrid/concepts-node-networking.md

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
title: Node virtual machine networking in AKS enabled by Azure Arc
33
description: Learn about virtual machine networking in AKS Arc, including static IP and DHCP networking and load balancers.
44
ms.topic: conceptual
5-
ms.date: 10/10/2022
5+
ms.date: 06/24/2024
66
ms.author: sethm
77
ms.lastreviewed: 1/14/2022
88
ms.reviewer: mikek
@@ -16,7 +16,7 @@ author: sethmanheim
1616

1717
[!INCLUDE [applies-to-azure stack-hci-and-windows-server-skus](includes/aks-hci-applies-to-skus/aks-hybrid-applies-to-azure-stack-hci-windows-server-sku.md)]
1818

19-
You can choose between two IP address assignment models for your networking architecture for AKS enabled by Azure Arc. AKS supports [several deployment options](aks-overview.md) for Azure Kubernetes Service (AKS).
19+
You can choose between two IP address assignment models for your networking architecture for AKS enabled by Arc. AKS supports [several deployment options](aks-overview.md) for Azure Kubernetes Service (AKS):
2020

2121
- **Static IP networking**: the virtual network allocates static IP addresses to the Kubernetes cluster API server, Kubernetes nodes, underlying VMs, load balancers, and any Kubernetes services that run on top of the cluster.
2222
- **DHCP networking**: the virtual network allocates dynamic IP addresses to the Kubernetes nodes, underlying VMs, and load balancers using a DHCP server. The Kubernetes cluster API server, and any Kubernetes services you run on top of your cluster, are still allocated static IP addresses.
@@ -49,7 +49,7 @@ This networking model creates a virtual network that allocates IP addresses from
4949
Specify the following parameters while defining a virtual network with static IP configurations:
5050

5151
> [!IMPORTANT]
52-
> This version of AKS does not allow any network configuration changes once the AKS host or the workload cluster is deployed. In order to change the networking settings, you must start fresh by removing the workload cluster(s) and uninstalling AKS.
52+
> This version of AKS does not allow any network configuration changes once the AKS host or the workload cluster is deployed. In order to change the networking settings, you must start fresh by removing the workload clusters and uninstalling AKS.
5353
5454
- Name: The name of your virtual network.
5555
- Address prefix: The IP address prefix to use for your subnet.
@@ -61,17 +61,14 @@ Specify the following parameters while defining a virtual network with static IP
6161
> [!NOTE]
6262
> The VIP pool must be part of the same subnet as the Kubernetes node VM pool.
6363
64-
- vLAN ID: The vLAN ID for the virtual network. If omitted, the virtual network is not tagged.
64+
- vLAN ID: The vLAN ID for the virtual network. If it's omitted, the virtual network is not tagged.
6565

6666
## Virtual network with DHCP networking
6767

6868
This networking model creates a virtual network that allocates IP addresses using DHCP to all objects in the deployment.
6969

7070
You must specify the following parameters while defining a virtual network with static IP configurations:
7171

72-
> [!IMPORTANT]
73-
> In this version of AKS, it is not possible to change the network configuration once the AKS host or the workload cluster are deployed. The only way to change the networking settings is to start fresh by removing the workload cluster(s) and uninstall AKS.
74-
7572
- Name: The name of your virtual network.
7673
- Virtual IP pool: The continuous range of IP addresses to be used for your Kubernetes cluster API server and Kubernetes services.
7774

AKS-Hybrid/concepts-storage.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ title: Concepts - Storage options for applications in AKS enabled by Azure Arc
33
description: Storage options for applications in AKS enabled by Azure Arc.
44
author: sethmanheim
55
ms.topic: conceptual
6-
ms.date: 10/07/2022
6+
ms.date: 06/24/2024
77
ms.author: sethm
88
ms.lastreviewed: 1/14/2022
99
ms.reviewer: abha
@@ -80,7 +80,7 @@ spec:
8080
storage: 5Gi
8181
```
8282
83-
When you create a pod definition, the persistent volume claim is specified to request the desired storage. You also then specify the `volumeMount` for your applications to read and write data. The following example YAML manifest shows how the previous persistent volume claim can be used to mount a volume at `/mnt/aks-hci`:
83+
When you create a pod definition, you specify the persistent volume claim to request the desired storage. You also then specify the `volumeMount` for your applications to read and write data. The following example YAML manifest shows how the previous persistent volume claim can be used to mount a volume at `/mnt/aks-hci`:
8484

8585
```yaml
8686
kind: Pod

AKS-Hybrid/configure-load-balancer.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ title: Create and use load balancer with Azure Kubernetes Service in AKS enabled
33
description: Learn how to create and use load balancer with Azure Kubernetes Service (AKS) in AKS Arc.
44
author: sethmanheim
55
ms.topic: how-to
6-
ms.date: 01/30/2024
6+
ms.date: 06/24/2024
77
ms.author: sethm
88
ms.lastreviewed: 01/30/2024
99
ms.reviewer: rbaziwane
@@ -13,13 +13,13 @@ ms.reviewer: rbaziwane
1313

1414
---
1515

16-
# Create and use load balancer with Azure Kubernetes Service in AKS enabled by Azure Arc
16+
# Create and use load balancer with Azure Kubernetes Service in AKS enabled by Arc
1717

1818
[!INCLUDE [applies-to-azure stack-hci-and-windows-server-skus](includes/aks-hci-applies-to-skus/aks-hybrid-applies-to-azure-stack-hci-windows-server-sku.md)]
1919

20-
This article details how to configure **HAProxy** as your load balancer for a workload cluster in AKS Arc. For custom load balancer integration, see [Create and use a custom load balancer](configure-custom-load-balancer.md).
20+
This article describes how to configure **HAProxy** as your load balancer for a workload cluster in AKS Arc. For custom load balancer integration, see [Create and use a custom load balancer](configure-custom-load-balancer.md).
2121

22-
In AKS enabled by Azure Arc, the load balancer is deployed as a virtual machine (VM) running Linux and **HAProxy + KeepAlive** to provide load balanced services for the workload clusters. AKS load balances requests to the Kubernetes API server, and manages traffic to application services.
22+
In AKS Arc, the load balancer is deployed as a virtual machine (VM) running Linux and **HAProxy + KeepAlive** to provide load balanced services for the workload clusters. AKS load balances requests to the Kubernetes API server, and manages traffic to application services.
2323

2424
## Before you begin
2525

AKS-Hybrid/create-ingress-controller.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ title: Use an ingress controller in AKS enabled by Azure Arc
33
description: Learn how to deploy an ingress controller in Azure Kubernetes Service in AKS enabled by Arc.
44
author: sethmanheim
55
ms.topic: how-to
6-
ms.date: 10/18/2022
6+
ms.date: 06/25/2024
77
ms.author: sethm
88
ms.lastreviewed: 1/14/2022
99
ms.reviewer: EkeleAsonye
@@ -15,7 +15,7 @@ ms.reviewer: EkeleAsonye
1515

1616
An *ingress controller* is a Kubernetes resource that allows external access to services within the Kubernetes cluster. Ingress lets an operator expose a service to external network requests, usually HTTP or HTTPS. You configure access by creating a set of rules that define the inbound connections that reach specific services.
1717

18-
An ingress controller is a piece of software that provides configurable traffic routing for Kubernetes services. Kubernetes ingress resources are used to configure the ingress rules and routes for individual Kubernetes services. By using an ingress controller and ingress rules, you can use a single IP address to route traffic to multiple services in a Kubernetes cluster.
18+
An ingress controller is software that provides configurable traffic routing for Kubernetes services. Kubernetes ingress resources are used to configure the ingress rules and routes for individual Kubernetes services. By using an ingress controller and ingress rules, you can use a single IP address to route traffic to multiple services in a Kubernetes cluster.
1919

2020
After you deploy the controller in your environment, you can then create and deploy the ingress manifest. Currently, you use ingress in AKS Arc by using the NGINX ingress controller. For information about how to install, configure, and use the NGINX ingress controller, see [Installation with Manifests](https://kubernetes.github.io/ingress-nginx/deploy/#azure).
2121

@@ -58,7 +58,7 @@ The `spec` section provides information about what's configured. In this example
5858

5959
## Use ingress to load balance traffic
6060

61-
In the following example, another path is added to the manifest that permits load balancing between different backends of an application. In this example, the operator can split traffic and send it to different service endpoints and deployments based on the path described. Behind each path, is a deployment and a service, which is helpful for endpoints that receive more traffic:
61+
In the following example, another path is added to the manifest that permits load balancing between different backends of an application. In this example, the operator can split traffic and send it to different service endpoints and deployments based on the path described. Behind each path is a deployment and a service, which is helpful for endpoints that receive more traffic:
6262

6363
```yaml
6464
apiVersion: networking.k8s.io/v1

AKS-Hybrid/kubernetes-concepts.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ title: Kubernetes cluster architecture for AKS enabled by Azure Arc
33
description: Learn the basic cluster and workload components of Kubernetes and how they relate to features of AKS enabled by Arc.
44
author: sethmanheim
55
ms.author: sethm
6-
ms.lastreviewed: 01/09/2024
6+
ms.lastreviewed: 06/24/2024
77
ms.reviewer: daschott
88
ms.topic: conceptual
99
ms.date: 05/16/2022

AKS-Hybrid/pricing.md

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
---
22

33
title: Azure Kubernetes Service (AKS) enabled by Azure Arc pricing details
4-
description: Detailed pricing information for AKS enabled by Azure Arc.
4+
description: Learn about detailed pricing information for AKS enabled by Azure Arc.
55
ms.topic: conceptual
66
author: sethmanheim
77
ms.author: sethm
8+
ms.date: 06/24/2024
89
ms.lastreviewed: 05/31/2023
910
ms.reviewer: rbaziwane
10-
ms.date: 10/04/2022
1111

1212
# Intent: As a subscription owner, I want to understand how the AKS Arc service is priced and what I am paying for.
1313
# Keyword: pricing
@@ -65,4 +65,3 @@ If you enable hyper-threading on your physical computer, AKS also enables hyper-
6565
## Next steps
6666

6767
[AKS on Azure Stack HCI pricing details](https://azure.microsoft.com/pricing/details/azure-stack/aks-hci)
68-

AKS-Hybrid/scale-cluster.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
title: Scale an Azure Kubernetes Service cluster
33
description: Learn how to scale the number of nodes in a Kubernetes cluster in AKS enabled by Azure Arc.
44
ms.topic: article
5-
ms.date: 10/19/2022
5+
ms.date: 06/25/2024
66
author: sethmanheim
77
ms.author: sethm
88

0 commit comments

Comments
 (0)