Skip to content

konstellation-io/kdl-server

Repository files navigation

kdl-server

Konstellation AI Lab, formerly known as kdl-server, is the training server of Konstellation AI.

The main goal of KAI Lab is to provide a user-friendly environment for Data Scientists where they can carry out their experiments. At the same time, it integrates a powerful solution for project management, user environments with GPU capabilities and job management.

Builds

Component Bugs Coverage Maintainability Rating Go report Security
app-api api-report-bugs-badge api-report-coverage-badge api-report-maintain-badge go-report api-report-security-badge
app-ui ui-report-bugs-badge ui-report-coverage-badge ui-report-maintain-badge - ui-report-security-badge
cleaner cleaner-report-bugs-badge cleaner-report-coverage-badge cleaner-report-maintain-badge go-report cleaner-report-security-badge
repo-cloner repo-cloner-report-bugs-badge repo-cloner-report-coverage-badge repo-cloner-report-maintain-badge go-report repo-cloner-report-security-badge

Components

  • app-api: main component of the application, providing API access for other components and managing interactions with MongoDB.
  • app-ui: web application offering the interface for data scientists.
  • cleaner: (DEPRECATED) currently unused, potentially slated for deprecation.
  • project-operator: Kubernetes operator listening to KAI Lab API, on new project creation in the UI, it deploys a project-specific pod with mlflow and filebrowser.
  • repo-cloner: in-house solution that clones all accessible repositories into the user's user-tools pod.
  • user-tools-operator: Kubernetes operator monitoring KAI Lab API, each time a user starts or changes runtime in the UI, this operator deploys a pod with a runtime containers based on selected image.

Compatibility matrix

app: 1.39.0

Driver ↓ / Kubernetes → 1.24 1.25 1.26 1.27 1.28 1.29 1.30 1.31
0.31.2
Driver ↓ / MongoDB → 3.6 4.0 4.2 4.4 5.0 6.0 6.1 7.0 8.0
1.17.1 🟠
Driver ↓ / MinIO → RELEASE.2021 RELEASE.2022 RELEASE.2023 RELEASE.2024
7.0.78

repo-cloner: 0.19.0

Driver ↓ / MongoDB → 3.6 4.0 4.2 4.4 5.0 6.0 6.1 7.0 8.0
1.17.1 🟠

Legend

Symbol Description
Perfect match: all features are supported. Client and server versions have exactly the same features/APIs.
🟠 Forward compatibility: the client will work with the server, but not all new server features are supported. The server has features that the client library cannot use.
Backward compatibility/Not applicable: the client has features that may not be present in the server. Common features will work, but some client APIs might not be available in the server.
- Not tested: this combination has not been verified or is not applicable.

Notes

  • For optimal compatibility, use matching client and server versions (✅)
  • Common APIs between client and server versions will generally work even when marked with 🟠

References

Development

Install our tools and follow the kdlctl guide to deploy your local environment.

GitFlow

We use the GitFlow branching model. Read more about it here.

Documentation

Refer to the docs folder for more information:

Helm Chart

Refer to the kdl-server Helm chart for more information.

Contributing

Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us.

License

This project is licensed under the MIT License - see the LICENSE file for details.