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: articles/aks/azure-nfs-volume.md
+13-17Lines changed: 13 additions & 17 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,29 +4,29 @@ titleSuffix: Azure Kubernetes Service
4
4
description: Learn how to manually create an Ubuntu Linux NFS Server persistent volume for use with pods in Azure Kubernetes Service (AKS)
5
5
author: ozboms
6
6
ms.topic: article
7
-
ms.date: 06/13/2022
7
+
ms.date: 01/24/2024
8
8
ms.author: obboms
9
9
---
10
10
11
11
# Manually create and use a Linux NFS (Network File System) Server with Azure Kubernetes Service (AKS)
12
12
13
-
Sharing data between containers is often a necessary component of container-based services and applications. You usually have various pods that need access to the same information on an external persistent volume. While Azure Files is an option, creating an NFS Server on an Azure VM is another form of persistent shared storage.
13
+
Sharing data between containers is often a necessary component of container-based services and applications. You usually have various pods that need access to the same information on an external persistent volume. While [Azure Files][azure-files-overview] is an option, creating an NFS Server on an Azure VM is another form of persistent shared storage.
14
14
15
15
This article will show you how to create an NFS Server on an Azure Ubuntu virtual machine, and set up your AKS cluster with access to this shared file system as a persistent volume.
16
16
17
17
## Before you begin
18
18
19
-
This article assumes that you have the following components and configuration to support this configuration:
19
+
This article assumes that you have the following to support this configuration:
20
20
21
-
* 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].
21
+
* An existing AKS cluster. If you don't have an AKS cluster, for guidance on a designing an enterprise-scale implementation of AKS, see [Plan your AKS design][plan-aks-design].
22
22
* Your AKS cluster needs to be on the same or peered Azure virtual network (VNet) as the NFS Server. The cluster must be created on an existing VNet, which can be the same VNet as your NFS Server VM. The steps for configuring with an existing VNet are described in the following articles: [creating AKS Cluster in existing VNET][aks-virtual-network] and [connecting virtual networks with VNET peering][peer-virtual-networks].
23
23
* An Azure Ubuntu [Linux virtual machine][azure-linux-vm] running version 18.04 or later. To deploy a Linux VM on Azure, see [Create and manage Linux VMs][linux-create].
24
24
25
-
If you deploy your AKS cluster first, Azure automatically populates the virtual network settings when deploying your Azure Ubuntu VM, associating the Ubuntu VM on the same VNet. But if you want to work with peered networks instead, consult the documentation above.
25
+
If you deploy your AKS cluster first, Azure automatically populates the virtual network settings when deploying your Azure Ubuntu VM, associating the Ubuntu VM on the same VNet. If you want to work with peered networks instead, consult the documentation above.
26
26
27
27
## Deploying the NFS Server onto a virtual machine
28
28
29
-
1. To deploy an NFS Server on the Azure Ubuntu virtual machine, copy the following Bash script and save it to your local machine. Replace the value for the variable **AKS_SUBNET** with the correct one from your AKS cluster or else the default value specified opens your NFS Server to all ports and connections. In this article, the file is named `nfs-server-setup.sh`.
29
+
1. To deploy an NFS Server on the Azure Ubuntu virtual machine, copy the following Bash script and save it to your local machine. Replace the value for the variable **AKS_SUBNET** with the correct one from your AKS cluster, otherwise the default value specified opens your NFS Server to all ports and connections. In this article, the file is named `nfs-server-setup.sh`.
30
30
31
31
```bash
32
32
#!/bin/bash
@@ -92,11 +92,11 @@ If you deploy your AKS cluster first, Azure automatically populates the virtual
92
92
93
93
## Connecting AKS cluster to NFS Server
94
94
95
-
You can connect the NFS Server to your AKS cluster by provisioning a persistent volume and persistent volume claim that specifies how to access the volume. Connecting the two resources in the same or peered virtual networks is necessary. To learn how to set up the cluster in the same VNet, see: [Creating AKS Cluster in existing VNet][aks-virtual-network].
95
+
You can connect to the NFS Server from your AKS cluster by provisioning a persistent volume and persistent volume claim that specifies how to access the volume. Connecting the two resources in the same or peered virtual networks is necessary. To learn how to set up the cluster in the same VNet, see: [Creating AKS Cluster in existing VNet][aks-virtual-network].
96
96
97
-
Once both resources are on the same virtual or peered VNet, next provision a persistent volume and a persistent volume claim in your AKS Cluster. The containers can then mount the NFS drive to their local directory.
97
+
Once both resources are on the same virtual or peered VNet, provision a persistent volume and a persistent volume claim in your AKS Cluster. The containers can then mount the NFS drive to their local directory.
98
98
99
-
1. Create a *pv-azurefilesnfs.yaml* file with a *PersistentVolume*. For example:
99
+
1. Create a YAML manifest named *pv-azurefilesnfs.yaml* with a *PersistentVolume*. For example:
100
100
101
101
```yaml
102
102
apiVersion: v1
@@ -117,7 +117,7 @@ Once both resources are on the same virtual or peered VNet, next provision a per
117
117
118
118
Replace the values for**NFS_INTERNAL_IP**, **NFS_NAME** and **NFS_EXPORT_FILE_PATH** with the actual settings from your NFS Server.
119
119
120
-
2. Create a *pvc-azurefilesnfs.yaml* file with a *PersistentVolumeClaim* that uses the *PersistentVolume*. For example:
120
+
2. Create a YAML manifest named *pvc-azurefilesnfs.yaml* with a *PersistentVolumeClaim* that uses the *PersistentVolume*. For example:
121
121
122
122
>[!IMPORTANT]
123
123
>**storageClassName** value needs to remain an empty string or the claim won't work.
@@ -145,7 +145,7 @@ Once both resources are on the same virtual or peered VNet, next provision a per
145
145
146
146
If you can't connect to the server from your AKS cluster, the issue might be the exported directory or its parent, doesn't have sufficient permissions to access the NFS Server VM.
147
147
148
-
Check that both your export directory and its parent directory have 777 permissions.
148
+
Check that both your export directory and its parent directory are granted 777 permissions.
149
149
150
150
You can check permissions by running the following command and the directories should have *'drwxrwxrwx'* permissions:
151
151
@@ -159,17 +159,13 @@ ls -l
159
159
* To learn more on setting up your NFS Server or to help debug issues, see the following tutorial from the Ubuntu community [NFS Tutorial][nfs-tutorial]
description: Learn how to snapshot AKS cluster node pools and create clusters and node pools from a snapshot.
4
4
ms.topic: how-to
5
5
ms.custom: devx-track-azurecli
6
-
ms.date: 06/05/2023
6
+
ms.date: 01/29/2024
7
7
ms.author: allensu
8
8
author: asudbring
9
9
---
@@ -18,7 +18,7 @@ The snapshot is an Azure resource that contains the configuration information fr
18
18
19
19
## Before you begin
20
20
21
-
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].
21
+
This article assumes that you have an existing AKS cluster. If you don't have an AKS cluster, for guidance on a designing an enterprise-scale implementation of AKS, see [Plan your AKS design][plan-aks-design].
22
22
23
23
### Limitations
24
24
@@ -103,9 +103,7 @@ az aks create --name myAKSCluster2 --resource-group myResourceGroup --snapshot-i
103
103
- Learn more about multiple node pools with [Create multiple node pools][use-multiple-node-pools].
Copy file name to clipboardExpand all lines: articles/aks/planned-maintenance.md
+11-9Lines changed: 11 additions & 9 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -5,36 +5,40 @@ titleSuffix: Azure Kubernetes Service
5
5
description: Learn how to use Planned Maintenance to schedule and control cluster and node image upgrades in Azure Kubernetes Service (AKS).
6
6
ms.topic: article
7
7
ms.custom: devx-track-azurecli
8
-
ms.date: 01/26/2024
8
+
ms.date: 01/29/2024
9
9
ms.author: nickoman
10
10
author: nickomang
11
11
---
12
12
13
13
# Use Planned Maintenance to schedule and control upgrades for your Azure Kubernetes Service (AKS) cluster
14
14
15
-
Your AKS cluster has regular maintenance performed on it automatically. There are two types of regular maintenance - AKS initiated and those that you initiate. Planned Maintenance feature allows you to run both types of maintenance in a cadence of your choice thereby minimizing any workload impact.
15
+
Your AKS cluster has regular maintenance performed on it automatically. There are two types of regular maintenance - AKS initiated and those that you initiate. Planned Maintenance feature allows you to run both types of maintenance in a cadence of your choice, thereby minimizing any workload impact.
16
16
17
17
AKS initiated maintenance refers to the AKS releases. These releases are weekly rounds of fixes and feature and component updates that affect your clusters. The type of maintenance that you initiate regularly are [cluster auto-upgrades][aks-upgrade] and [Node OS automatic security updates][node-image-auto-upgrade].
18
18
19
-
There are currently three available configuration types: `default`, `aksManagedAutoUpgradeSchedule`, `aksManagedNodeOSUpgradeSchedule`:
19
+
This article describes the maintenance options availble and how to configure a maintenance schedule for your AKS clusters.
20
+
21
+
## Overview
22
+
23
+
There are currently three available maintenance schedule configuration types: `default`, `aksManagedAutoUpgradeSchedule`, `aksManagedNodeOSUpgradeSchedule`:
20
24
21
25
-`default` corresponds to a basic configuration that is used to control AKS releases, these releases can take up to two weeks to roll out to all regions from the initial time of shipping due to Azure Safe Deployment Practices (SDP). Choose `default` to schedule these updates in such a way that it's least disruptive for you. You can monitor the status of an ongoing AKS release by region from the [weekly releases tracker][release-tracker].
22
26
23
27
-`aksManagedAutoUpgradeSchedule` controls when cluster upgrades scheduled by your designated auto-upgrade channel are performed. More finely controlled cadence and recurrence settings are possible than in a `default` configuration. For more information on cluster auto-upgrade, see [Automatically upgrade an Azure Kubernetes Service (AKS) cluster][aks-upgrade].
24
28
25
29
-`aksManagedNodeOSUpgradeSchedule` controls when the node operating system security patching scheduled by your node OS auto-upgrade channel are performed. More finely controlled cadence and recurrence settings are possible than in a `default configuration. For more information on node OS auto-upgrade channel, see [Automatically patch and update AKS cluster node images][node-image-auto-upgrade]
26
30
27
-
We recommend using `aksManagedAutoUpgradeSchedule` for all cluster upgrade scenarios and `aksManagedNodeOSUpgradeSchedule` for all node OS security patching scenarios, while`default` is meant exclusively for the AKS weekly releases. You can port `default`configurations to the `aksManagedAutoUpgradeSchedule` or `aksManagedNodeOSUpgradeSchedule` configurations via the `az aks maintenanceconfiguration update` command.
31
+
We recommend using `aksManagedAutoUpgradeSchedule` for all cluster upgrade scenarios and `aksManagedNodeOSUpgradeSchedule` for all node OS security patching scenarios. The`default`option is meant exclusively for AKS weekly releases. You can switch the `default`configuration to the `aksManagedAutoUpgradeSchedule` or `aksManagedNodeOSUpgradeSchedule` configurations using the `az aks maintenanceconfiguration update` command.
28
32
29
33
## Before you begin
30
34
31
-
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].
35
+
This article assumes that you have an existing AKS cluster. If you don't have an AKS cluster, for guidance on a designing an enterprise-scale implementation of AKS, see [Plan your AKS design][plan-aks-design].
32
36
33
37
Be sure to upgrade Azure CLI to the latest version using [`az upgrade`](/cli/azure/update-azure-cli#manual-update).
34
38
35
39
## Creating a maintenance window
36
40
37
-
To create a maintenance window, you can use the `az aks maintenanceconfiguration add` command using the `--name` value `default`, `aksManagedAutoUpgradeSchedule`, or `aksManagedNodeOSUpgradeSchedule`. The name value should reflect the desired configuration type. Using any other name causes your maintenance window not to run.
41
+
To create a maintenance window, you can use the `az aks maintenanceconfiguration add` command using the `--name` value `default`, `aksManagedAutoUpgradeSchedule`, or `aksManagedNodeOSUpgradeSchedule`. The name value should reflect the desired configuration type. Using any other name prevents your maintenance window from running.
38
42
39
43
> [!NOTE]
40
44
> When using auto-upgrade, to ensure proper functionality, use a maintenance window with a duration of four hours or more.
@@ -328,9 +332,7 @@ az aks maintenanceconfiguration delete -g myResourceGroup --cluster-name myAKSCl
328
332
- To get started with upgrading your AKS cluster, see [Upgrade an AKS cluster][aks-upgrade]
Copy file name to clipboardExpand all lines: articles/aks/scale-down-mode.md
+2-4Lines changed: 2 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -21,7 +21,7 @@ When an Azure VM is in the `Stopped` (deallocated) state, you will not be charge
21
21
> In order to preserve any deallocated VMs, you must set Scale-down Mode to Deallocate. That includes VMs that have been deallocated using IaaS APIs (Virtual Machine Scale Set APIs). Setting Scale-down Mode to Delete will remove any deallocate VMs.
22
22
> Once applied the deallocated mode and scale down operation occurred, those nodes keep registered in APIserver and appear as NotReady state.
23
23
24
-
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].
24
+
This article assumes that you have an existing AKS cluster. If you don't have an AKS cluster, for guidance on a designing an enterprise-scale implementation of AKS, see [Plan your AKS design][plan-aks-design].
25
25
26
26
### Limitations
27
27
@@ -79,9 +79,7 @@ az aks nodepool add --enable-cluster-autoscaler --min-count 1 --max-count 10 --m
79
79
- To learn more about the cluster autoscaler, see [Automatically scale a cluster to meet application demands on AKS][cluster-autoscaler]
Copy file name to clipboardExpand all lines: articles/azure-arc/resource-bridge/system-requirements.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -175,7 +175,7 @@ By default, these files are generated in the current CLI directory when `createc
175
175
176
176
### Kubeconfig
177
177
178
-
The appliance VM hosts a management Kubernetes cluster. The kubeconfig is a low-privilege Kubernetes configuration file that is used to maintain the appliance VM. By default, it's generated in the current CLI directory when the `deploy` command completes. The kubeconfig should be saved in a secure location to the management machine, because it's required for maintaining the appliance VM.
178
+
The appliance VM hosts a management Kubernetes cluster. The kubeconfig is a low-privilege Kubernetes configuration file that is used to maintain the appliance VM. By default, it's generated in the current CLI directory when the `deploy` command completes. The kubeconfig should be saved in a secure location on the management machine, because it's required for maintaining the appliance VM. If the kubeconfig is lost, it can be retrieved by running the `az arcappliance get-credentials` command.
Copy file name to clipboardExpand all lines: articles/azure-arc/servers/ssh-arc-troubleshoot.md
+9Lines changed: 9 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -120,6 +120,15 @@ Resolution:
120
120
- Confirm success by running ```az provider show -n Microsoft.HybridConnectivity```, verify that `registrationState` is set to `Registered`
121
121
- Restart the hybrid agent on the Arc-enabled server
122
122
123
+
### Cannot connect after updating CLI tool and Arc agent
124
+
125
+
This issue occurs when the updated command creates a new service configuration before the Arc agent is updated. This will only impact Azure Arc versions older than 1.31 when updating to a version 1.31 or newer. Error:
126
+
127
+
- Connection closed by UNKNOWN port 65535
128
+
129
+
Resolution:
130
+
131
+
- Delete the existing service configuration and allow it to be re-created by the CLI command at the next connection. Run ```az rest --method delete --uri https://management.azure.com/subscriptions/<SUB_ID>/resourceGroups/<RG_NAME>/providers/Microsoft.HybridCompute/machines/<VM_NAME>/providers/Microsoft.HybridConnectivity/endpoints/default/serviceconfigurations/SSH?api-version=2023-03-15```
0 commit comments