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/use-multiple-node-pools.md
+14-12Lines changed: 14 additions & 12 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -27,7 +27,7 @@ The following limitations apply when you create and manage AKS clusters that sup
27
27
* See [Quotas, virtual machine size restrictions, and region availability in Azure Kubernetes Service (AKS)][quotas-skus-regions].
28
28
* You can delete system node pools, provided you have another system node pool to take its place in the AKS cluster.
29
29
* System pools must contain at least one node, and user node pools may contain zero or more nodes.
30
-
* The AKS cluster must use the Standard SKU load balancer to use multiple node pools, the feature is not supported with Basic SKU load balancers.
30
+
* The AKS cluster must use the Standard SKU load balancer to use multiple node pools, the feature isn't supported with Basic SKU load balancers.
31
31
* The AKS cluster must use virtual machine scale sets for the nodes.
32
32
* You can't change the VM size of a node pool after you create it.
33
33
* The name of a node pool may only contain lowercase alphanumeric characters and must begin with a lowercase letter. For Linux node pools the length must be between 1 and 12 characters, for Windows node pools the length must be between 1 and 6 characters.
@@ -129,8 +129,9 @@ A workload may require splitting a cluster's nodes into separate pools for logic
129
129
* All subnets assigned to nodepools must belong to the same virtual network.
130
130
* System pods must have access to all nodes/pods in the cluster to provide critical functionality such as DNS resolution and tunneling kubectl logs/exec/port-forward proxy.
131
131
* If you expand your VNET after creating the cluster you must update your cluster (perform any managed cluster operation but node pool operations don't count) before adding a subnet outside the original cidr. AKS will error out on the agent pool add now though we originally allowed it. If you don't know how to reconcile your cluster file a support ticket.
132
-
* Azure Network Policy is not supported.
133
-
* Kube-proxy is designed for a single contiguous CIDR and optimizes rules based on that value. When using multiple non-contiguous ranges, these optimizations cannot occur. See this [K.E.P.](https://github.com/kubernetes/enhancements/tree/master/keps/sig-network/2450-Remove-knowledge-of-pod-cluster-CIDR-from-iptables-rules) and the documentation for the [`--cluster-cidr``kube-proxy` argument](https://kubernetes.io/docs/reference/command-line-tools-reference/kube-proxy/) for more details. In clusters configured with Azure CNI, `kube-proxy` will be configured with the subnet of the first node pool at cluster creation.
132
+
* In clusters with Kubernetes version < 1.23.3, kube-proxy will SNAT traffic from new subnets, which can cause Azure Network Policy to drop the packets.
133
+
* Windows nodes will SNAT traffic to the new subnets until the nodepool is reimaged.
134
+
* Internal load balancers default to one of the node pool subnets (usually the first subnet of the node pool at cluster creation). To override this behavior, you can [specify the load balancer's subnet explicitly using an annotation][internal-lb-different-subnet].
134
135
135
136
To create a node pool with a dedicated subnet, pass the subnet resource ID as an additional parameter when creating a node pool.
136
137
@@ -234,12 +235,12 @@ The valid Kubernetes upgrades for a cluster's control plane and node pools are v
234
235
* Rules for valid versions to upgrade node pools:
235
236
* The node pool version must have the same *major* version as the control plane.
236
237
* The node pool *minor* version must be within two *minor* versions of the control plane version.
237
-
* The node pool version cannot be greater than the control `major.minor.patch` version.
238
+
* The node pool version can't be greater than the control `major.minor.patch` version.
238
239
239
240
* Rules for submitting an upgrade operation:
240
-
* You cannot downgrade the control plane or a node pool Kubernetes version.
241
-
* If a node pool Kubernetes version is not specified, behavior depends on the client being used. Declaration in Resource Manager templates falls back to the existing version defined for the node pool if used, if none is set the control plane version is used to fall back on.
242
-
* You can either upgrade or scale a control plane or a node pool at a given time, you cannot submit multiple operations on a single control plane or node pool resource simultaneously.
241
+
* You can't downgrade the control plane or a node pool Kubernetes version.
242
+
* If a node pool Kubernetes version isn't specified, behavior depends on the client being used. Declaration in Resource Manager templates falls back to the existing version defined for the node pool if used, if none is set the control plane version is used to fall back on.
243
+
* You can either upgrade or scale a control plane or a node pool at a given time, you can't submit multiple operations on a single control plane or node pool resource simultaneously.
243
244
244
245
## Scale a node pool manually
245
246
@@ -360,7 +361,7 @@ Associating a node pool with an existing capacity reservation group can be done
360
361
```azurecli-interactive
361
362
az aks nodepool add -g MyRG --cluster-name MyMC -n myAP --capacityReservationGroup myCRG
362
363
```
363
-
Associating a system node pool with an existing capacity reservation group can be done using [az aks create][az-aks-create] command. If the capacity reservation group specified does not exist, then a warning is issued and the cluster gets created without any capacity reservation group association.
364
+
Associating a system node pool with an existing capacity reservation group can be done using [az aks create][az-aks-create] command. If the capacity reservation group specified doesn't exist, then a warning is issued and the cluster gets created without any capacity reservation group association.
364
365
365
366
```azurecli-interactive
366
367
az aks create -g MyRG --cluster-name MyMC --capacityReservationGroup myCRG
@@ -562,7 +563,7 @@ FIPS-enabled node pools have the following limitations:
562
563
* Currently, you can only have FIPS-enabled Linux-based node pools running on Ubuntu 18.04.
563
564
* FIPS-enabled node pools require Kubernetes version 1.19 and greater.
564
565
* To update the underlying packages or modules used for FIPS, you must use [Node Image Upgrade][node-image-upgrade].
565
-
* Container Images on the FIPS nodes have not been assessed for FIPS compliance.
566
+
* Container Images on the FIPS nodes haven't been assessed for FIPS compliance.
566
567
567
568
> [!IMPORTANT]
568
569
> The FIPS-enabled Linux image is a different image than the default Linux image used for Linux-based node pools. To enable FIPS on a node pool, you must create a new Linux-based node pool. You can't enable FIPS on existing node pools.
@@ -588,7 +589,7 @@ To verify your node pool is FIPS-enabled, use [az aks show][az-aks-show] to chec
588
589
az aks show --resource-group myResourceGroup --cluster-name myAKSCluster --query="agentPoolProfiles[].{Name:name enableFips:enableFips}" -o table
589
590
```
590
591
591
-
The following example output shows the *fipsnp* node pool is FIPS-enabled and *nodepool1* is not.
592
+
The following example output shows the *fipsnp* node pool is FIPS-enabled and *nodepool1* isn't.
592
593
593
594
```output
594
595
Name enableFips
@@ -702,7 +703,7 @@ Edit these values as need to update, add, or delete node pools as needed:
702
703
}
703
704
```
704
705
705
-
Deploy this template using the [az deployment group create][az-deployment-group-create] command, as shown in the following example. You are prompted for the existing AKS cluster name and location:
706
+
Deploy this template using the [az deployment group create][az-deployment-group-create] command, as shown in the following example. You're prompted for the existing AKS cluster name and location:
706
707
707
708
```azurecli-interactive
708
709
az deployment group create \
@@ -733,7 +734,7 @@ It may take a few minutes to update your AKS cluster depending on the node pool
733
734
734
735
## Assign a public IP per node for your node pools
735
736
736
-
AKS nodes do not require their own public IP addresses for communication. However, scenarios may require nodes in a node pool to receive their own dedicated public IP addresses. A common scenario is for gaming workloads, where a console needs to make a direct connection to a cloud virtual machine to minimize hops. This scenario can be achieved on AKS by using Node Public IP.
737
+
AKS nodes don't require their own public IP addresses for communication. However, scenarios may require nodes in a node pool to receive their own dedicated public IP addresses. A common scenario is for gaming workloads, where a console needs to make a direct connection to a cloud virtual machine to minimize hops. This scenario can be achieved on AKS by using Node Public IP.
737
738
738
739
First, create a new resource group.
739
740
@@ -877,3 +878,4 @@ Use [proximity placement groups][reduce-latency-ppg] to reduce latency for your
Copy file name to clipboardExpand all lines: articles/app-service/includes/quickstart-python/create-app-cli.md
+61-1Lines changed: 61 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,6 +4,66 @@ ms.author: charris
4
4
ms.topic: include
5
5
ms.date: 04/01/2022
6
6
---
7
-
Azure CLI has a command `az webapp up` that will create the necessary resources and deploy your application in a single step. You don't need to create the resources separately so you can move on to [**Step 3 - Deploy your application code to Azure**](#3---deploy-your-application-code-to-azure) and select the _Deploy using Azure CLI_ tab.
7
+
Azure CLI commands can be run in the [Azure Cloud Shell](https://shell.azure.com) or on a workstation with the [Azure CLI installed](/cli/azure/install-azure-cli).
8
+
9
+
Azure CLI has a command `az webapp up` that will create the necessary resources and deploy your application in a single step.
10
+
11
+
#### [bash](#tab/terminal-bash)
12
+
13
+
Create the webapp and other resources, then deploy your code to Azure using [az webapp up](/cli/azure/webapp#az-webapp-up).
Create the webapp and other resources, then deploy your code to Azure using [az webapp up](/cli/azure/webapp#az-webapp-up).
25
+
26
+
```azurecli
27
+
az webapp up `
28
+
--runtime 'PYTHON:3.9' `
29
+
--sku B1 `
30
+
--logs
31
+
```
8
32
9
33
---
34
+
35
+
* The `--runtime` parameter specifies what version of Python your app is running. This example uses Python 3.9. To list all available runtimes, use the command `az webapp list-runtimes --os linux --output table`.
36
+
* The `--sku` parameter defines the size (CPU, memory) and cost of the app service plan. This example uses the B1 (Basic) service plan, which will incur a small cost in your Azure subscription. For a full list of App Service plans, view the [App Service pricing](https://azure.microsoft.com/pricing/details/app-service/linux/) page.
37
+
* The `--logs` flag configures default logging required to enable viewing the log stream immediately after launching the webapp.
38
+
* You can optionally specify a name with the argument `--name <app-name>`. If you don't provide one, then a name will be automatically generated.
39
+
* You can optionally include the argument `--location <location-name>` where `<location_name>` is an available Azure region. You can retrieve a list of allowable regions for your Azure account by running the [`az account list-locations`](/cli/azure/appservice#az-appservice-list-locations) command.
40
+
41
+
The command may take a few minutes to complete. While the command is running, it provides messages about creating the resource group, the App Service plan, and the app resource, configuring logging, and doing ZIP deployment. It then gives the message, "You can launch the app at http://<app-name>.azurewebsites.net", which is the app's URL on Azure.
Copy file name to clipboardExpand all lines: articles/app-service/includes/quickstart-python/create-app-service-visual-studio-code-3.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
@@ -2,8 +2,6 @@
2
2
author: DavidCBerry13
3
3
ms.author: daberry
4
4
ms.topic: include
5
-
ms.date: 01/29/2022
5
+
ms.date: 04/30/2022
6
6
---
7
-
In the dialog box at the top of the screen, enter the name *msdocs-python-webapp-quickstart-XYZ* for this web app, where *XYZ* is any three unique characters.<br>
8
-
<br>
9
-
When deployed, this name is used in the DNS name of the app in the form `https://<app-name>.azurewebsites.net`.
7
+
Select **msdocs-python-flask-webapp-quickstart** as the folder to deploy.
Copy file name to clipboardExpand all lines: articles/app-service/includes/quickstart-python/create-app-service-visual-studio-code-5.md
+3-3Lines changed: 3 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -2,8 +2,8 @@
2
2
author: DavidCBerry13
3
3
ms.author: daberry
4
4
ms.topic: include
5
-
ms.date: 01/29/2022
5
+
ms.date: 04/30/2022
6
6
---
7
-
Select the App Service plan (pricing tier) for this web app. The App Service plan controls how many resources (CPU/memory) are available to your app and how much you pay.<br>
7
+
Enter the name *msdocs-python-webapp-quickstart-XYZ*for this web app, where *XYZ* is any three unique characters.<br>
8
8
<br>
9
-
For this example, select the **Basic (B1)** pricing tier. This plan will incur a small charge against your Azure subscription but is recommended for better performance over the Free (F1) tier.
9
+
When deployed, this name is used as your app name in the form `https://<app-name>.azurewebsites.net`.
Select the App Service plan (pricing tier) for this web app. The App Service plan controls how many resources (CPU/memory) are available to your app and how much you pay.<br>
8
+
<br>
9
+
For this example, select the **Basic (B1)** pricing tier. This plan will incur a small charge against your Azure subscription but is recommended for better performance over the Free (F1) tier.
0 commit comments