Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

RPS drops when activator not in Path #15663

Open
aqemia-aymeric-alixe opened this issue Dec 27, 2024 · 1 comment
Open

RPS drops when activator not in Path #15663

aqemia-aymeric-alixe opened this issue Dec 27, 2024 · 1 comment
Labels
kind/bug Categorizes issue or PR as related to a bug.

Comments

@aqemia-aymeric-alixe
Copy link

aqemia-aymeric-alixe commented Dec 27, 2024

What version of Knative?

v1.16.0

Expected Behavior

When knative ServerlessService going from proxy to serve, deactivating Activator in path. We expect to improve/keep RPS

Actual Behavior

RPS drops from 149 to 2 when switching to Serve mode.

Steps to Reproduce the Problem

Cluster: k8s 1.30 IPv6

Istio/knative installed using yaml files.
Kserve Serverless on top installed using yaml files

Change on those manifests:

Istio:
Service LoadBalancerType: Tailscale.

We haven't activate istio service mesh. So we do not have any injected istio proxy.

Knative:
config-deployment:

  - progress-deadline="600s"
  - queue-sidecar-cpu-request="6"
  - queue-sidecar-cpu-limit="6"
  - queue-sidecar-memory-request="2G"
  - queue-sidecar-memory-limit="6G"

config-autoscaler:

  - enable-scale-to-zero="true"
  - activator-capacity="100"

config-default:

  - revision-timeout-seconds="600"
  - revision-response-start-timeout-seconds="599"

config-features:

  - kubernetes.podspec-tolerations="enabled"
  - kubernetes.podspec-affinity="enabled"

Service:
We have set the targetBurstCapacity to 0 for debug purpose

autoscaling.knative.dev/class: kpa.autoscaling.knative.dev                                                                                                                                                
autoscaling.knative.dev/min-scale: "1"                                                                                                                                                                    
autoscaling.knative.dev/scale-down-delay: 60s                                                                                                                                                             
autoscaling.knative.dev/targetBurstCapacity: "0"                                                                                                                                                          
autoscaling.knative.dev/targetUtilizationPercentage: "100"
containerConcurrency: 1

When requesting the service trough istio gateway, we got ~149 RPS when proxy mode (activator in path) and it drops to ~2 RPS when on serve mode (activator not in path)

I can provided more information if you need more, and I am willing to help to debug/fix.

We might have missed something in the configuration. I think it can be more of configuration problem on our side ?

@aqemia-aymeric-alixe aqemia-aymeric-alixe added the kind/bug Categorizes issue or PR as related to a bug. label Dec 27, 2024
@aqemia-aymeric-alixe aqemia-aymeric-alixe changed the title RQPS drops when activator not in Path RPS drops when activator not in Path Dec 27, 2024
@skonto
Copy link
Contributor

skonto commented Jan 7, 2025

Hi @aqemia-aymeric-alixe, I assume here that you are hitting this app via the tailscale ingress, do you see the same issue if you hit the app within the cluster (via app_name.namespace.svc), wondering if it takes time for the ingress to catch up with networking configuration? Does the RPS ever improve or stays low?
Could you check the activator metrics to see if during proxy to serve mode transition there are queued requests?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/bug Categorizes issue or PR as related to a bug.
Projects
None yet
Development

No branches or pull requests

2 participants