Skip to content

Operator managed installation of mattermost with mysql and minio #371

@himanshusaini-fa

Description

@himanshusaini-fa

Summary

Unable to deploy matter most with minio as storage.

Steps to reproduce

Install the operator via

kubectl create ns mattermost-operator
kubectl apply -n mattermost-operator -f https://raw.githubusercontent.com/mattermost/mattermost-operator/master/docs/mattermost-operator/mattermost-operator.yaml

Then installed mysql operator

helm repo add bitpoke https://helm-charts.bitpoke.io
helm install mysql-operator bitpoke/mysql-operator

Then install the minio operator

helm repo add minio-operator https://operator.min.io
helm install --namespace mattermost-operator operator minio-operator/operator

Then delete the mattermost-operator pod. Allowing new one to spin up

mysql db instances are created

Expected behavior

A minio tenant should be created and used for mattermost deployment

Observed behavior (that appears unintentional)

Minio tenant is not being created. Below is the log from mattermost operator:

time="2024-01-02T17:59:33Z" level=error msg="[opr.controller.mattermost] Reconciler error" error="failed to check Minio instance: no matches for kind "MinIOInstance" in version "miniocontroller.min.io/v1beta1"" name=mattermost namespace=mattermost-operator reconciler group=installation.mattermost.com reconciler kind=Mattermost

Possible fixes

Most Likely there have been changes in the minio operator which are not accounted for by mattermost operator.
Like this comment in an issue minio/operator#94 (comment)

Below is my yaml for the deployment of mattermost

apiVersion: installation.mattermost.com/v1beta1
kind: Mattermost
metadata:
  name: mattermost                         # Chose the desired name
spec:
  size: 500users                               # Adjust to your requirements
  ingress:
    enabled: true
    host: asdasd.fereee.gi       # Adjust to your domain
    annotations:
      kubernetes.io/ingress.class: nginx
  database:
    operatorManaged:
      replicas: 3
      resources:
        requests:
          cpu: 500m
          memory: 500Mi
      storageSize: 20Gi
      type: mysql
  elasticSearch: {}
  fileStore:
    operatorManaged:
      replicas: 2
      resources:
        requests:
          cpu: 200m
          memory: 500Mi
      storageSize: 50Gi
  version: 6.0.1
  licenseSecret: ""                             # If you have created secret in step 1, put its name here

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions