This third version of Kraken represents one more step towards a load testing solution suitable to teams and enterprises. Kraken can already be installed on your own Kubernetes cluster thanks to Helm charts: You own all data and can handle the security inhouse.
But until now it was lacking users management, making it cumbersome to use it for a team of performance testers. This point is now addressed in the version 3.0 thanks to Keycloak.
User Management With KeyCloak
KeyCloak is an Open Source Identity and Access Management solution.
Among the many features of Keycloak include :
- User Registration
- Social login
- Single Sign-On/Sign-Off across all applications belonging to the same Realm
- 2-factor authentication
- LDAP integration
- Kerberos broker
- multitenancy with per-realm customizeable skin
KeyCloak is deployed alongside Kraken backend to handle users registrations and login.
Grafana and InfluxDB users are also created for each user registering to Kraken. KeyCloak is configured to send events to the Kraken backend and stores metadata on each user.
Several Oauth clients are used in the KeyCloak Kraken realm to handle:
- The authentication flow from the two frontends Gatling and Administration with
- The backend security with
- The authentication from the started containers (used when executing tasks such as running a load test) with
In case you need to execute load tests from a CI environment, Kraken can be managed directly using the REST API.
The swagger documentation now lets you connect before making HTTP calls:
Online Demonstration SaaS
A SaaS version of Kraken is now available at https://kraken.octoperf.com/project/ for Demonstration purpose.
You can freely create an account there and check the capabilities of Kraken without installing it. Our Gatling tutorials scripts are directly available after you register allowing you to get started with Gatling easily:
- Gatling - Getting Started with Simulation Scripts,
- Gatling - Simulation Scripts Parameterization,
- Gatling - Loops, Conditions and Pauses,
Be warned thought that it is a demonstration environment: there is no backup of the data, and it is erased periodically.
The administration application allows the Kraken platform administrator to manage the tasks configuration and available hosts to execute them.
This application has been improved to allow the administrator to easily add/remove Kubernetes nodes to the set of available hosts:
The Kraken administrator can also set the memory and cpu limits for task executions.
The list of available hosts for task execution has been improved to display the memory and CPU available on each corresponding node:
What’s Next? A Roadmap Overview
After some minor improvements and bug fixes with the 3.0.1, Kraken will evolve further towards and enterprise grade solution with:
- A Git integration for the versioning of load testing scripts,
- An architectural refactor to allow the High Availability of the platform,
User groups might also be implemented. The usefulness of such a feature is still to be discussed as it will be possible to share Gatling simulation scripts through Git and Grafana already allows you to share load testing reports with other users.