Object Storage
Installing MinIO
Install MinIO in the namespace
minio-systemwith the user as[email protected]. Ensure to replace<password>with a password of your choice in the following commands:
MINIOUSER=<[email protected]>
MINIOPASSWORD=<password>
kubectl create ns minio-system
helm repo add minio https://helm.min.io/
helm upgrade --install minio minio/minio \
--set accessKey=${MINIOUSER} \
--set secretKey=${MINIOPASSWORD} \
--namespace minio-systemExpose MinIO, using the Istio ingress controller. Create a file named
minio-vs.yaml, with the following contents:
apiVersion: networking.istio.io/v1beta1
kind: VirtualService
metadata:
name: minio
namespace: minio-system
spec:
gateways:
- istio-system/seldon-gateway
hosts:
- '*'
http:
- match:
- uri:
prefix: /minio/
route:
- destination:
host: minio
port:
number: 9000Apply the configuration using:
kubectl apply -f minio-vs.yamlAccess MinIO.
Get the Pod that is running MinIO in the cluster and save it as
$MINIO_POD_NAME.
export MINIO_POD_NAME=$(kubectl get pods --namespace minio-system -l "app.kubernetes.io/name=minio,app.kubernetes.io/instance=minio" -o jsonpath="{.items[0].metadata.name}")You can use port-forwarding to access your application locally.
kubectl port-forward $MINIO_POD_NAME 9000:9000 --namespace minio-systemOpen your browser and navigate to
http://127.0.0.1:9000/minio/to access MinIO.
Find the IP address of the Seldon Enterprise Platform instance running with Istio:
ISTIO_INGRESS=$(kubectl get svc -n istio-system istio-ingressgateway -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
ISTIO_INGRESS+=$(kubectl get svc -n istio-system istio-ingressgateway -o jsonpath='{.status.loadBalancer.ingress[0].hostname}')
echo "MinIO: http://$ISTIO_INGRESS/minio/"
Open your browser and navigate to
http://$ISTIO_INGRESS/minio/to access Seldon Enterprise Platform. Where$ISTIO_INGRESSis the IP address of Seldon Enterprise Platform.
Per Namespace Setup
Access to MinIO depends on the storage initializer. This needs to be configured per-namespace for batch jobs. The secret suggested there may also be used for models.
Additional Resources
Last updated
Was this helpful?