Skip to content
This repository was archived by the owner on Apr 9, 2025. It is now read-only.
This repository was archived by the owner on Apr 9, 2025. It is now read-only.

Integration of ROCK images into Seldon Core Operator #133

Description

@i-chvets

Description

Integration of ROCK images.
https://github.com/canonical/seldonio-rocks

The following ROCK images need to be integrated into Seldon Core Operator:
Charm managed:

  • seldonio-rocks/seldon-core-operator: Rock is done, integration tests are done, integrated into CKF

Workload managed:

  • seldonio-rocks/sklearnserver: Rock is done, integration tests are done, integrated into CKF
  • seldonio/mlserver-sklearn
  • seldonio/mlserver-xgboost
  • seldonio/mlserver-mlflow
  • seldonio/mlserver-huggingface
  • seldonio/mlserver-slim
  • seldonio/mlflowserver
  • seldonio-rocks/xgboostserver v1
  • seldonio-rocks/xgboostserver v2
  • seldonio-rocks/seldon-core-s2i-python3
  • seldonio-rocks/seldon-core-s2i-python36 (could be drop candidate)
  • seldonio-rocks/seldon-core-s2i-python37 (could be drop candidate)
  • seldonio-rocks/seldon-core-s2i-python38
  • seldonio-rocks/seldon-core-s2i-python36-gpu (could be drop candidate)
  • seldonio-rocks/seldon-core-s2i-python37-gpu (could be drop candidate)
  • seldonio-rocks/seldon-core-s2i-python38-gpu
  • seldonio-rocks/tensorflow/serving
  • seldonio-rocks/seldonio/tfserving-proxy

Design

Design of how ROCKs are built, tested and integrated is captured in related specification (KF-044).
Main design points for Seldon ROCKs:

  • metadata.yaml is updated with references to new ROCK image.
  • Seldon Core Operator ConfigMap updated with new ROCK images.

Testing

Existing integration tests are to be re-used to test functionality of new ROCK images.
Follow Seldon documenation for testing:
https://docs.seldon.io/projects/seldon-core/en/latest/reference/apis/index.html
https://docs.seldon.io/projects/seldon-core/en/latest/nav/config/servers.html

Integration tests

Implementation

  • Create ROCK images:
    • seldonio-rocks/seldon-core-operator
    • SKLEARN_SERVER: seldonio-rocks/sklearnserver (seldon)
    • SKLEARN_SERVER-V2: seldonio-rocks/mlserver-sklearn (v2) PR
    • XGBOOST_SERVER: seldonio-rocks/xgboostserver (seldon)
    • XGBOOST_SERVER-V2: seldonio-rocks/mlserver-xgboost (v2)
    • MLFLOW_SERVER: seldonio-rocks/mlflowserver (seldon) PR
    • MLFLOW_SERVER-V2: seldonio-rocks/mlserver-mlflow (v2) PR
    • TEMPO_SERVER-V2: seldonio/mlserver-slim
    • HUGGINGFACE_SERVER-V2: seldonio/mlserver-huggingface PR
    • seldonio-rocks/seldon-core-s2i-python3
    • seldonio-rocks/seldon-core-s2i-python38
    • seldonio-rocks/seldon-core-s2i-python38-gpu
    • seldonio-rocks/tensorflow/serving
    • seldonio-rocks/seldonio/tfserving-proxy
  • Create integration tests to test each image (charm and workload managed).
    • seldonio-rocks/seldon-core-operator
    • SKLEARN_SERVER: seldonio-rocks/sklearnserver (seldon)
    • SKLEARN_SERVER-V2: seldonio-rocks/mlserver-sklearn (v2) PR
    • XGBOOST_SERVER: seldonio-rocks/xgboostserver (seldon)
    • XGBOOST_SERVER-V2: seldonio-rocks/mlserver-xgboost (v2)
    • MLFLOW_SERVER: seldonio-rocks/mlflowserver (seldon)
    • MLFLOW_SERVER-V2: seldonio-rocks/mlserver-mlflow (v2) PR
    • TEMPO_SERVER-V2: seldonio/mlserver-slim
    • HUGGINGFACE_SERVER-V2: seldonio/mlserver-huggingface (no test container)
    • seldonio-rocks/seldon-core-s2i-python3
    • seldonio-rocks/seldon-core-s2i-python38
    • seldonio-rocks/seldon-core-s2i-python38-gpu
    • seldonio-rocks/tensorflow/serving
    • seldonio-rocks/seldonio/tfserving-proxy
  • Update required charm's resources to include/deploy ROCK images.
    • seldonio-rocks/seldon-core-operator
    • SKLEARN_SERVER: seldonio-rocks/sklearnserver (seldon)
    • SKLEARN_SERVER-V2: seldonio-rocks/mlserver-sklearn (v2)
    • XGBOOST_SERVER: seldonio-rocks/xgboostserver (seldon)
    • XGBOOST_SERVER-V2: seldonio-rocks/mlserver-xgboost (v2)
    • MLFLOW_SERVER: seldonio-rocks/mlflowserver (seldon)
    • MLFLOW_SERVER-V2: seldonio-rocks/mlserver-mlflow (v2) (broken model in test container)
    • TEMPO_SERVER-V2: seldonio/mlserver-slim
    • HUGGINGFACE_SERVER-V2: seldonio/mlserver-huggingface (no test container)
    • seldonio-rocks/seldon-core-s2i-python3
    • seldonio-rocks/seldon-core-s2i-python38
    • seldonio-rocks/seldon-core-s2i-python38-gpu
    • seldonio-rocks/tensorflow/serving
    • seldonio-rocks/seldonio/tfserving-proxy
  • Publish ROCK images.
    • seldonio-rocks/seldon-core-operator
    • SKLEARN_SERVER: seldonio-rocks/sklearnserver (seldon)
    • SKLEARN_SERVER-V2: seldonio-rocks/mlserver-sklearn (v2)
    • XGBOOST_SERVER: seldonio-rocks/xgboostserver (seldon)
    • XGBOOST_SERVER-V2: seldonio-rocks/mlserver-xgboost (v2)
    • MLFLOW_SERVER: seldonio-rocks/mlflowserver (seldon)
    • MLFLOW_SERVER-V2: seldonio-rocks/mlserver-mlflow (v2) (broken model in test container)
    • TEMPO_SERVER-V2: seldonio/mlserver-slim
    • HUGGINGFACE_SERVER-V2: seldonio/mlserver-huggingface (no test container)
    • seldonio-rocks/seldon-core-s2i-python3
    • seldonio-rocks/seldon-core-s2i-python38
    • seldonio-rocks/seldon-core-s2i-python38-gpu
    • seldonio-rocks/tensorflow/serving
    • seldonio-rocks/seldonio/tfserving-proxy

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions