SlideShare a Scribd company logo
1
High Performance, Cloud Native Object Storage
January 2020
high performance, software defined, distributed object
storage
private cloud
MINIO SERVER MINIO CLIENT MINIO SDK
2
What is MinIO
3
What Makes Us Different
MinIO is focused on
performance. We believe we
are the fastest object store in
existence.
MinIO is cloud native. It is the
most Kubernetes-friendly
solution available for the
private cloud.
MinIO is 100% open-source
giving us an increasingly
dominant position in the
enterprise.
MinIO is built for scale using
the same philosophy as the
web scalers.
MinIO designed for simplicity.
Simplicity scales - across
clients, clouds and machines.
4
What Makes Us the Standard for the Private Cloud
DOCKER PULLS
GITHUB STARS
SLACK MEMBERS
CONTRIBUTORS
5
Exceptional Growth
DOCKER PULLS DIRECT DOWNLOADSUNIQUE USERS
78% YOY Growth. 202% YOY Growth. 265% YOY Growth.
6
Developer Traction
Kubernetes: 62,537
Docker: 56,181
Minio: 19,956
Apache/Kafka: 14,763
Apache/Mesos: 4,409
*as of january 20th, 2020
7
Understanding MinIO’s Reach
More than half of the Fortune
500 runs MinIO in some
capacity. Of the Fortune 100,
84 companies run MinIO.
In the last month we tracked 19K
live instances of MinIO across
10K organizations + SIX
continents.
MinIO is deployed in 153
countries. North America,
Europe dominate, followed
by China and other
developing economies.
A Global Franchise
8
9
Across Industries
10
Across Configurations
62% of all
instances are
containerized
using Docker.
Only 3% of all
instances are running
in pure Gateway
mode. NAS, Azure, S3
and GCS make up the
top four.
Linux dominates
(81%) followed by
Windows (14%)
DOCKER GATEWAY OS
27% of all instances
managed using
Kubernetes - 43% of
the containerized
instances.
KUBERNETES
11
MinIO Powers Dozens of Product Offerings
MinIO was selected to power the Digital
Stream Processing product. Additional
products in the pipeline.
McKesson’s radiology product uses MinIO
for image storage.
Datera’s object storage layer is MinIO.
MinIO powers the object storage
component of this industry leading EHR.
“Minio object storage perfectly compliments
Portworx by providing a simple object storage
service layer on top of Portworx data services.”
Nutanix Objects/Buckets is based entirely
on MinIO and is referenced in their
documentation.
The recommended object store for Cloud
Private/Kubernetes.
“For customers who want to interact with
Qumulo via the S3 SDK or API, we
recommend using Minio.”
12
16 Node HDD
25 Gbe Network
Avg Read
Throughput
(GET)
Avg Write
Throughput
(PUT)
Distributed 10.81 GB/s 8.57 GB/s
Distributed with
Encryption
9.38 GB/s 6.91 GB/s
S3 Benchmark - Spinning Disk: 16 Nodes
13
24 Node HDD
25 Gbe Network
Avg Read
Throughput
(GET)
Avg Write
Throughput
(PUT)
Distributed 16.3 GB/s 9.4 GB/s
S3 Benchmark - Spinning Disk: 24 Nodes
14
8 Node NVMe
100 Gbe Network
Avg Read
Throughput
(GET)
Avg Write
Throughput
(PUT)
Distributed 46.54 GB/s 34.4 GB/s
Distributed with
Encryption
46.4 GB/s 34.6 GB/s
S3 Benchmark - NVMe: 8 Nodes
15
32 Node NVMe
100 Gbe Network
Read
Throughput
(GET)
Write
Throughput
(PUT)
Distributed 183.2 GB/s 171.3 GB/s
Distributed with
Encryption
162 GB/s 114.7 GB/s
S3 Benchmark - NVMe: 32 Nodes
16
The addition of a separate network for internode traffic would effectively double the performance.
Linear Scalability
HDD Scalability NVMe Scalability
8.57
10.81
9.4
17
20
15
10
5
0
16 node 24 node
Maximum Bandwidth (GB/sec)
PUT
GET
Trendline
200
150
100
50
0
8 node 32 node
Maximum Bandwidth (GB/sec)
34.4
46.5
171.3
183.2
PUT
GET
Trendline
18
Faster than HDFS
19
Spark and Presto: MinIO vs. AWS
Why MinIO is so Fast
SINGLE LAYER
We are a single layer, object only.
Multiple layers cause latency, complexity.
SIMD ACCELERATION
By writing the core parts of MinIO in assembly
language (SIMD extensions) we are hyperfast on
commodity HW.
COMBINATION OF GO + GOASM
Delivering C-like performance by combining
GO + Assembly Language and targeting
them to the task.
NO METADATA DATABASE
By writing object and metadata together you
make all operations single and atomic.
Multiple steps for other vendors.
21
Big Data/Machine Learning
environments
HDFS replacements
High performance data
lake/warehouse infrastructure
Cloud native applications
(replacing file + block)
Multi-cloud environments
(portability)
Endpoint for streaming
workloads
By deploying for performance, long term archival storage and disaster recovery are effectively free.
MinIO Deployment Use Cases
22
Takeaways
MinIO has grown into the
dominant provider of object
storage in the private cloud.
Performance and scalability are
key criteria and MinIO is leading
the market on both fronts.
We are entering the
Kubernetes-era of
computing and no object
storage solution is is better
positioned than MinIO.
23
24
Core Architecture
P
P
P
P
SERVER 2 SERVER 3 SERVER 32SERVER 1
OBJECT
1
OBJECT
2
100 GBe SWITCH
S3 API
minio server http://host{1...32}/export{1...32}
MinIO Architecture
26
At the Center of a Modern Architecture
S3
SELECT
SQL
S3
S3
SELECT
SQL
S3 SELECT
Data Processing
Applications
Streaming Data
Events
Logs
Sensor Data
Social
Transaction
Data Infrastructure
Machine Learning
STATELESS
27
MinIO/Kubernetes Deployment Scenarios
Stateful SetsDeployment M-Operator M3 (mcube)
28
VMware’s Standard for K8’s Storage
Kubernetes Storage Leadership
Source: CNCF Survey 2018
Kubernetes related Dockerhub image downloads:
Source: Torsten Volk, EMA
Which of these cloud native storage projects is your
company / organization using:
30
MinIO on NAS & Cloud (gateway mode)
S3
NAS / Cloud Server
NFSNFS
APPLICATIONS
31
Splunk SmartStore and MinIO
32
Performance Oriented, Enterprise Grade Features
Amazon S3 API is the de facto standard for object storage.
MinIO implements Amazon S3 v2/v4 API.
MinIO has a pluggable back-end with integrations with
external storage backends such as NAS, Google Cloud Storage,
and Azure Blob Storage.
MinIO server triggers Lambda functions through event
notification service. OCR, audit compliance are good
examples of lambda computing.
You may lose up to half the number of drives and still recover
from it. Data protection code is accelerated using SIMD
instructions on x64 and ARM CPUs.
Federation allows combining unlimited number of
MinIO instances to form a single global.
Disk-cache feature allows content to be closer to the
tenants. This enables objects to be delivered with
high performance and reduced bandwidth cost.
MinIO Server integrates with Identity Providers such as
WSO2, Keycloak, Okta, Ping Identity to allow applications
or users to authenticate and use Object Storage.
MinIO provides confidentiality, integrity and authenticity
assurances for encrypted data with negligible performance
overhead.
MinIO supports WORM (Write-Once-Read-Many) for
long-term data retention as mandated by regulations or
compliance rules.
S3 Select filters the contents of an object using SQL to parse
object data into records, and returns only records that
match the query.
Scalability
DATA CENTER 1 DATA CENTER 2 DATA CENTER 3
ETCD
US-EAST US-WEST
DNS
EU-1 EU-2
▪
▪
▪
Continuous Disaster Recovery
mc mirror --watch --recursive dc1/ dc2/
PRIMARY SITE SECONDARY SITE
network
OBJECTS
ELASTICSEARCH
POSTGRESQL
REDIS
AMQP
NATS IO
WEBHOOKS
MQTT
LAMBDA FUNCTION
BATCH PROCESS
AUDIT LOGS
THUMBNAIL
OCR
COMPRESS
MinIO Lambda Functions
Identity & Access Management
Client grant
OpenID Connect
Token
Get object
Token
STS
Temporary
credentials
IDENTITY
PROVIDER
(IdP)
APPLICATION
MinIO Encryption
SSE-S3
SSE-C
My Bucket
My Object
Data
KMS
Random IV
Algorithm Name
Sealed Object Key
Random IV
Sealed Object Key
KMS Key ID
Sealed KMS Data Key
Algorithm Name
Metadata
Metadata
Disk1
MyBucket
MyObject
part.1
export-xl/
xl.json
{
“version”: “1.0.1”,
“format”: “xl”,
“stat”: {
“size”: 2286,
“modTime”: “2017-12-02T00:24:20.975968336Z”,
},
“erasure”: {
“algorithm”: “klauspost/reedsolomon/vandermonde”,
“data”: 2,
“parity”: 2,
“blockSize”: 10485760,
“index”: 2,
“distribution”: “[
2,
3,
4,
1
],
“checksum”: [
{
“name”: “part.1”,
“algorithm”: “blake2b”,
“hash”: “c24fa0451fd85a3a482c...b672b7f”
}
]
},
“minio”: {
“release”: “DEVELOPMENT.GOGET”
},
“meta”: {
“content-type”: “application/octet-stream”,
“etag”: “c1d217c52d44c9eab00e81496b2b91b6”
},
“parts”: [
{
“number”: 1,
“name”: “part.1”,
“etag”: “”,
“size”: 2286
}
]
}
Disk2
MyBucket
MyObject
part.1
xl.json
Disk3
MyBucket
MyObject
part.1
xl.json
Disk4
MyBucket
MyObject
part.1
xl.json
Erasure Code
Internals
39
MinIO Reference Hardware
MinIO Encryption - SSE-C
MyBucket
S3 Client
HTTPS
HTTP Body
HTTP Headers
X--Amz-...-Customer-Algorithm
X-Amz-...-Customer-Key
X-Amz-...-Customer-Key-MD5
My Object
Generated
randomly
Object
Key
SSE
Key
Sent by
client
Generated
randomly
IV
Sealed Object
Key
Object
Name
Bucket
Name IV
Algorithm Name
Sealed Object Key
Metadata
Object Data
MinIO Encryption - SSE-S3
My Bucket
S3 Client
HTTPS
HTTP Body
HTTP Headers
X-Amz-Server-Side-
Encryption: AES256
My Object
Generated
randomly
Generated
randomly
IV
Algorithm Name
Sealed Object Key
Metadata
Object Data
KMS
KMS Sealed Key
KMS Key ID
Object
Key
KMS
Data Key
IV
Sealed Object
Key
Object
Name
Bucket
Name
KMS
Sealed Key
Master Key 1

