Skip to content

Instantly share code, notes, and snippets.

View nitisht's full-sized avatar
🎯
Focusing

Nitish Tiwari nitisht

🎯
Focusing
View GitHub Profile
@nitisht
nitisht / Minio Announcement.md
Last active February 5, 2017 06:14 — forked from mrmrcoleman/Minio Announcement
Minio_Hyper.sh_Announcement

Introducing Minio: Run your own S3 compatible cloud storage on Hyper.sh!

Storage has been long thought of as a complex, difficult to setup system. Even after the advent of quick deployment mechanisms like containers, problem somewhat persisted because of ephemeral nature of containers - it seemed counter-intuitive to store mission critical data on something that itself is supposed to be disposable.

Minio is an open source, S3 compatible, cloud-native object storage server, that makes storage as easy as launching a Docker container. On Hyper.sh, Minio servers are backed by Hyper.sh volumes that make sure, even if a container running Minio server goes down, the data is safe in the volume. As a true cloud-native application, Minio scales very well in a multi-tenant cloud environment.

Docker containers provide isolated environment for application execution, Hyper.sh enables effortless scaling by running multiple instances of these isolated applications. To scale Minio as per your s

Shared Backend Minio Quickstart Guide Slack Go Report Card Docker Pulls codecov

Minio shared mode lets you use single NAS (like NFS, GlusterFS, and other distributed filesystems) as the storage backend for multiple Minio servers. Synchronization among Minio servers is taken care by design. Read more about the Minio shared mode design here.

Minio shared mode is developed to solve several real world use cases. Some of these are

  • You have already invested in NAS and would like to use Minio to add S3 co
@nitisht
nitisht / minio_config.yaml
Created March 16, 2017 00:59
Minio with Azure Disk
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
# This name uniquely identifies the Deployment
name: minio-deployment
spec:
strategy:
type: Recreate
template:
metadata:
@nitisht
nitisht / Minio_GCS_Gateway.md
Last active December 3, 2023 18:29
Run Minio GCS Gateway on Docker

Run Minio Gateway Binary

 gcloud init
  • If you are reauthenticating use this command instead
gcloud beta auth application-default login
apiVersion: v1
entries:
minio:
- apiVersion: v1
created: 2017-06-15T17:48:36.895822482Z
description: Distributed object storage server built for cloud applications and
devops.
digest: 75ff1e3d779d8937cff57c28a102da97a520245d50e22c1a2763cbea064a76cd
home: https://minio.io
icon: https://www.minio.io/img/logo_160x160.png
@nitisht
nitisht / conf-site.xml
Created August 30, 2017 02:38
xml configuration for Apache Drill and Minio
<?xml version="1.0" encoding="UTF-8" ?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
@nitisht
nitisht / s3-lake.json
Created August 30, 2017 02:45
Apache Drill S3 plugin
{
"type": "file",
"enabled": true,
"connection": "s3a://lake",
"config": null,
"workspaces": {
"root": {
"location": "/",
"writable": false,
"defaultInputFormat": null
@nitisht
nitisht / Mint_Automation.md
Last active November 16, 2017 18:05
Mint Automated runs for each PR

Mint

Mint is a Docker image based platform to run tests against Minio server using various Minio, AWS SDKs and Tools. Read more on Mint here.

Requirements of Mint automation pod

Following are the steps we need to follow

  • Once a PR is opened on minio/minio repository, GitHub sends webhook notifications to our web server.
  • Web server parses the incoming PR information and passes on this to an automation script. We can use https://github.com/adnanh/webhook or https://github.com/ceejbot/jthoober as the webhook receiver.
  • The automation script checks out the PR locally and builds Minio Docker image.
  • Push the Docker image to play.minio.io Docker registry.
@nitisht
nitisht / StorageClass.md
Last active December 4, 2017 18:46
x-amz-storage-class implementation proposal

Minio Storage Class

Storage Classes provide administrators an option to set number of parity disks used for erasure encoded objects.

Current behaviour

By default Minio server uses half of the available disks to store data and rest for parity. This means if you have N disks, Minio server will erasure-encode data across as N/2 data disks and N/2 parity disks.

The write quorum is (N/2) + 1 and read quorum is N/2.

With Storage class support

Before starting Minio server, administrator can set these environment variables.

@nitisht
nitisht / Nginx_Minio_SSL_Term.md
Last active March 6, 2024 22:44
Self-signed certificate setup with Nginx proxying requests to Minio Server

Nginx SSL termination for Minio server load balanced setup

This document explains the steps required to set up Nginx proxy and SSL termination for Minio servers running in the backgronud.

Generate self signed certificate

Create a directory /etc/nginx/ssl/domain.abc, here domain.abc is the name of your website domain. Then use the below commands

sudo openssl genrsa -out private.key 2048
sudo openssl req -new -x509 -days 3650 -key private.key -out public.crt -subj "/C=US/ST=state/L=location/O=organization/CN=domain.abc"