Commit e9de604a authored by Prout, Ryan's avatar Prout, Ryan
Browse files

Merge branch 'fs-integration' into 'master'

Fs integration

See merge request ryu/slate_helm_examples!3
parents 42caac6d e1e53041
Loading
Loading
Loading
Loading
+10 −15
Original line number Diff line number Diff line
@@ -4,33 +4,28 @@ This Chart provides an example that deploys a standalone [MinIO](https://min.io/

This example is a derivative of the [MinIO provided example](https://github.com/minio/minio/blob/master/docs/orchestration/kubernetes/k8s-yaml.md) to target Slate specifically.

We will look at the individual [template files](https://code.ornl.gov/ryu/slate_helm_examples/-/tree/prout-dev/charts%2Fminio-standalone%2Ftemplates) in this minio-standalone chart, to gain basic familiarity with the application/chart building blocks, then deploy the application in your Slate namespace.
Feel free to look at the individual [template files](./templates), in this minio-standalone chart, to gain basic familiarity with the application/chart building blocks. The details of these file is covered below.

**NOTE:** The main objective of this example is to show how the smaller, individual core, components come together to create a simple application deployment. This example can be used to build off of, for a variety of data applications, but it is not meant to be a production deployment. A production deployment may require more thought and robust configurations. 
**NOTE:** The main objective of this example is to show how the smaller, individual core, components come together to create a simple application deployment. This example can be used to build off of, for a variety of data applications, but it is not necessarily meant to be a production deployment. A production deployment may require more thought and robust configurations.

## Prerequisites
## Prerequisites to use this chart

**NOTE:** This example will be done on Slate's Marble Cluster. Marble resides in OLCF's Moderate enclave, a peripheral system to Summit.
Please follow the Slate user docs to use this Chart on Marble (link will be provided soon).

- You have a Slate project allocation
- You have the OC tool isntalled
- You can log into Slate's Marble cluster via the OC CLI
- You have helm3 installed
## Core Components of the MinIO Standalone Server on Slate

Please refer to the Slate user documentation (link coming soon) if you have any questions.
This section describes the building blocks of the standalone MinIO server chart.

## Deploying the MinIO Standalone Server on Slate

This section describes the process to deploy a standalone MinIO server on Slate. The deployment uses the [official MinIO Docker image](https://hub.docker.com/r/minio/minio/) from Docker Hub.

This example uses these core components of Kubernetes:
We use these core components of Kubernetes:

- [Pods](https://kubernetes.io/docs/concepts/workloads/pods/pod/)
- [Services](https://kubernetes.io/docs/concepts/services-networking/service/)
- [Deployments](https://kubernetes.io/docs/concepts/workloads/controllers/deployment/)
- [Persistent Volume Claims](https://kubernetes.io/docs/concepts/storage/persistent-volumes/#persistentvolumeclaims)

In the following we will look at the files of our Minio Standalone application/chart, that use the above core components.
This deployment uses the [official MinIO Docker image](https://hub.docker.com/r/minio/minio/) from Docker Hub.

In the following we will look at the files of our Minio Standalone chart, that use the above core components.

### The Persistent Volume Claim

+3 −3
Original line number Diff line number Diff line
@@ -49,7 +49,7 @@ spec:
        - /data
        {{- end }}
        {{- if eq .Values.minio.use_olcf_fs "enabled" }}
        - {{ .Values.minio.olcfMount }}
        - {{ .Values.minio.olcf_mount }}
        {{- end }}
        env:
        # MinIO access key and secret key
@@ -57,12 +57,12 @@ spec:
          valueFrom:
            secretKeyRef:
              key: SECRET_TOKEN
              name: minio-standalone-access-key
              name: {{ .Values.minio.name }}-access-key
        - name: MINIO_SECRET_KEY
          valueFrom:
            secretKeyRef:
              key: SECRET_TOKEN
              name: minio-standalone-secret-key
              name: {{ .Values.minio.name }}-secret-key
        resources:
          limits:
            cpu: {{ .Values.minio.resources.limits.cpu }}
+1 −1
Original line number Diff line number Diff line
@@ -15,6 +15,6 @@ minio:
  # Set this to "disbled" to not use OLCF fileystem. If "disabled" it will use a volume isolated to the MinIO Pod.
  use_olcf_fs: enabled
  # This is the OLCF file system path MinIO will server out of, if "enabled" above.
  olcfMount: /ccs/proj/stf007/minio-test
  olcf_mount: /ccs/proj/stf007/minio-test
  # Amount of storage to use, if use_olcf_fs is "disabled"
  pvc_storage: 10Gi