More Related Content

PPTX
Minio Cloud Storage
PPTX
RocksDB detail
PDF
RocksDB Performance and Reliability Practices
PPTX
High Performance Object Storage in 30 Minutes with Supermicro and MinIO
PDF
Tech Talk: RocksDB Slides by Dhruba Borthakur & Haobo Xu of Facebook
PDF
Ceph and RocksDB
PPTX
Reusable, composable, battle-tested Terraform modules
PDF
Clouds and Tools: Cheat Sheets & Infographics
Minio Cloud Storage
RocksDB detail
RocksDB Performance and Reliability Practices
High Performance Object Storage in 30 Minutes with Supermicro and MinIO
Tech Talk: RocksDB Slides by Dhruba Borthakur & Haobo Xu of Facebook
Ceph and RocksDB
Reusable, composable, battle-tested Terraform modules
Clouds and Tools: Cheat Sheets & Infographics

What's hot (20)

PDF
initramfsについて
ODP
Kubernetes Architecture
PPTX
Apache Spark on Kubernetes入門(Open Source Conference 2021 Online Hiroshima 発表資料)
PDF
Alexei Vladishev - Zabbix - Monitoring Solution for Everyone
PDF
Elastic Stack 을 이용한 게임 서비스 통합 로깅 플랫폼 - elastic{on} 2019 Seoul
PDF
ビッグデータ処理データベースの全体像と使い分け
PDF
2019.06.27 Intro to Ceph
PDF
[GKE & Spanner 勉強会] Cloud Spanner の技術概要
PPTX
Minio ♥ Go
PDF
MySQLバックアップの基本
PDF
DockerとPodmanの比較
PDF
Apache Bigtop3.2 (仮)(Open Source Conference 2022 Online/Hiroshima 発表資料)
PDF
Redis cluster
PDF
Hadoop/Spark で Amazon S3 を徹底的に使いこなすワザ (Hadoop / Spark Conference Japan 2019)
PDF
[Cloud OnAir] BigQuery の仕組みからベストプラクティスまでのご紹介 2018年9月6日 放送
PDF
PostgreSQLをKubernetes上で活用するためのOperator紹介!(Cloud Native Database Meetup #3 発表資料)
PDF
Grafana Loki: like Prometheus, but for Logs
PPTX
世の中のPostgreSQLエンジニアのpsql設定(第34回PostgreSQLアンカンファレンス@オンライン 発表資料)
PDF
SeaweedFS introduction
PDF
Ceph Object Storage Reference Architecture Performance and Sizing Guide
initramfsについて
Kubernetes Architecture
Apache Spark on Kubernetes入門(Open Source Conference 2021 Online Hiroshima 発表資料)
Alexei Vladishev - Zabbix - Monitoring Solution for Everyone
Elastic Stack 을 이용한 게임 서비스 통합 로깅 플랫폼 - elastic{on} 2019 Seoul
ビッグデータ処理データベースの全体像と使い分け
2019.06.27 Intro to Ceph
[GKE & Spanner 勉強会] Cloud Spanner の技術概要
Minio ♥ Go
MySQLバックアップの基本
DockerとPodmanの比較
Apache Bigtop3.2 (仮)(Open Source Conference 2022 Online/Hiroshima 発表資料)
Redis cluster
Hadoop/Spark で Amazon S3 を徹底的に使いこなすワザ (Hadoop / Spark Conference Japan 2019)
[Cloud OnAir] BigQuery の仕組みからベストプラクティスまでのご紹介 2018年9月6日 放送
PostgreSQLをKubernetes上で活用するためのOperator紹介!(Cloud Native Database Meetup #3 発表資料)
Grafana Loki: like Prometheus, but for Logs
世の中のPostgreSQLエンジニアのpsql設定(第34回PostgreSQLアンカンファレンス@オンライン 発表資料)
SeaweedFS introduction
Ceph Object Storage Reference Architecture Performance and Sizing Guide
Ad

Similar to MinIO January 2020 Briefing (20)

PDF
Speed up Digital Transformation with Openstack Cloud & Software Defined Storage
PPTX
Minio scale 15 x
PDF
critical_capabilities_for_ob_271719 copy
PPTX
Object Storage in a Cloud-Native Container Envirnoment
PPTX
ECS/Cloud Object Storage - DevOps Day
PDF
IT Press Tour #17 - OpenIO & Technology
PPTX
EMC ScaleIO Overview
PPTX
Webinar: Solving the NAS to Object Storage Challenge
PPTX
Managing storage on Prem and in Cloud
PPTX
Datacenter 2014: IPnett - Martin Milnert
PDF
The Enterprise File Fabric for OpenIO
PPTX
storage system, iscsi,file storage, NAS, SAS
PPTX
Webinar: 2019 Storage Strategies Series - What’s Your Plan for Object Storage?
PPTX
Webinar: Cloud Storage: The 5 Reasons IT Can Do it Better
PDF
S104873 nas-sizing-jburg-v1809d
PPTX
SoftLayer Storage Services Overview (for Interop Las Vegas 2015)
PDF
SNIA – Standard e scenari per il Cloud Storage
PPTX
SoftLayer Storage Services Overview
PDF
IBM Spectrum Scale for File and Object Storage
PPTX
VMworld 2015: The Future of Software- Defined Storage- What Does it Look Like...
Speed up Digital Transformation with Openstack Cloud & Software Defined Storage
Minio scale 15 x
critical_capabilities_for_ob_271719 copy
Object Storage in a Cloud-Native Container Envirnoment
ECS/Cloud Object Storage - DevOps Day
IT Press Tour #17 - OpenIO & Technology
EMC ScaleIO Overview
Webinar: Solving the NAS to Object Storage Challenge
Managing storage on Prem and in Cloud
Datacenter 2014: IPnett - Martin Milnert
The Enterprise File Fabric for OpenIO
storage system, iscsi,file storage, NAS, SAS
Webinar: 2019 Storage Strategies Series - What’s Your Plan for Object Storage?
Webinar: Cloud Storage: The 5 Reasons IT Can Do it Better
S104873 nas-sizing-jburg-v1809d
SoftLayer Storage Services Overview (for Interop Las Vegas 2015)
SNIA – Standard e scenari per il Cloud Storage
SoftLayer Storage Services Overview
IBM Spectrum Scale for File and Object Storage
VMworld 2015: The Future of Software- Defined Storage- What Does it Look Like...
Ad

Recently uploaded (20)

PDF
Digital Strategies for Manufacturing Companies
PPTX
L1 - Introduction to python Backend.pptx
PPTX
ManageIQ - Sprint 268 Review - Slide Deck
PPTX
Operating system designcfffgfgggggggvggggggggg
PPT
Introduction Database Management System for Course Database
PDF
How to Migrate SBCGlobal Email to Yahoo Easily
PPTX
CHAPTER 12 - CYBER SECURITY AND FUTURE SKILLS (1) (1).pptx
PDF
medical staffing services at VALiNTRY
PPTX
Agentic AI : A Practical Guide. Undersating, Implementing and Scaling Autono...
PDF
Navsoft: AI-Powered Business Solutions & Custom Software Development
PPTX
Lecture 3: Operating Systems Introduction to Computer Hardware Systems
PPTX
VVF-Customer-Presentation2025-Ver1.9.pptx
PDF
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool
PDF
SAP S4 Hana Brochure 3 (PTS SYSTEMS AND SOLUTIONS)
PDF
Nekopoi APK 2025 free lastest update
PDF
2025 Textile ERP Trends: SAP, Odoo & Oracle
PDF
System and Network Administraation Chapter 3
PDF
Audit Checklist Design Aligning with ISO, IATF, and Industry Standards — Omne...
PPTX
ISO 45001 Occupational Health and Safety Management System
PPTX
Transform Your Business with a Software ERP System
Digital Strategies for Manufacturing Companies
L1 - Introduction to python Backend.pptx
ManageIQ - Sprint 268 Review - Slide Deck
Operating system designcfffgfgggggggvggggggggg
Introduction Database Management System for Course Database
How to Migrate SBCGlobal Email to Yahoo Easily
CHAPTER 12 - CYBER SECURITY AND FUTURE SKILLS (1) (1).pptx
medical staffing services at VALiNTRY
Agentic AI : A Practical Guide. Undersating, Implementing and Scaling Autono...
Navsoft: AI-Powered Business Solutions & Custom Software Development
Lecture 3: Operating Systems Introduction to Computer Hardware Systems
VVF-Customer-Presentation2025-Ver1.9.pptx
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool
SAP S4 Hana Brochure 3 (PTS SYSTEMS AND SOLUTIONS)
Nekopoi APK 2025 free lastest update
2025 Textile ERP Trends: SAP, Odoo & Oracle
System and Network Administraation Chapter 3
Audit Checklist Design Aligning with ISO, IATF, and Industry Standards — Omne...
ISO 45001 Occupational Health and Safety Management System
Transform Your Business with a Software ERP System

MinIO January 2020 Briefing

  • 1. 1 High Performance, Cloud Native Object Storage January 2020
  • 2. high performance, software defined, distributed object storage private cloud MINIO SERVER MINIO CLIENT MINIO SDK 2 What is MinIO
  • 3. 3 What Makes Us Different MinIO is focused on performance. We believe we are the fastest object store in existence. MinIO is cloud native. It is the most Kubernetes-friendly solution available for the private cloud. MinIO is 100% open-source giving us an increasingly dominant position in the enterprise. MinIO is built for scale using the same philosophy as the web scalers. MinIO designed for simplicity. Simplicity scales - across clients, clouds and machines.
  • 4. 4 What Makes Us the Standard for the Private Cloud DOCKER PULLS GITHUB STARS SLACK MEMBERS CONTRIBUTORS
  • 5. 5 Exceptional Growth DOCKER PULLS DIRECT DOWNLOADSUNIQUE USERS 78% YOY Growth. 202% YOY Growth. 265% YOY Growth.
  • 6. 6 Developer Traction Kubernetes: 62,537 Docker: 56,181 Minio: 19,956 Apache/Kafka: 14,763 Apache/Mesos: 4,409 *as of january 20th, 2020
  • 7. 7 Understanding MinIO’s Reach More than half of the Fortune 500 runs MinIO in some capacity. Of the Fortune 100, 84 companies run MinIO. In the last month we tracked 19K live instances of MinIO across 10K organizations + SIX continents. MinIO is deployed in 153 countries. North America, Europe dominate, followed by China and other developing economies.
  • 10. 10 Across Configurations 62% of all instances are containerized using Docker. Only 3% of all instances are running in pure Gateway mode. NAS, Azure, S3 and GCS make up the top four. Linux dominates (81%) followed by Windows (14%) DOCKER GATEWAY OS 27% of all instances managed using Kubernetes - 43% of the containerized instances. KUBERNETES
  • 11. 11 MinIO Powers Dozens of Product Offerings MinIO was selected to power the Digital Stream Processing product. Additional products in the pipeline. McKesson’s radiology product uses MinIO for image storage. Datera’s object storage layer is MinIO. MinIO powers the object storage component of this industry leading EHR. “Minio object storage perfectly compliments Portworx by providing a simple object storage service layer on top of Portworx data services.” Nutanix Objects/Buckets is based entirely on MinIO and is referenced in their documentation. The recommended object store for Cloud Private/Kubernetes. “For customers who want to interact with Qumulo via the S3 SDK or API, we recommend using Minio.”
  • 12. 12
  • 13. 16 Node HDD 25 Gbe Network Avg Read Throughput (GET) Avg Write Throughput (PUT) Distributed 10.81 GB/s 8.57 GB/s Distributed with Encryption 9.38 GB/s 6.91 GB/s S3 Benchmark - Spinning Disk: 16 Nodes 13
  • 14. 24 Node HDD 25 Gbe Network Avg Read Throughput (GET) Avg Write Throughput (PUT) Distributed 16.3 GB/s 9.4 GB/s S3 Benchmark - Spinning Disk: 24 Nodes 14
  • 15. 8 Node NVMe 100 Gbe Network Avg Read Throughput (GET) Avg Write Throughput (PUT) Distributed 46.54 GB/s 34.4 GB/s Distributed with Encryption 46.4 GB/s 34.6 GB/s S3 Benchmark - NVMe: 8 Nodes 15
  • 16. 32 Node NVMe 100 Gbe Network Read Throughput (GET) Write Throughput (PUT) Distributed 183.2 GB/s 171.3 GB/s Distributed with Encryption 162 GB/s 114.7 GB/s S3 Benchmark - NVMe: 32 Nodes 16 The addition of a separate network for internode traffic would effectively double the performance.
  • 17. Linear Scalability HDD Scalability NVMe Scalability 8.57 10.81 9.4 17 20 15 10 5 0 16 node 24 node Maximum Bandwidth (GB/sec) PUT GET Trendline 200 150 100 50 0 8 node 32 node Maximum Bandwidth (GB/sec) 34.4 46.5 171.3 183.2 PUT GET Trendline
  • 19. 19 Spark and Presto: MinIO vs. AWS
  • 20. Why MinIO is so Fast SINGLE LAYER We are a single layer, object only. Multiple layers cause latency, complexity. SIMD ACCELERATION By writing the core parts of MinIO in assembly language (SIMD extensions) we are hyperfast on commodity HW. COMBINATION OF GO + GOASM Delivering C-like performance by combining GO + Assembly Language and targeting them to the task. NO METADATA DATABASE By writing object and metadata together you make all operations single and atomic. Multiple steps for other vendors.
  • 21. 21 Big Data/Machine Learning environments HDFS replacements High performance data lake/warehouse infrastructure Cloud native applications (replacing file + block) Multi-cloud environments (portability) Endpoint for streaming workloads By deploying for performance, long term archival storage and disaster recovery are effectively free. MinIO Deployment Use Cases
  • 22. 22 Takeaways MinIO has grown into the dominant provider of object storage in the private cloud. Performance and scalability are key criteria and MinIO is leading the market on both fronts. We are entering the Kubernetes-era of computing and no object storage solution is is better positioned than MinIO.
  • 23. 23
  • 25. P P P P SERVER 2 SERVER 3 SERVER 32SERVER 1 OBJECT 1 OBJECT 2 100 GBe SWITCH S3 API minio server http://host{1...32}/export{1...32} MinIO Architecture
  • 26. 26 At the Center of a Modern Architecture S3 SELECT SQL S3 S3 SELECT SQL S3 SELECT Data Processing Applications Streaming Data Events Logs Sensor Data Social Transaction Data Infrastructure Machine Learning STATELESS
  • 27. 27 MinIO/Kubernetes Deployment Scenarios Stateful SetsDeployment M-Operator M3 (mcube)
  • 28. 28 VMware’s Standard for K8’s Storage
  • 29. Kubernetes Storage Leadership Source: CNCF Survey 2018 Kubernetes related Dockerhub image downloads: Source: Torsten Volk, EMA Which of these cloud native storage projects is your company / organization using:
  • 30. 30 MinIO on NAS & Cloud (gateway mode) S3 NAS / Cloud Server NFSNFS APPLICATIONS
  • 32. 32 Performance Oriented, Enterprise Grade Features Amazon S3 API is the de facto standard for object storage. MinIO implements Amazon S3 v2/v4 API. MinIO has a pluggable back-end with integrations with external storage backends such as NAS, Google Cloud Storage, and Azure Blob Storage. MinIO server triggers Lambda functions through event notification service. OCR, audit compliance are good examples of lambda computing. You may lose up to half the number of drives and still recover from it. Data protection code is accelerated using SIMD instructions on x64 and ARM CPUs. Federation allows combining unlimited number of MinIO instances to form a single global. Disk-cache feature allows content to be closer to the tenants. This enables objects to be delivered with high performance and reduced bandwidth cost. MinIO Server integrates with Identity Providers such as WSO2, Keycloak, Okta, Ping Identity to allow applications or users to authenticate and use Object Storage. MinIO provides confidentiality, integrity and authenticity assurances for encrypted data with negligible performance overhead. MinIO supports WORM (Write-Once-Read-Many) for long-term data retention as mandated by regulations or compliance rules. S3 Select filters the contents of an object using SQL to parse object data into records, and returns only records that match the query.
  • 33. Scalability DATA CENTER 1 DATA CENTER 2 DATA CENTER 3 ETCD US-EAST US-WEST DNS EU-1 EU-2 ▪ ▪ ▪
  • 34. Continuous Disaster Recovery mc mirror --watch --recursive dc1/ dc2/ PRIMARY SITE SECONDARY SITE network
  • 35. OBJECTS ELASTICSEARCH POSTGRESQL REDIS AMQP NATS IO WEBHOOKS MQTT LAMBDA FUNCTION BATCH PROCESS AUDIT LOGS THUMBNAIL OCR COMPRESS MinIO Lambda Functions
  • 36. Identity & Access Management Client grant OpenID Connect Token Get object Token STS Temporary credentials IDENTITY PROVIDER (IdP) APPLICATION
  • 37. MinIO Encryption SSE-S3 SSE-C My Bucket My Object Data KMS Random IV Algorithm Name Sealed Object Key Random IV Sealed Object Key KMS Key ID Sealed KMS Data Key Algorithm Name Metadata Metadata
  • 38. Disk1 MyBucket MyObject part.1 export-xl/ xl.json { “version”: “1.0.1”, “format”: “xl”, “stat”: { “size”: 2286, “modTime”: “2017-12-02T00:24:20.975968336Z”, }, “erasure”: { “algorithm”: “klauspost/reedsolomon/vandermonde”, “data”: 2, “parity”: 2, “blockSize”: 10485760, “index”: 2, “distribution”: “[ 2, 3, 4, 1 ], “checksum”: [ { “name”: “part.1”, “algorithm”: “blake2b”, “hash”: “c24fa0451fd85a3a482c...b672b7f” } ] }, “minio”: { “release”: “DEVELOPMENT.GOGET” }, “meta”: { “content-type”: “application/octet-stream”, “etag”: “c1d217c52d44c9eab00e81496b2b91b6” }, “parts”: [ { “number”: 1, “name”: “part.1”, “etag”: “”, “size”: 2286 } ] } Disk2 MyBucket MyObject part.1 xl.json Disk3 MyBucket MyObject part.1 xl.json Disk4 MyBucket MyObject part.1 xl.json Erasure Code Internals
  • 40. MinIO Encryption - SSE-C MyBucket S3 Client HTTPS HTTP Body HTTP Headers X--Amz-...-Customer-Algorithm X-Amz-...-Customer-Key X-Amz-...-Customer-Key-MD5 My Object Generated randomly Object Key SSE Key Sent by client Generated randomly IV Sealed Object Key Object Name Bucket Name IV Algorithm Name Sealed Object Key Metadata Object Data
  • 41. MinIO Encryption - SSE-S3 My Bucket S3 Client HTTPS HTTP Body HTTP Headers X-Amz-Server-Side- Encryption: AES256 My Object Generated randomly Generated randomly IV Algorithm Name Sealed Object Key Metadata Object Data KMS KMS Sealed Key KMS Key ID Object Key KMS Data Key IV Sealed Object Key Object Name Bucket Name KMS Sealed Key Master Key 1