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

Load Test for demo scenario for >10k Clusters #18

Closed
26 of 27 tasks
ruanxin opened this issue May 5, 2022 · 3 comments
Closed
26 of 27 tasks

Load Test for demo scenario for >10k Clusters #18

ruanxin opened this issue May 5, 2022 · 3 comments
Assignees

Comments

@ruanxin
Copy link
Contributor

ruanxin commented May 5, 2022

Implement a demo load test scenario, verify if the load test setup works as expected.

This task mainly have three parts:

1. Load test script

  • Written as k6 script, a demo can be found here: https://github.com/ruanxin/performance-test/blob/main/load_generator.js
    • Load test the remote watching: watch resources on X remote clusters and ensure the reported customer changes are properly tracked and considered by the Kyma Operator.
    • TBC - done by PB already?: Implement test case to measure the amount of maximal watchable resources until K8s starts to deliver not all change events anymore => sync with @ebensom about limitations SREs wre already facing in their setup

2. Target Cluster under testing

  • Provision 2 Gardener clusters, one as control plane, one as skr cluster
  • Deploy prometheus-operator into control plane cluster
  • Create a grafana dashboard, with some demo panel to monitor some predefined metrics
  • Create a helm chart to define a dummy resource which simulate the behavior of resources defined in kyma components
  • Deploy kyma-operator, manifest-operator into control plane cluster
  • Deploy skr-operator into skr cluster which manage the reconciliation of target resources
  • Config a remote OCI registery to save component descriptor files
  • Run load test against control plane cluster, target 10000 kyma with 200000 modules
    • 10% of the modules should be kcp modules NO kcp modules planned for Phase 1

3. Conclusion

  • Present measuring / results to team => point out identified threshold

4. Findings and followup issue

Notes

  • Rewrite manifest-operator to overwrite deployed helm chart resource name with kyma CR name as suffix
    • operator/internal/pkg/prepare/deploy.go:106
    • make sure the overwritten name is an unique identifier
  • Load test should not run until listener, watcher integrated
@tobiscr
Copy link
Contributor

tobiscr commented Sep 8, 2022

Depends on kyma-project/runtime-watcher#70

@tobiscr
Copy link
Contributor

tobiscr commented Sep 29, 2022

Waiting for #200

@tobiscr tobiscr changed the title POC: Load Test for demo scenario, integrated into prow pipeline as periodical job Load Test for demo scenario, integrated into prow pipeline as periodical job Oct 14, 2022
@jakobmoellerdev jakobmoellerdev self-assigned this Oct 18, 2022
@jakobmoellerdev jakobmoellerdev changed the title Load Test for demo scenario, integrated into prow pipeline as periodical job Load Test for demo scenario for >10k Clusters Oct 27, 2022
@jakobmoellerdev
Copy link
Contributor

Closing as only minor follow-ups need to be closed main round of load tests are considered complete

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants