Minio Tenant is just stuck at "Waiting for Pods to be Ready" but the pod's status is Running

4/28/2021

This is the config file I used for the Tenant

apiVersion: minio.min.io/v2
kind: Tenant
metadata:
  name: minio
  labels:
    app: minio
  annotations:
    prometheus.io/path: /minio/prometheus/metrics
    prometheus.io/port: "9000"
    prometheus.io/scrape: "true"
spec:
  image: minio/minio:RELEASE.2021-04-27T23-46-03Z.release.0033eb96
  imagePullPolicy: IfNotPresent
  credsSecret:
    name: minio-creds-secret
  pools:
    - servers: 1
      volumesPerServer: 4
      volumeClaimTemplate:
        metadata:
          name: data
        spec:
          accessModes:
            - ReadWriteMany
          resources:
            requests:
              storage: 10Gi
      securityContext:
        runAsUser: 1000
        runAsGroup: 1000
        runAsNonRoot: true
        fsGroup: 1000
  mountPath: /export
  requestAutoCert: false
  s3:
    bucketDNS: false
  certConfig:
    commonName: ""
    organizationName: []
    dnsNames: []
  podManagementPolicy: Parallel
  serviceMetadata:
    minioServiceLabels:
      label: minio-svc
    minioServiceAnnotations:
      v2.min.io: minio-svc
    consoleServiceLabels:
      label: console-svc
    consoleServiceAnnotations:
      v2.min.io: console-svc
  console:
    image: minio/console:v0.6.8
    replicas: 2
    consoleSecret:
      name: console-secret
    securityContext:
      runAsUser: 1000
      runAsGroup: 2000
      runAsNonRoot: true
      fsGroup: 2000

When I apply the config file, the tenant is created but it keeps waiting for pods to be ready, meanwhile, the pod is running and is ready.

In the k8s Dashboard, when I inspect the pod I get this warning.

0/1 nodes are available: 1 pod has unbound immediate PersistentVolumeClaims.
-- Saad Zimat
kubectl
kubernetes
minio

2 Answers

4/29/2021

you had to define storage class in yaml to bind the pv

-- Afsar
Source: StackOverflow

4/29/2021

According to Create a MinIO Tenant and Deploy a MinIO Tenant, if I understood correctly you had to create PV on your own: Local Persistent Volumes

MinIO automatically creates Persistent Volume Claims (PVC) as part of Tenant creation. Ensure the cluster has at least one Persistent Volume for each PVC MinIO requests.

You can estimate the number of PVC by multiplying the number of minio server pods in the Tenant by the number of drives per node. For example, a 4-node Tenant with 4 drives per node requires 16 PVC and therefore 16 PV.

MinIO strongly recommends using the following CSI drivers for creating local PV to ensure best object storage performance:

  • Local Persistent Volume
  • OpenEBS Local PV

Have you did that? Can you please describe your pv and pvc? feel free to correct me

-- Vit
Source: StackOverflow