Skip to content

Commit

Permalink
Remove kserve from mlstacks (#122)
Browse files Browse the repository at this point in the history
* Remove kserve from aws-modular

* Remove kserve

* Formatting with terraform fmt

* Remove extra conditional end bracket

* test spellcheck working

* revert typos
  • Loading branch information
strickvl authored Dec 22, 2023
1 parent d5ad285 commit 1497314
Show file tree
Hide file tree
Showing 41 changed files with 75 additions and 691 deletions.
2 changes: 1 addition & 1 deletion docs/book/stacks/aws.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ as can a list of components that are coming soon.
| Experiment Tracker | mlflow |
| Orchestrator | kubeflow, kubernetes, sagemaker, skypilot, tekton |
| MLOps Platform | zenml |
| Model Deployer | seldon, kserve |
| Model Deployer | seldon |
| Step Operator | sagemaker |

## Coming Soon!
Expand Down
2 changes: 1 addition & 1 deletion docs/book/stacks/gcp.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ and cannot be created without one.
| Experiment Tracker | mlflow |
| Orchestrator | kubeflow, kubernetes, skypilot, tekton, vertex |
| MLOps Platform | zenml |
| Model Deployer | seldon, kserve |
| Model Deployer | seldon |
| Step Operator | vertex |

## Coming Soon!
Expand Down
2 changes: 1 addition & 1 deletion docs/book/stacks/k3d.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ as can a list of components that are coming soon.
| Experiment Tracker | mlflow |
| Orchestrator | kubeflow, kubernetes, sagemaker, tekton |
| MLOps Platform | zenml |
| Model Deployer | seldon, kserve |
| Model Deployer | seldon |

## Coming Soon!

Expand Down
2 changes: 1 addition & 1 deletion src/mlstacks/constants.py
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@
"vertex",
],
"mlops_platform": ["zenml"],
"model_deployer": ["seldon", "kserve"],
"model_deployer": ["seldon"],
"step_operator": ["sagemaker", "vertex"],
}

Expand Down
1 change: 0 additions & 1 deletion src/mlstacks/enums.py
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,6 @@ class ComponentFlavorEnum(str, Enum):

