Object Storage
Installing MinIO
Install MinIO in the namespace
minio-system
with 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-system
Expose 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: 9000
Apply the configuration using:
kubectl apply -f minio-vs.yaml
Access 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-system
Open your browser and navigate to
http://127.0.0.1:9000/minio/
to access MinIO.
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?