How to set our different images via Operator plugin - cniackz/public GitHub Wiki

Objective:

To set our different images using Operator Plugin

Steps:

  1. Have or create a new k8s cluster

  2. Run below command as an example to explain it:

kubectl minio init \
    --console-image minio/operator:v5.0.9 \
    --default-minio-image minio/minio:RELEASE.2023-10-07T15-07-38Z \
    --image minio/operator:v5.0.9

Operator Console Image:

  • --console-image it will set the Operator's Console Image under minio-operator namespace:
$ k get pod console-544c8776d8-hvbnw -n minio-operator -o yaml | k neat > operator-console.yaml
$ yq '.spec.containers[0].image' operator-console.yaml 
minio/operator:v5.0.9

minio/operator:v5.0.9 serves as our Operator's Console Image as React Project got split in two repositories; Operator's console is under https://github.com/minio/operator/ while MinIO's console is under https://github.com/minio/console so when you set --console-image all you are changing is Operator's image, that's it!.

MinIO Image:

  • --default-minio-image this flag will set the image of MinIO our Tenant will use and with this image a Console Image is integrated. So to change the MinIO console image you have to change the MinIO Image as well. We cannot change or separate this integration from our Operator project and if something different is required, then you will have to provide a modified image of MinIO which is out of the scope for our Operator Project. The recommendatio to keep things consistent is to use whatever Console Image comes with MinIO.

Operator Backend Image:

  • --image this will change the image in our Operator leader and followers of our GoLang BackEnd Operator Project:
$ k get pod minio-operator-745d9f8f94-tnhlw -n minio-operator -o yaml | k neat > operator-backend.yaml
$ yq '.spec.containers[0].image' operator-backend.yaml 
minio/operator:v5.0.9

minio/operator:v5.0.9 image contains both BE and FE in the same repository and this is unrealted to MinIO Console. As we have two different consoles and this applies for Operator project only!.