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: content/learning-paths/servers-and-cloud-computing/kedify-http-autoscaling/http-scaling.md
+20-17Lines changed: 20 additions & 17 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -5,23 +5,25 @@ layout: "learningpathall"
5
5
---
6
6
## Overview
7
7
8
-
In this section, you’ll gain hands-on experience with Kedify HTTP autoscaling. You will deploy a small web service, expose it through a standard Kubernetes Ingress, and rely on Kedify’s autowiring to route traffic through its proxy so requests are measured and drive scaling.
8
+
In this section, you’ll gain hands-on experience with Kedify HTTP autoscaling. You will deploy a small web service, expose it through a standard Kubernetes Ingress, and rely on Kedify’s autowiring to route traffic through its proxy so that requests are measured and drive scaling.
9
9
10
-
You will scale a real HTTP app exposed through Kubernetes Ingress using Kedify’s [kedify-http](https://docs.kedify.io/scalers/http-scaler/) scaler. You will deploy a simple application, enable autoscaling with a [ScaledObject](https://keda.sh/docs/latest/concepts/scaling-deployments/), generate load, and observe the system scale out and back in (including scale-to-zero when idle).
10
+
You will scale a real HTTP app exposed through Kubernetes Ingress using [Kedify’s HTTP Scaler](https://docs.kedify.io/scalers/http-scaler/), and then move on to deploy a simple application, enable autoscaling with a scaled object, generate load, and observe the system scale out and back in (including scale-to-zero when idle).
11
+
12
+
For more information, see [Scaling Deployments, StatefulSets & Custom Resources](https://keda.sh/docs/latest/concepts/scaling-deployments/) at the KEDA website.
11
13
12
14
## How it works
13
15
14
-
With ingress autowiring enabled, Kedify automatically routes traffic through its proxy before it reaches your Service/Deployment:
16
+
With ingress autowiring enabled, Kedify automatically routes traffic through its proxy before it reaches your service and deployment:
15
17
16
18
```output
17
19
Ingress → kedify-proxy → Service → Deployment
18
20
```
19
21
20
-
The [Kedify Proxy](https://docs.kedify.io/scalers/http-scaler/#kedify-proxy) gathers request metrics used by the scaler to make decisions.
22
+
The [Kedify proxy](https://docs.kedify.io/scalers/http-scaler/#kedify-proxy) gathers request metrics used by the scaler to make decisions.
21
23
22
24
## Deployment overview
23
25
24
-
There are three main components at play:
26
+
There are three main components involved in the process:
25
27
* For the application deployment and service, there is an HTTP server with a small response delay to simulate work.
26
28
* For ingress, there is a public entry point that is configured using the `application.keda` host.
27
29
* For the ScaledObject, there is a Kedify HTTP scaler using `trafficAutowire: ingress`.
@@ -44,7 +46,7 @@ If your ingress controller service uses a different name or namespace, update th
44
46
45
47
## Deploy the application and configure Ingress
46
48
47
-
Now you will deploy a simple HTTP server and expose it using an Ingress resource. The source code for this application is available on [GitHub](https://github.com/kedify/examples/tree/main/samples/http-server).
49
+
Now you will deploy a simple HTTP server and expose it using an Ingress resource. The source code for this application is available on the [Kedify GitHub repository](https://github.com/kedify/examples/tree/main/samples/http-server).
48
50
49
51
### Deploy the application
50
52
@@ -138,6 +140,7 @@ application 1/1 1 1 3m44s
138
140
```
139
141
140
142
## Test the application
143
+
141
144
Once the application and Ingress are deployed, verify that everything is working correctly by sending a request to the exposed endpoint. Run the following command:
142
145
143
146
```bash
@@ -155,7 +158,7 @@ Connection: keep-alive
155
158
156
159
## Enable autoscaling with Kedify
157
160
158
-
The application is now running. Next, you will enable autoscaling so that it can scale dynamically between 0 and 10 replicas. Kedify ensures that no requests are dropped during scaling. Apply the `ScaledObject` by running the following command:
161
+
The application is now running. Next, you will enable autoscaling so that it can scale dynamically between 0 and 10 replicas. Kedify ensures that no requests are dropped during scaling. Apply the `ScaledObject` by running the following command:
159
162
160
163
```bash
161
164
cat <<'EOF' | kubectl apply -f -
@@ -195,17 +198,17 @@ spec:
195
198
EOF
196
199
```
197
200
198
-
Key Fields explained:
199
-
-`type: kedify-http`— Specifies that Kedify’s HTTP scaler should be used.
200
-
-`hosts`, `pathPrefixes`— Define which requests are monitored for scaling decisions.
201
-
-`service`, `port`— TIdentify the Kubernetes Service and port that will receive the traffic.
202
-
-`scalingMetric: requestRate`and `targetValue: 10` — Scale out when request rate exceeds the target threshold (e.g., 1000 req/s per window, depending on configuration granularity).
201
+
Key fields explained:
202
+
-`type: kedify-http`- specifies that Kedify’s HTTP scaler should be used
203
+
-`hosts`, `pathPrefixes`- define which requests are monitored for scaling decisions
204
+
-`service`, `port`- identify the Kubernetes Service and port that will receive the traffic
205
+
-`scalingMetric: requestRate`, `granularity: 1s`, and `targetValue: "10"` - scale out when sustained request rate exceeds ~10 req/s per replica
203
206
-`minReplicaCount: 0` — Enables scale-to-zero when there is no traffic.
204
207
-`trafficAutowire: ingress` — Automatically wires your Ingress to the Kedify proxy for seamless traffic management.
205
208
206
209
After applying, the `ScaledObject` will appear in the Kedify dashboard (https://dashboard.kedify.io/).
207
210
208
-

211
+

209
212
210
213
## Send traffic and observe scaling
211
214
@@ -219,8 +222,8 @@ To confirm that the application has scaled down, run the following command and w
219
222
watch kubectl get deployment application -n default
220
223
```
221
224
222
-
You should see similar output:
223
-
```bash
225
+
You should output similar to:
226
+
```output
224
227
Every 2,0s: kubectl get deployment application -n default
225
228
226
229
NAME READY UP-TO-DATE AVAILABLE AGE
@@ -267,7 +270,7 @@ Expected behavior:
267
270
268
271
You can also monitor traffic and scaling in the Kedify dashboard:

271
274
272
275
## Clean up
273
276
@@ -283,4 +286,4 @@ This will delete the `ScaledObject`, Ingress, Service, and Deployment associated
283
286
284
287
## Next steps
285
288
286
-
To go futher, you can explore the Kedify [How-to guides](https://docs.kedify.io/how-to/) for more configurations such as Gateway API, Istio VirtualService, or OpenShift Routes.
289
+
To go further, you can explore the Kedify [How-to guides](https://docs.kedify.io/how-to/) for more configurations such as Gateway API, Istio VirtualService, or OpenShift Routes.
Copy file name to clipboardExpand all lines: content/learning-paths/servers-and-cloud-computing/kedify-http-autoscaling/install-kedify-helm.md
+2-2Lines changed: 2 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -5,9 +5,9 @@ layout: "learningpathall"
5
5
---
6
6
7
7
## Overview
8
-
In this section, you install Kedify on your Kubernetes cluster using Helm. You will add the Kedify chart repository, install KEDA (Kedify build), the HTTP Scaler, and the Kedify Agent, then verify the installation. This enables HTTP autoscaling on Kubernetes with KEDA and Kedify, including arm64 nodes.
8
+
In this section, you will install Kedify on your Kubernetes cluster using Helm. You will add the Kedify chart repository, install KEDA (Kedify build), the HTTP Scaler, and the Kedify Agent. You will then verify the installation. This enables HTTP autoscaling on Kubernetes with KEDA and Kedify, including arm64 nodes.
9
9
10
-
For more information and other installation methods on Arm, see the [Kedify installation docs](https://docs.kedify.io/installation/helm#installation-on-arm).
10
+
For more information and other installation methods on Arm, see the [Kedify installation documentation](https://docs.kedify.io/installation/helm#installation-on-arm).
0 commit comments