AWS = "aws"
GCP = "gcp"
KSERVE = "kserve"
KUBEFLOW = "kubeflow"
KUBERNETES = "kubernetes"
MINIO = "minio"
Expand Down
3 changes: 1 addition & 2 deletions src/mlstacks/terraform/aws-modular/eks.tf
Original file line number Diff line number Diff line change
@@ -1,8 +1,7 @@
# eks module to create a cluster
# newer versions of it had some error so going with v17.23.0 for now
locals {
enable_eks = (var.enable_orchestrator_kubeflow || var.enable_orchestrator_tekton || var.enable_orchestrator_kubernetes ||
var.enable_model_deployer_kserve || var.enable_model_deployer_seldon || var.enable_experiment_tracker_mlflow ||
enable_eks = (var.enable_orchestrator_kubeflow || var.enable_orchestrator_tekton || var.enable_orchestrator_kubernetes || var.enable_model_deployer_seldon || var.enable_experiment_tracker_mlflow ||
var.enable_zenml)
}

Expand Down
3 changes: 1 addition & 2 deletions src/mlstacks/terraform/aws-modular/istio.tf
Original file line number Diff line number Diff line change
@@ -1,8 +1,7 @@
# create kserve module
module "istio" {
source = "../modules/istio-module"

count = (var.enable_model_deployer_kserve || var.enable_model_deployer_seldon) ? 1 : 0
count = (var.enable_model_deployer_seldon) ? 1 : 0

depends_on = [
aws_eks_cluster.cluster,
Expand Down
111 changes: 0 additions & 111 deletions src/mlstacks/terraform/aws-modular/kserve.tf

This file was deleted.

8 changes: 0 additions & 8 deletions src/mlstacks/terraform/aws-modular/locals.tf
Original file line number Diff line number Diff line change
Expand Up @@ -58,14 +58,6 @@ locals {
ingress_host_prefix = "mlflow"
}

kserve = {
version = "0.9.0"
knative_version = "1.0.0"
workloads_namespace = "zenml-workloads-kserve"
service_account_name = "kserve"
ingress_host = "kserve.example.com"
}

seldon = {
version = "1.15.0"
name = "seldon"
Expand Down
7 changes: 0 additions & 7 deletions src/mlstacks/terraform/aws-modular/output_file.tf
Original file line number Diff line number Diff line change
Expand Up @@ -70,13 +70,6 @@ resource "local_file" "stack_file" {
configuration: {"tracking_uri": "${var.enable_experiment_tracker_mlflow ? module.mlflow[0].mlflow-tracking-URL : ""}", "tracking_username": "${var.mlflow-username}", "tracking_password": "${var.mlflow-password}"}
%{endif}
%{if var.enable_model_deployer_kserve}
model_deployer:
id: ${uuid()}
flavor: kserve
name: eks_kserve_model_deployer
configuration: {"kubernetes_context": "${aws_eks_cluster.cluster[0].arn}", "kubernetes_namespace": "${local.kserve.workloads_namespace}", "base_url": "${module.kserve[0].kserve-base-URL}", "secret": "aws_kserve_secret"}
%{endif}
%{if var.enable_model_deployer_seldon}
model_deployer:
id: ${uuid()}
Expand Down
23 changes: 4 additions & 19 deletions src/mlstacks/terraform/aws-modular/outputs.tf
Original file line number Diff line number Diff line change
Expand Up @@ -84,25 +84,19 @@ output "experiment_tracker_configuration" {
}) : ""
}

# if kserve is enabled, set the model deployer outputs to the kserve values
# if seldon is enabled, set the model deployer outputs to the seldon values
# otherwise, set the model deployer outputs to empty strings
output "model_deployer_id" {
value = var.enable_model_deployer_kserve ? uuid() : var.enable_model_deployer_seldon ? uuid() : ""
value = var.enable_model_deployer_seldon ? uuid() : ""
}
output "model_deployer_flavor" {
value = var.enable_model_deployer_kserve ? "kserve" : var.enable_model_deployer_seldon ? "seldon" : ""
value = var.enable_model_deployer_seldon ? "seldon" : ""
}
output "model_deployer_name" {
value = var.enable_model_deployer_kserve ? "eks_kserve_model_deployer_${random_string.unique.result}" : var.enable_model_deployer_seldon ? "eks_seldon_model_deployer_${random_string.unique.result}" : ""
value = var.enable_model_deployer_seldon ? "eks_seldon_model_deployer_${random_string.unique.result}" : ""
}
output "model_deployer_configuration" {
value = var.enable_model_deployer_kserve ? jsonencode({
kubernetes_context = "${aws_eks_cluster.cluster[0].arn}"
kubernetes_namespace = local.kserve.workloads_namespace
base_url = module.kserve[0].kserve-base-URL
secret = "aws_kserve_secret"
}) : var.enable_model_deployer_seldon ? jsonencode({
value = var.enable_model_deployer_seldon ? jsonencode({
kubernetes_context = "${aws_eks_cluster.cluster[0].arn}"
kubernetes_namespace = local.seldon.workloads_namespace
base_url = "http://${module.istio[0].ingress-hostname}:${module.istio[0].ingress-port}"
Expand Down Expand Up @@ -158,15 +152,6 @@ output "mlflow-bucket" {
value = (var.enable_experiment_tracker_mlflow && var.mlflow_bucket == "") ? "mlflow-s3-${random_string.mlflow_bucket_suffix.result}" : ""
}

# output for kserve model deployer
output "kserve-workload-namespace" {
value = var.enable_model_deployer_kserve ? local.kserve.workloads_namespace : null
description = "The namespace created for hosting your Kserve workloads"
}
output "kserve-base-url" {
value = var.enable_model_deployer_kserve ? module.kserve[0].kserve-base-URL : null
}

# output for seldon model deployer
output "seldon-workload-namespace" {
value = var.enable_model_deployer_seldon ? local.seldon.workloads_namespace : null
Expand Down
4 changes: 0 additions & 4 deletions src/mlstacks/terraform/aws-modular/variables.tf
Original file line number Diff line number Diff line change
Expand Up @@ -31,10 +31,6 @@ variable "enable_experiment_tracker_mlflow" {
description = "Enable MLflow deployment"
default = false
}
variable "enable_model_deployer_kserve" {
description = "Enable KServe deployment"
default = false
}
variable "enable_model_deployer_seldon" {
description = "Enable Seldon deployment"
default = false
Expand Down
19 changes: 10 additions & 9 deletions src/mlstacks/terraform/gcp-modular/gke.tf
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
data "google_client_config" "default" {}
# module "gke" {
# count = (var.enable_orchestrator_kubeflow || var.enable_orchestrator_tekton || var.enable_orchestrator_kubernetes ||
# var.enable_model_deployer_kserve || var.enable_model_deployer_seldon || var.enable_experiment_tracker_mlflow ||
# count = (var.enable_orchestrator_kubeflow || var.enable_orchestrator_tekton
# || var.enable_orchestrator_kubernetes ||
# var.enable_model_deployer_seldon || var.enable_experiment_tracker_mlflow ||
# var.enable_zenml)? 1: 0

# depends_on = [
Expand Down Expand Up @@ -63,7 +64,7 @@ data "google_client_config" "default" {}
# }
locals {
enable_gke = (var.enable_orchestrator_kubeflow || var.enable_orchestrator_tekton || var.enable_orchestrator_kubernetes ||
var.enable_model_deployer_kserve || var.enable_model_deployer_seldon || var.enable_experiment_tracker_mlflow ||
var.enable_model_deployer_seldon || var.enable_experiment_tracker_mlflow ||
var.enable_zenml)
}

Expand All @@ -78,7 +79,7 @@ data "external" "get_cluster" {

resource "google_container_cluster" "gke" {
count = (var.enable_orchestrator_kubeflow || var.enable_orchestrator_tekton || var.enable_orchestrator_kubernetes ||
var.enable_model_deployer_kserve || var.enable_model_deployer_seldon || var.enable_experiment_tracker_mlflow ||
var.enable_model_deployer_seldon || var.enable_experiment_tracker_mlflow ||
var.enable_zenml) ? 1 : 0

name = "${local.prefix}-${local.gke.cluster_name}"
Expand Down Expand Up @@ -116,7 +117,7 @@ resource "google_container_cluster" "gke" {
# service account for GKE nodes
resource "google_service_account" "gke-service-account" {
count = (var.enable_orchestrator_kubeflow || var.enable_orchestrator_tekton || var.enable_orchestrator_kubernetes ||
var.enable_model_deployer_kserve || var.enable_model_deployer_seldon || var.enable_experiment_tracker_mlflow ||
var.enable_model_deployer_seldon || var.enable_experiment_tracker_mlflow ||
var.enable_zenml) ? 1 : 0
account_id = "${local.prefix}-${local.gke.service_account_name}"
project = var.project_id
Expand All @@ -135,7 +136,7 @@ resource "google_project_iam_binding" "container-registry" {

resource "google_project_iam_binding" "secret-manager" {
count = (var.enable_orchestrator_kubeflow || var.enable_orchestrator_tekton || var.enable_orchestrator_kubernetes ||
var.enable_model_deployer_kserve || var.enable_model_deployer_seldon || var.enable_experiment_tracker_mlflow ||
var.enable_model_deployer_seldon || var.enable_experiment_tracker_mlflow ||
var.enable_zenml) ? 1 : 0
project = var.project_id
role = "roles/secretmanager.admin"
Expand All @@ -147,7 +148,7 @@ resource "google_project_iam_binding" "secret-manager" {

resource "google_project_iam_binding" "cloudsql" {
count = (var.enable_orchestrator_kubeflow || var.enable_orchestrator_tekton || var.enable_orchestrator_kubernetes ||
var.enable_model_deployer_kserve || var.enable_model_deployer_seldon || var.enable_experiment_tracker_mlflow ||
var.enable_model_deployer_seldon || var.enable_experiment_tracker_mlflow ||
var.enable_zenml) ? 1 : 0
project = var.project_id
role = "roles/cloudsql.admin"
Expand All @@ -159,7 +160,7 @@ resource "google_project_iam_binding" "cloudsql" {

resource "google_project_iam_binding" "storageadmin" {
count = (var.enable_orchestrator_kubeflow || var.enable_orchestrator_tekton || var.enable_orchestrator_kubernetes ||
var.enable_model_deployer_kserve || var.enable_model_deployer_seldon || var.enable_experiment_tracker_mlflow ||
var.enable_model_deployer_seldon || var.enable_experiment_tracker_mlflow ||
var.enable_zenml) ? 1 : 0
project = var.project_id
role = "roles/storage.admin"
Expand All @@ -171,7 +172,7 @@ resource "google_project_iam_binding" "storageadmin" {

resource "google_project_iam_binding" "vertex-ai-user" {
count = (var.enable_orchestrator_kubeflow || var.enable_orchestrator_tekton || var.enable_orchestrator_kubernetes ||
var.enable_model_deployer_kserve || var.enable_model_deployer_seldon || var.enable_experiment_tracker_mlflow ||
var.enable_model_deployer_seldon || var.enable_experiment_tracker_mlflow ||
var.enable_zenml) ? 1 : 0
project = var.project_id
role = "roles/aiplatform.user"
Expand Down
3 changes: 1 addition & 2 deletions src/mlstacks/terraform/gcp-modular/istio.tf
Original file line number Diff line number Diff line change
@@ -1,8 +1,7 @@
# create kserve module
module "istio" {
source = "../modules/istio-module"

count = (var.enable_model_deployer_kserve || var.enable_model_deployer_seldon) ? 1 : 0
count = (var.enable_model_deployer_seldon) ? 1 : 0

depends_on = [
google_container_cluster.gke,
Expand Down
Loading

0 comments on commit 1497314

Please sign in to comment.