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
In this article, you learn how to work with agent pools in a Nexus Kubernetes cluster. Agent pools serve as groups of nodes with the same configuration and play a key role in managing your applications.
15
15
16
16
Nexus Kubernetes clusters offer two types of agent pools.
17
-
* System agent pools are designed for hosting critical system pods like CoreDNS and metrics-server.
18
-
* User agent pools are designed for hosting your application pods.
19
17
20
-
Application pods can be scheduled on system node pools if you wish to only have one pool in your Kubernetes cluster. Nexus Kubernetes cluster must have an initial agent pool that includes at least one system node pool with at least one node.
18
+
* System agent pools are designed for hosting critical system pods like CoreDNS and metrics-server.
19
+
* User agent pools are designed for hosting your application pods.
20
+
21
+
Application pods can be scheduled on system agent pools if you wish to only have one pool in your Kubernetes cluster. Nexus Kubernetes cluster must have an initial agent pool that includes at least one system agent pool with at least one node.
21
22
22
23
## Prerequisites
23
24
24
25
Before proceeding with this how-to guide, it's recommended that you:
25
26
26
-
* Refer to the Nexus Kubernetes cluster [QuickStart guide](./quickstarts-kubernetes-cluster-deployment-bicep.md) for a comprehensive overview and steps involved.
27
-
* Ensure that you meet the outlined prerequisites to ensure smooth implementation of the guide.
27
+
* Refer to the Nexus Kubernetes cluster [QuickStart guide](./quickstarts-kubernetes-cluster-deployment-bicep.md) for a comprehensive overview and steps involved.
28
+
* Ensure that you meet the outlined prerequisites to ensure smooth implementation of the guide.
28
29
29
30
## Limitations
30
-
* You can delete system node pools, provided you have another system node pool to take its place in the Nexus Kubernetes cluster.
31
-
* System pools must contain at least one node.
32
-
* You can't change the VM size of a node pool after you create it.
33
-
* Each Nexus Kubernetes cluster requires at least one system node pool.
34
-
* Don't run application workloads on Kubernetes control plane nodes, as they're designed only for managing the cluster, and doing so can harm its performance and stability.
31
+
32
+
* You can delete system agent pools, provided you have another system agent pool to take its place in the Nexus Kubernetes cluster.
33
+
* System pools must contain at least one node.
34
+
* You can't change the VM size of a agent pool after you create it.
35
+
* Each Nexus Kubernetes cluster requires at least one system agent pool.
36
+
* Don't run application workloads on Kubernetes control plane nodes, as they're designed only for managing the cluster, and doing so can harm its performance and stability.
35
37
36
38
## System pool
37
-
For a system node pool, Nexus Kubernetes automatically assigns the label `kubernetes.azure.com/mode: system` to its nodes. This label causes Nexus Kubernetes to prefer scheduling system pods on node pools that contain this label. This label doesn't prevent you from scheduling application pods on system node pools. However, we recommend you isolate critical system pods from your application pods to prevent misconfigured or rogue application pods from accidentally killing system pods.
38
39
39
-
You can enforce this behavior by creating a dedicated system node pool. Use the `CriticalAddonsOnly=true:NoSchedule` taint to prevent application pods from being scheduled on system node pools. If you intend to use the system pool for application pods (not dedicated), don't apply any application specific taints to the pool, as applying such taints can lead to cluster creation failures.
40
+
For a system agent pool, Nexus Kubernetes automatically assigns the label `kubernetes.azure.com/mode: system` to its nodes. This label causes Nexus Kubernetes to prefer scheduling system pods on agent pools that contain this label. This label doesn't prevent you from scheduling application pods on system agent pools. However, we recommend you isolate critical system pods from your application pods to prevent misconfigured or rogue application pods from accidentally killing system pods.
41
+
42
+
You can enforce this behavior by creating a dedicated system agent pool. Use the `CriticalAddonsOnly=true:NoSchedule` taint to prevent application pods from being scheduled on system agent pools. If you intend to use the system pool for application pods (not dedicated), don't apply any application specific taints to the pool, as applying such taints can lead to cluster creation failures.
40
43
41
44
> [!IMPORTANT]
42
-
> If you run a single system node pool for your Nexus Kubernetes cluster in a production environment, we recommend you use at least three nodes for the node pool.
45
+
> If you run a single system agent pool for your Nexus Kubernetes cluster in a production environment, we recommend you use at least three nodes for the agent pool.
43
46
44
47
## User pool
45
48
@@ -49,6 +52,6 @@ The user pool, on the other hand, is designed for your applications. This dedica
49
52
50
53
Choosing how to utilize your system pool and user pool depends largely on your specific requirements and use case. Both dedicated and shared methods offer unique advantages. Dedicated pools can isolate workloads and provide guaranteed resources, while shared pools can optimize resource usage across the cluster.
51
54
52
-
Always consider your cluster's resource capacity, the nature of your workloads, and the required level of resiliency when making your decision. By managing and understanding these node pools effectively, you can optimize your Nexus Kubernetes cluster to best fit your operational needs.
55
+
Always consider your cluster's resource capacity, the nature of your workloads, and the required level of resiliency when making your decision. By managing and understanding these agent pools effectively, you can optimize your Nexus Kubernetes cluster to best fit your operational needs.
53
56
54
57
Refer to the [QuickStart guide](./quickstarts-kubernetes-cluster-deployment-bicep.md#add-an-agent-pool) to add new agent pools and experiment with configurations in your Nexus Kubernetes cluster.
0 commit comments