Learning Environment
Installing Seldon Enterprise Platform in a learning environment.
You can install Seldon Enterprise Platform on your local computer that is running a Kubernetes cluster using kind.
To install Seldon Enterprise Platform and Seldon Core 2 ecosystem components:
Prerequisites
Install a Kubernetes cluster that is running version 1.23 or later.
Install kubectl, the Kubernetes command-line tool.
Install Helm, the package manager for Kubernetes.
Seldon Enterprise Platform license key. You can reach out to Seldon support team to get a trial license key.
Creating Namespaces
Create a namespace to contain the main components of Seldon. For example, create the namespace
seldon-system
:kubectl create ns seldon-system || echo "Namespace seldon-system already exists"
Create a namespace to contain Kafka. For example, create the namespace
kafka
:kubectl create ns kafka || echo "Namespace kafka already exists"
Create a namespace to contain the components related to request logging. For example, create the namespace
seldon-logs
:kubectl create ns seldon-logs || echo "Namespace seldon-logs already exists"
Create a namespace that is accessible by Seldon Enterprise Platform, Seldon Core 2 runtime that defines core components required in each model, and Seldon Core 2 pre-configured servers to host the models. For example, create the namespace
seldon
:kubectl create ns seldon || echo "Namespace seldon already exists"
Annotate the namespace
seldon
so that it is accessible in the Seldon Enterprise Platform UI:kubectl label ns seldon seldon.restricted=false --overwrite=true
Installing Seldon Core 2
Add and update the Helm charts
seldon-charts
to the repository.helm repo add seldon-charts https://seldonio.github.io/helm-charts/ helm repo update seldon-charts
Install Custom resource definitions for Seldon Core 2.
helm upgrade seldon-core-v2-crds seldon-charts/seldon-core-v2-crds \ --version 2.8.5 \ --namespace default \ --install
Create a YAML file to specify the initial configuration for Seldon Core 2 Operator. For example, create the
components-values.yaml
file. Use your preferred text editor to create and save the file with the following content:controller: clusterwide: true dataflow: resources: cpu: 500m envoy: service: type: ClusterIP kafka: bootstrap: seldon-kafka-bootstrap.seldon-mesh:9092 topics: numPartitions: 4 opentelemetry: enable: false scheduler: service: type: ClusterIP serverConfig: mlserver: resources: cpu: 1 memory: 2Gi triton: resources: cpu: 1 memory: 2Gi serviceGRPCPrefix: "http2-"
Change to the directory that contains the
components-values.yaml
file and then install Seldon Core 2 operator in the namespaceseldon-system
.helm upgrade seldon-core-v2-components seldon-charts/seldon-core-v2-setup \ --version 2.8.5 \ -f components-values.yaml \ --namespace seldon-system \ --install
Install Seldon Core 2 runtimes in the namespace
seldon
.helm upgrade seldon-core-v2-runtime seldon-charts/seldon-core-v2-runtime \ --version 2.8.5 \ --namespace seldon \ --install
Create a YAML file to specify the initial configuration for Seldon Core 2 servers. For example, create the
servers-values.yaml
file. Use your preferred text editor to create and save the file with the following content:mlserver: replicas: 1 triton: replicas: 1
Change to the directory that contains the
servers-values.yaml
file and then install Seldon Core 2 servers in the namespaceseldon
.helm upgrade seldon-core-v2-servers seldon-charts/seldon-core-v2-servers \ --version 2.8.5 \ -f servers-values.yaml \ --namespace seldon \ --install
Installating Seldon Enterprise Platform on a Kubernetes cluster
Install Knative Eventing core components in the Kubernetes cluster.
kubectl apply -f https://github.com/knative/eventing/releases/download/knative-v1.12.2/eventing-crds.yaml kubectl apply -f https://github.com/knative/eventing/releases/download/knative-v1.12.2/eventing-core.yaml kubectl get crds | grep eventing.knative.dev
Create a YAML file to specify the initial configuration. For example, create the
install-values.yaml
file. Use your preferred text editor to create and save the file with the following content:image: image: seldonio/seldon-deploy-server:2.4.0 rbac: opa: enabled: false nsLabelsAuth: enabled: true virtualService: create: false requestLogger: kafka_consumer: enabled: true bootstrap_servers: seldon-kafka-bootstrap.kafka.svc.cluster.local:9092 group_id: metronome auto_offset_reset: earliest gitops: argocd: enabled: false enableAppAuth: false elasticsearch: basicAuth: false seldon: enabled: false knativeEnabled: false seldonCoreV2: enabled: true
Change to the directory that contains the
install-values.yaml
file and then install Seldon Enterprise Platform in the namespaceseldon-system
.helm install seldon-enterprise seldon-charts/seldon-deploy --namespace seldon-system -f install-values.yaml --version 2.4.0
When the installation is successful, you should see this:
NAME: seldon-enterprise LAST DEPLOYED: Fri Jul 26 16:43:44 2024 NAMESPACE: seldon-system STATUS: deployed REVISION: 1 NOTES: 1. Get the application URL by running these commands: export POD_NAME=$(kubectl get pods --namespace seldon-system -l "app.kubernetes.io/name=seldon-deploy,app.kubernetes.io/instance=seldon-enterprise" -o jsonpath="{.items[0].metadata.name}") echo "Visit http://127.0.0.1:8000/seldon-deploy/ to use your application" kubectl port-forward $POD_NAME 8000:8000 --namespace seldon-system
Check the status of the installation
seldon-enterprise-seldon-deploy
.kubectl rollout status deployment/seldon-enterprise-seldon-deploy -n seldon-system
When the installation is complete you should see this:
deployment "seldon-enterprise-seldon-deploy" successfully rolled out
Get the Pod that is running Seldon Enterprise Platform in the cluster and save it as
$POD_NAME
.export POD_NAME=$(kubectl get pods --namespace seldon-system -l "app.kubernetes.io/name=seldon-deploy,app.kubernetes.io/instance=seldon-enterprise" -o jsonpath="{.items[0].metadata.name}")
You can use port-forwarding to access your application.
kubectl port-forward $POD_NAME 8000:8000 --namespace seldon-system
Open your browser and navigate to
http://127.0.0.1:8000/seldon-deploy/
to access Seldon Enterprise Platform with Seldon Core 2 resources, operator, runtimes and servers.Seldon Enterprise Platform Apply the trial license and click Activate.
Next
To explore the features of Seldon Enterprise Platform, you need to complete the installation of other components in the following order:
Additional Resources
Last updated
Was this helpful?