You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: AKS-Hybrid/aks-edge-concept-networking.md
+3Lines changed: 3 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -48,6 +48,9 @@ If AKS Edge Essentials is deployed using a single machine cluster or a scalable
48
48
|**Static MAC Address**| Supported using the `MacAddress` parameter. | Supported using the `MacAddress` parameter. |
49
49
|**Maximum transmission unit (MTU)**| Supported using the `MTU` parameter. | Supported using the `MTU` parameter. |
50
50
51
+
> [!IMPORTANT]
52
+
> The Kubernetes `pod cidr` is `10.42.0.0/16` for K3s and `10.244.0.0/24` for K8s. The Kubernetes `service cidr` is `10.43.0.0/16` for K3s and `10.96.0.0/12` for K8s.
53
+
51
54
## Single machine cluster
52
55
53
56
Single machine deployments use an internal virtual switch to manage the networking. This type of deployment must have a Linux node; a Windows node is optional. The following diagram shows a single machine deployment architecture using internal virtual switch:
Copy file name to clipboardExpand all lines: AKS-Hybrid/aks-edge-howto-connect-to-arc.md
+18-18Lines changed: 18 additions & 18 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,21 +4,21 @@ description: Connect your AKS Edge Essentials clusters to Arc
4
4
author: rcheeran
5
5
ms.author: rcheeran
6
6
ms.topic: how-to
7
-
ms.date: 08/21/2024
7
+
ms.date: 09/27/2024
8
8
ms.custom: template-how-to
9
9
---
10
10
11
11
# Connect your AKS Edge Essentials cluster to Arc
12
12
13
-
This article describes how to connect your AKS Edge Essentials cluster to [Azure Arc](/azure/azure-arc/kubernetes/overview) so that you can monitor the health of your cluster on the Azure portal. If your cluster is connected to a proxy, you can use the scripts provided in the GitHub repo to connect your cluster to Arc [as described here.](./aks-edge-howto-more-configs.md)
13
+
This article describes how to connect your AKS Edge Essentials cluster to [Azure Arc](/azure/azure-arc/kubernetes/overview) so that you can monitor the health of your cluster on the Azure portal. If your cluster is connected to a proxy, you can use the scripts provided in the GitHub repo to connect your cluster to Arc [as described here](./aks-edge-howto-more-configs.md).
14
14
15
15
## Prerequisites
16
16
17
-
In addition to these prerequisites, be sure to meet all [network requirements for Azure Arc-enabled Kubernetes](/azure/azure-arc/kubernetes/network-requirements).
18
-
19
-
- You need an Azure subscription with either the **Owner** role or a combination of **Contributor** and **User Access Administrator** roles. You can check your access level by navigating to your subscription on the Azure portal, selecting **Access control (IAM)** on the left-hand side of the Azure portal, and then selecting **View my access**. See [the Azure documentation](/azure/azure-resource-manager/management/manage-resource-groups-portal)for more information about managing resource groups.
20
-
-Enable all required resource providers in the Azure subscription, such as **Microsoft.HybridCompute**, **Microsoft.GuestConfiguration**, **Microsoft.HybridConnectivity**, **Microsoft.Kubernetes**, **Microsoft.ExtendedLocation**, and **Microsoft.KubernetesConfiguration**.
21
-
-Create and verify a resource group for AKS Edge Essentials Azure resources.
17
+
- Before connecting to Arc, infrastructure administrators who are the owner or contributor role of the subscription will have to:
18
+
1. Enable all required resource providers in the Azure subscription, such as **Microsoft.HybridCompute**, **Microsoft.GuestConfiguration**, **Microsoft.HybridConnectivity**, **Microsoft.Kubernetes**, **Microsoft.ExtendedLocation**, and **Microsoft.KubernetesConfiguration**.
19
+
1. Create and verify a resource group for AKS Edge Essentials Azure resources.
20
+
-To connect to Arc, Kubernetes operators need a [**Kubernetes Cluster - Azure Arc Onboarding**](/azure/role-based-access-control/built-in-roles/containers#kubernetes-cluster---azure-arc-onboarding) role for the identity at the resource group level. To disconnect from Arc, operators need an [**Azure Kubernetes Service Arc Contributor Role**](/azure/role-based-access-control/built-in-roles/containers#azure-kubernetes-service-arc-contributor-role) role for the identity at the resource group level. To check your access level, navigate to your subscription on the Azure portal, select **Access control (IAM)** on the left-hand side, and then select **View my access**. See [the Azure documentation](/azure/azure-resource-manager/management/manage-resource-groups-portal) for more information about managing resource groups. Infrastructure administrators with owner or contributor roles can also perform actions to connect or disconnect from Arc.
21
+
-In addition to these prerequisites, make sure you meet all [network requirements for Azure Arc-enabled Kubernetes](/azure/azure-arc/kubernetes/network-requirements).
22
22
23
23
> [!NOTE]
24
24
> You need the **Contributor** role to be able to delete the resources within the resource group. Commands to disconnect from Arc will fail without this role assignment.
@@ -29,7 +29,7 @@ In addition to these prerequisites, be sure to meet all [network requirements fo
29
29
30
30
Run the following commands in an elevated PowerShell window to install the dependencies in PowerShell:
@@ -41,21 +41,21 @@ Provide details of your Azure subscription in the [**aksedge-config.json**](http
41
41
42
42
> [!IMPORTANT]
43
43
> Client secrets are a form of password. Proper management is critical to the security of your environment.
44
-
> * When you create the client secret, set a very short expiration time, based on the registration timing and scope for your deployment.
45
-
> * Be sure to protect the client secret value and the configuration file from general access.
46
-
> * Consider that if a cluster's configuration file is backed up while it has the client secret stored, the client secret is available to anyone with access to the backup.
47
-
> * Once you register a cluster, remove the client secret from the configuration file for that cluster.
48
-
> * Once you register all clusters in scope for your task, you should rotate the client secret and/or delete the service principal from your Microsoft Entra ID environment.
44
+
> - When you create the client secret, set a very short expiration time, based on the registration timing and scope for your deployment.
45
+
> - Be sure to protect the client secret value and the configuration file from general access.
46
+
> - Consider that if a cluster's configuration file is backed up while it has the client secret stored, the client secret is available to anyone with access to the backup.
47
+
> - Once you register a cluster, remove the client secret from the configuration file for that cluster.
48
+
> - Once you register all clusters in scope for your task, you should rotate the client secret and/or delete the service principal from your Microsoft Entra ID environment.
49
49
50
50
| Attribute | Value type | Description |
51
51
| :------------ |:-----------|:--------|
52
-
|`ClusterName`| string |Provide a name for your cluster. The default value is `hostname_cluster`. |
52
+
|`ClusterName`| string |The name of your cluster. The default value is `hostname_cluster`. |
53
53
|`Location`| string | The location of your resource group. Choose the location closest to your deployment. |
54
54
|`SubscriptionId`| GUID | Your subscription ID. In the Azure portal, select the subscription you're using and copy/paste the subscription ID string into the JSON. |
55
-
|`TenantId`| GUID | Your tenant ID. In the Azure portal, search Microsoft Entra ID, which should take you to the **Default Directory** page. From here, you can copy/paste the tenant ID string into the JSON. |
55
+
|`TenantId`| GUID | Your tenant ID. In the Azure portal, search **Microsoft Entra ID**, which should take you to the **Default Directory** page. From here, you can copy/paste the tenant ID string into the JSON. |
56
56
|`ResourceGroupName`| string | The name of the Azure resource group to host your Azure resources for AKS Edge Essentials. You can use an existing resource group, or if you add a new name, the system creates one for you. |
57
-
|`ClientId`| GUID | Provide the application ID of the Azure service principal to use as credentials. AKS Edge Essentials uses this service principal to connect your cluster to Arc. You can use the **App Registrations** page in the Microsoft Entra resource page on the Azure portal, to list and manage the service principals in a tenant. Be aware that the service principal requires the **Kubernetes Cluster - Azure Arc Onboarding** role at either the subscription or resource group level. For more information, see [Microsoft Entra identity requirements for service principals](/azure/azure-arc/kubernetes/system-requirements#microsoft-entra-identity-requirements). |
58
-
|`ClientSecret`| string |Provide the password for the service principal. |
57
+
|`ClientId`| GUID | Provide the application ID of the Azure service principal to use as credentials. AKS Edge Essentials uses this service principal to connect your cluster to Arc. You can use the **App Registrations** page in the Microsoft Entra resource page on the Azure portal to list and manage the service principals in a tenant. Be aware that the service principal requires the **Kubernetes Cluster - Azure Arc Onboarding** role at either the subscription or resource group level. For more information, see [Microsoft Entra identity requirements for service principals](/azure/azure-arc/kubernetes/system-requirements#microsoft-entra-identity-requirements). |
58
+
|`ClientSecret`| string |The password for the service principal. |
59
59
60
60
> [!NOTE]
61
61
> You only need to perform this configuration once per Azure subscription. You don't need to repeat the procedure for each Kubernetes cluster.
> This step can take up to 10 minutes and PowerShell may become stuck on **Establishing Azure Connected Kubernetes for `your cluster name`**. PowerShell outputs `True` and returns to the prompt when the process is complete.
73
+
> This step can take up to 10 minutes and PowerShell might become stuck on **Establishing Azure Connected Kubernetes for `your cluster name`**. PowerShell outputs `True` and returns to the prompt when the process is complete.
74
74
75
75
:::image type="content" source="media/aks-edge/aks-edge-ps-arc-connection.png" alt-text="Screenshot showing PowerShell prompt while connecting to Arc." lightbox="media/aks-edge/aks-edge-ps-arc-connection.png":::
Copy file name to clipboardExpand all lines: AKS-Hybrid/aks-edge-howto-multi-node-deployment.md
+4Lines changed: 4 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -48,6 +48,10 @@ The key parameters to note for a scalable Kubernetes deployment are:
48
48
:::image type="content" source="media/aks-edge/hyper-v-external-switch.png" alt-text="Screenshot of Hyper-V switch manager." lightbox="media/aks-edge/hyper-v-external-switch.png":::
49
49
50
50
- **IP addresses**: You must allocate free IP addresses from your network for the **Control Plane**, **Kubernetes services**, and **Nodes (VMs)**. See the [AKS Edge Essentials networking overview](./aks-edge-concept-networking.md) for more details. For example, in a local network with the 192.168.1.0/24 IP address range, you might have 1.151 and above outside of the DHCP scope, and therefore are likely to be free. AKS Edge Essentials currently supports IPv4 addresses only. Ideally, you will know what free IP addresses you can use; however, you can use the [AksEdge-ListUsedIPv4s](https://github.com/Azure/AKS-Edge/blob/main/tools/scripts/network/AksEdge-ListUsedIPv4s.ps1) script from the [GitHub repo](https://github.com/Azure/AKS-Edge) to view IPs that are currently in use, to avoid using those IP addresses in your configuration. The following parameters will need to be provided in the `Network` section of the configuration file: `ControlPlaneEndpointIp`, `Ip4GatewayAddress`, `Ip4PrefixLength`, `ServiceIPRangeSize`, `ServiceIPRangeStart`, and `DnsServers`.
51
+
52
+
> [!IMPORTANT]
53
+
> The Kubernetes `pod cidr` is `10.42.0.0/16` for K3s and `10.244.0.0/24` for K8s. The Kubernetes `service cidr` is `10.43.0.0/16` for K3s and `10.96.0.0/12` for K8s.
54
+
51
55
- The `Network.NetworkPlugin` value by default is `flannel`. Flannel is the default CNI for a K3S cluster. In a K8S cluster, change the `NetworkPlugin` to `calico`.
52
56
- In addition to the previous parameters, you can set the following parameters according to your deployment configuration, [as described here](aks-edge-deployment-config-json.md): `LinuxNode.CpuCount`, `LinuxNode.MemoryInMB`, `LinuxNode.DataSizeInGB`, `LinuxNode.Ip4Address`, `WindowsNode.CpuCount`, `WindowsNode.MemoryInMB`, `WindowsNode.Ip4Address`, `Init.ServiceIPRangeSize`, and `Network.InternetDisabled`.
| Windows node files |[aka.ms/aks-edge/windows-node-zip](https://aka.ms/aks-edge/windows-node-zip)|
37
38
38
39
1. In addition to the MSI, Microsoft provides samples and tools that you can download from the [AKS Edge GitHub repo](https://github.com/Azure/AKS-Edge). Navigate to the **Code** tab and click the **Download Zip** button to download the repository as a **.zip** file. Extract the GitHub **.zip** file to a local folder.
39
40
1. Before you install, make sure you uninstall any private preview installations and reboot your system before proceeding.
> The Kubernetes `pod cidr` is `10.42.0.0/16` for K3s and `10.244.0.0/24` for K8s. The Kubernetes `service cidr` is `10.43.0.0/16` for K3s and `10.96.0.0/12` for K8s.
47
+
45
48
## Step 3: validate your cluster
46
49
47
50
Confirm that the deployment was successful by running:
0 commit comments