Git Product home page Git Product logo

minio_operator's Introduction

MinIO Operator Guide Slack Docker Pulls

MinIO is a high performance distributed object storage server, designed for large-scale private cloud infrastructure. MinIO is designed in a cloud-native manner to scale sustainably in multi-tenant environments. Orchestration platforms like Kubernetes provide perfect launchpad for MinIO to scale.

MinIO-Operator brings native MinIO, Console, and KES support to Kubernetes. MinIO-Operator currently supports following features:

Feature Reference Document
Create and delete highly available distributed MinIO clusters Create a MinIO Instance.
TLS Configuration TLS for MinIO Instance.
Expand an existing MinIO cluster Expand a MinIO Cluster.
Use a custom template for hostname discovery Custom Hostname Discovery.
Use PodSecurityPolicy for MinIO Pods Apply PodSecurityPolicy.
Deploy Console with MinIO cluster Deploy MinIO Instance with Console.
Deploy KES with MinIO cluster Deploy MinIO Instance with KES.

Getting Started

Prerequisites

  • Kubernetes version v1.17.0 and above for compatibility. MinIO Operator uses k8s/client-go v0.18.0.
  • kubectl configured to refer to a Kubernetes cluster.
  • Create the required PVs using direct CSI driver.
  • Optional: kustomize installed as explained here.

Create Operator Deployment

To start MinIO-Operator with default configuration, use the operator.yaml file.

kubectl apply -f https://raw.githubusercontent.com/minio/operator/master/minio-operator.yaml

Advanced users can leverage kustomize to customize operator configuration

git clone https://github.com/minio/operator
kustomize build | kubectl apply -f -

Create a MinIO instance

Once MinIO-Operator deployment is running, you can create MinIO instances using the below command

kubectl apply -f https://raw.githubusercontent.com/minio/operator/master/examples/tenant.yaml

Access Tenant via Service

Add an external service in Tenant definition to enable Service based access to the Tenant pods. Refer the example here for details on how to setup service based access for Tenant pods.

Environment variables

These variables may be passed to operator Deployment in order to modify some of its parameters

Name Default Description
CLUSTER_DOMAIN cluster.local Cluster Domain of the Kubernetes cluster
WATCHED_NAMESPACE - If set, the operator will watch MinIOInstance resources in specified namespace only. If empty, operator will watch all namespaces.

Explore Further

minio_operator's People

Contributors

abperiasamy avatar adheipsingh avatar alevsk avatar chesterli29 avatar cpanato avatar deekoder avatar dmayle avatar dvaldivia avatar fibbers avatar filmon-arefayne avatar gabrieljackson avatar glorf avatar hainesc avatar harshavardhana avatar jhutchings1 avatar jwilander avatar kerneltime avatar nitisht avatar ochienged avatar praveenrajmani avatar reneluria avatar s12chung avatar sunsingerus avatar varesa avatar wanzenbug avatar wlan0 avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.