capsule icon indicating copy to clipboard operation
capsule copied to clipboard

Define a benchmark for performances

Open bsctl opened this issue 4 years ago • 6 comments

We should define a benchmark for performances and tests in different stress conditions.

For example:

  • how many tenants
  • how many namespaces/tenants
  • how many concurrent users
  • how many requests

bsctl avatar Dec 01 '20 08:12 bsctl

Could you elaborate a bit more? Because, at first glance, I'd say it's a matter of Kubernetes limits, here :)

Especially for:

  • tenants
  • namespaces/tenants
  • concurrent users

Regarding requests, I'd say it depends on the resources assigned to Capsule, since we got the webhook server there.

prometherion avatar Dec 01 '20 22:12 prometherion

We have to provide a benchmark to the adopters. If most of limits are matter of Kubernetes, let's just to document it. It would be nice to have a performance test suite, not part of this code base.

bsctl avatar Dec 02 '20 18:12 bsctl

I'd say #150 could help here: my plan is to scrape metrics and perform some massive fuzz activities in order to track down the requested reconciliation time, as well as any other metric that can help us define the benchmark.

I'd just say something regarding the maximum amount of resources, as Tenants or Namespaces: this is strictly related to Kubernetes itself, and more specifically, to etcd. We're storing the CRDs definitions into it, so we don't have any hard limit since it's something out of our boundaries.

prometherion avatar Dec 08 '20 08:12 prometherion

@ptx96 is it possible to use your experience on #300 to provide a benchmark for Capsule performances?

bsctl avatar Jul 19 '21 15:07 bsctl

@ptx96 please take care of defining PrometheusRule for the Alert Manager. Aims is to inform the cluster admin about possible critical issues about Capsule, for example:

apiVersion: monitoring.coreos.com/v1
kind: PrometheusRule
metadata:
  name: capsule
spec:
  groups:
  - name: capsule-failures
    rules:
    - alert: CapsuleFailures
      annotations:
        message: Capsule reconcile takes too long ....
      expr:
      for: 15m
      labels:
        severity: warning

bsctl avatar Aug 13 '21 09:08 bsctl