This page was generated from notebooks/seldon_core_setup.ipynb.
Seldon Core Setup¶
Prerequisites¶
You will need - Git clone of Seldon Core - A running Kubernetes cluster with kubectl authenticated - seldon-core Python package (pip install seldon-core>=0.2.6.1
) - Helm client
Setup Cluster¶
[ ]:
!kubectl create namespace seldon
[ ]:
!kubectl config set-context $(kubectl config current-context) --namespace=seldon
Install Seldon Core¶
Follow the Seldon Core Install documentation.
[ ]:
!kubectl create namespace seldon-system
If using Ambassador:¶
[ ]:
!helm install seldon-core seldon-core-operator --repo https://storage.googleapis.com/seldon-charts --set ambassador.enabled=true --set usageMetrics.enabled=true --namespace seldon-system
If using Istio:¶
[ ]:
!helm install seldon-core seldon-core-operator --repo https://storage.googleapis.com/seldon-charts --set istio.enabled=true --set usageMetrics.enabled=true --namespace seldon-system
Check all services are running before proceeding.
Wait for rollout to finish¶
[ ]:
!kubectl rollout status deploy/seldon-controller-manager -n seldon-system
Install Ingress¶
Ambassador¶
Ambassador Edge Stack:
[ ]:
!helm repo add datawire https://www.getambassador.io
[ ]:
!helm repo update
[ ]:
!helm install ambassador datawire/ambassador \
--set image.repository=docker.io/datawire/ambassador \
--set crds.keep=false \
--namespace seldon-system
Ambassador API Gateway (Emissary Ingress):
[ ]:
!helm repo add datawire https://www.getambassador.io
[ ]:
!helm repo update
[ ]:
!helm install ambassador datawire/ambassador \
--set image.repository=docker.io/datawire/ambassador \
--set crds.keep=false \
--set enableAES=false \
--namespace seldon-system
Check all services are running before proceeding.
[ ]:
!kubectl rollout status deployment.apps/ambassador
For Ambassador Edge Stack:
Note: Absent configuration, Ambassador Edge Stack will attempt to use TLS with a self-signed cert. Either set up TLS or ignore certificate validation (i.e. curl -k
).
[ ]:
!kubectl port-forward $(kubectl get pods -n seldon-system -l app.kubernetes.io/name=ambassador -o jsonpath='{.items[0].metadata.name}') -n seldon-system 8003:8443
For Ambassador API Gateway:
[ ]:
!kubectl port-forward $(kubectl get pods -n seldon-system -l app.kubernetes.io/name=ambassador -o jsonpath='{.items[0].metadata.name}') -n seldon-system 8003:8080
or
Istio¶
Note: Remember to add --set istio.enabled=true
flag when installing Seldon Core with Istio Ingress.