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
4. Check if your buffer is too small for your application and dropping packets by simulating realistic network traffic on your pods.
59
-
5. Check the UDP file using the following `cat` command:
60
+
### Measure incoming UDP traffic
61
+
62
+
To check if your buffer is too small for your application and is dropping packets, start by simulating realistic network traffic on your pods and setting up a debug pod to monitor the incoming traffic. Then, you can use the following commands to measure the incoming UDP traffic:
63
+
64
+
1. Check the UDP file using the following `cat` command:
60
65
61
66
```bash
62
67
cat /proc/net/udp
63
68
```
64
69
65
70
This file shows you the statistics of the current open connections under the `rx_queue` column. It doesn't show historical data.
66
71
67
-
6. Check the snmp file using the following `cat` command:
72
+
2. Check the snmp file using the following `cat` command:
68
73
69
74
```bash
70
75
cat /proc/net/snmp
@@ -82,14 +87,14 @@ If you notice an increase beyond your buffer size in the `rx_queue` or an uptick
82
87
> [!IMPORTANT]
83
88
> Before you proceed, it's important to understand the impact of changing the buffer size. The buffer size tells the system kernel to reserve a certain amount of memory for the socket. More sockets and larger buffers can lead to increased memory reserved for the sockets and less memory available for other resources on the nodes. This can lead to resource starvation if not configured properly.
84
89
85
-
You can change buffer size values on a node pool level during the node pool creation process. The steps in this section show you how to configure a Linux OS and apply the changes to all nodes in the node pool. You can't add this setting to an existing node pool.
90
+
You can change buffer size values on a node pool level during the node pool creation process. The steps in this section show you how to configure your Linux OS and apply the changes to all nodes in the node pool. You can't add this setting to an existing node pool.
86
91
87
92
1. Create a `linuxosconfig.json` file with the following content. You can modify the values based on your application's requirements and node SKU. The minimum value is *212992 bytes*, and the maximum value is *134217728 bytes*.
88
93
89
94
```json
90
95
{
91
96
"sysctls": {
92
-
"netCoreRmemMax": 8000000
97
+
"netCoreRmemMax": 2000000
93
98
}
94
99
}
95
100
```
@@ -100,7 +105,7 @@ You can change buffer size values on a node pool level during the node pool crea
100
105
az aks nodepool add --resource-group $RESOURCE_GROUP --cluster-name $CLUSTER_NAME --name $NODE_POOL_NAME --linux-os-config ./linuxosconfig.json
101
106
```
102
107
103
-
This command sets the maximum UDP buffer size to `8 MB` for each socket on the node. You can adjust the value in the `linuxosconfig.json` file to meet your application's requirements.
108
+
This command sets the maximum UDP buffer size to `2 MB` for each socket on the node. You can adjust the value in the `linuxosconfig.json` file to meet your application's requirements.
104
109
105
110
## Validate the changes
106
111
@@ -118,10 +123,10 @@ Once you apply the new values, you can access your VM to ensure the new values a
0 commit comments