Jump to content

MinIO: Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
MinIO is licensed under the Apache License v2.0
TyronTO (talk | contribs)
m added references, updated outdated information, fixed the tone of the content,
Tags: Reverted COI template removed
Line 1: Line 1:
{{Advert|date=September 2019}}
{{Infobox software
{{Infobox software
| name = MinIO
| name = MinIO
Line 5: Line 4:
| logo = https://min.io/resources/img/logo/main-logo.svg
| logo = https://min.io/resources/img/logo/main-logo.svg
| developer = MinIO, Inc
| developer = MinIO, Inc
| released = {{Start date and age|df=yes|2016|03|11}}<ref>{{Cite web|title=minio/minio at RELEASE.2021-02-19T04-38-02Z|url=https://github.com/minio/minio/releases/tag/RELEASE.2021-02-19T04-38-02Z|website=GitHub|language=en}}</ref>
| released = {{Start date and age|df=yes|2016|03|11}}<ref>{{Cite web|title=minio/minio at RELEASE.021-03-17T02-33-02Z|url=https://github.com/minio/minio/releases/tag/RELEASE.2021-02-19T04-38-02Z|website=GitHub|language=en}}</ref>
| programming language = [[Go (programming language)|Go]]
| programming language = [[Go (programming language)|Go]]
| genre = [[Object storage]]
| genre = [[Object storage]]
| license = [[Apache License|Apache License v2.0]]
| license = [[GNU Affero General Public License|AGPL v3]]
}}
}}


'''MinIO''' is an [[Amazon S3]] compatible server-side software storage stack, it can handle unstructured data such as photos, videos, log files, backups, and container images with currently the maximum supported object size of 5TB.{{fact|date=January 2021}}
'''MinIO''' is an [[Amazon S3]] compatible object storage suite capable of handling structured and unstructured data including log files, artifacts, backups, container images, photos and videos. The current maximum supported object size is 5TB.<ref>{{Cite web |url=https://www.kintohub.com/catalogs/minio/ |title=Minio - Kintohub |website= www.kintohub.com |access-date=1 January 2018}}</ref><ref>{{Cite web |url=https://backup.ninja/news/how-build-your-own-object-storage-using-minio |title=How to Build Your Own Object Storage using MinIO |website=backup.ninja |access-date=6 August 2020}}</ref>


== History & development ==
MinIO's main developer is MinIO Inc, a [[Silicon Valley]] based technology startup founded by Anand Babu Periasamy, Garima Kapoor, and Harshavardhana in November 2014.{{fact|date=January 2021}}


== History & Development ==
MinIO has published a number of [[Benchmark (computing)|benchmarks]] to disclose both its own performance and the performance of an [[object storage]] in general, those include comparisons to an [[Amazon S3]] for [[Presto (SQL query engine)|Presto]] and [[Apache spark|Spark]] as well as throughput results for the S3Benchmark on [[Hard disk drive|HDD]] and [[NVM Express|NVMe]] drives.<ref>{{cite web|url=https://blocksandfiles.com/2019/07/24/minio-object-storage-benchmarks|title=Traditional file and block storage vendors are toast – Minio|first=Chris|last=Mellor|publisher=Blocks & Files|website=Blocks & Files|date=24 July 2019|access-date=4 September 2019}}</ref>


MinIO's main developer is MinIO Inc, a [[Silicon Valley]] based technology startup founded by Anand Babu Periasamy, Garima Kapoor, and Harshavardhana in November 2014.<ref>{{Cite web |url=https://siliconangle.com/2020/09/30/growing-preference-object-storage-will-make-public-private-clouds-look-alike-vmworld/ |title=Why the growing preference for object storage will make the public and private clouds look alike |website=siliconangle.com |access-date=30 September 2020}}</ref><ref>{{Cite web |url=https://www.thehindu.com/business/Industry/gluster-founder-launches-cloud-storage-startup-minio/article7326468.ece |title=Gluster founder launches cloud storage start-up Minio |website=www.thehindu.com |access-date=17 June 2015}}</ref>
==Architecture==

MinIO storage stack has three major components: '''MinIO Server''', '''MinIO Client''' (a.k.a. <code>mc</code>, which is a desktop client for the file management with an [[Amazon S3]] compatible servers), and '''MinIO Client SDK''' that can be used by application developers to interact with an [[Amazon S3]] compatible server.
MinIO has published benchmarks to disclose its performance. The [[benchmarks]] include comparisons to an [[Amazon S3]] for [[Presto]] and [[Spark]], HDFS and also throughput results for the S3Benchmark on [[HDD]] and [[NVMe]] drives.<ref>{{Cite web |url=https://blocksandfiles.com/2019/07/24/minio-object-storage-benchmarks/ |title=Traditional file and block storage vendors are toast – Minio |website=blocksandfiles.com |access-date=24 July 2019}}</ref><ref>{{Cite web |url=https://blocksandfiles.com/2019/11/13/minio-benchmark-object-storage-speed-wars/ |title=MinIO fires fresh salvo in object storage speed wars |website=blocksandfiles.com |access-date=13 November 2019}}</ref>

== Architecture ==
MinIO storage stack has three major components: '''MinIO Server''', '''MinIO Client''', and '''MinIO Client SDK''' that can be used by application developers to interact with an [[Amazon S3]] compatible server.<ref>{{Cite web |url=https://www.digitalocean.com/community/tutorials/how-to-set-up-an-object-storage-server-using-minio-on-ubuntu-18-04 |title=How To Set Up an Object Storage Server Using Minio on Ubuntu 18.04 |website=www.digitalocean.com |access-date=13 December 2019}}</ref>


=== MinIO Server ===
=== MinIO Server ===
MinIO [[cloud storage]] server is designed to be minimal and scalable. It is light enough to be bundled along with the application stack, similar to [[NodeJS]], and [[Redis]].
MinIO [[cloud storage]] server is minimal and scalable. It can be bundled along with the application stack, similar to [[NodeJS]], and [[Redis]].<ref>{{Cite web |url=https://dev.to/rubiin/getting-started-with-minio-on-nestjs-3mg5 |title=Getting started with minio on nestjs |website=dev.to |access-date=24 September 2019}}</ref>


Designed for high performance, [[petabyte|peta]] scale workloads {{fact|date=January 2021}}, MinIO offers a suite of features that are specific to large [[Enterprise resource planning|enterprise deployments]], these include [[erasure coding]], [[data degradation|bitrot]] protection, [[encryption]]/[[Write once read many|WORM]], [[identity management]], continuous [[Replication (computing)|replication]], global federation, and multi-cloud deployments via gateway mode.
Designed for [[peta]] scale workloads MinIO offers features specific to large [[Enterprise resource planning|enterprise deployments]], these include inline [[erasure coding]], [[bitrot]] protection, [[encryption]], object locking, [[identity management]], active active [[replication]], monitoring, load balancing, tiering, and multi-cloud deployments via gateway mode.<ref>{{Cite web |url=https://www.brighttalk.com/webcast/18584/457760/optimizing-the-observability-pipeline-through-the-private-cloud-minio-and-cribl |title=Optimizing the Observability Pipeline Through the Private Cloud: MinIO and Cribl |website=www.brighttalk.com |access-date=26 January 2021}}</ref>


MinIO server is hardware [[agnostic]], it can be installed on physical or virtual machines or launched as [[Docker (software)|Docker]] containers and deployed on container orchestration platforms like [[Kubernetes]],<ref >{{cite web|url=https://filestorage.blogspot.com/2020/12/minio-morphs-from-on-premise-s3-storage.html|title=MinIO morphs from on-premise S3 storage to hybrid cloud|last=Nicolas|first=Philippe|website=File Storage blog|access-date=14 December 2020}}</ref> [[Mesosphere (software)|Mesosphere]], and Docker Swarm.{{fact|date=January 2021}}
MinIO server is hardware [[agnostic]] and can be installed on physical or virtual machines or launched as [[Docker]] containers and deployed on container orchestration platforms like [[Kubernetes]], [[Mesosphere]], and Docker Swarm.<ref>{{Cite web |url=https://developer.cisco.com/codeexchange/github/repo/nsthompson/minio-ansible-pyats-sandbox/ |title=minio-ansible-pyats-sandbox |website=developer.cisco.com |access-date=3 August 2020}}</ref><ref>{{Cite web |url=https://www.theregister.com/2016/12/21/minio_microserever_aims_for_object_world_domination/ |title=MinIO Partners with Industry Backup Leader Veeam, Joins the “Veeam Ready” Roster |website=www.theregister.com |access-date=21 December 2016}}</ref>

As a result, MinIO is frequently used in hybrid-cloud deployments as it is capable of running in public clouds, private clouds, private cloud Kubernetes distributions (such as VMware’s Tanzu) and at the edge.<ref>{{Cite web |url=https://www.bloomberg.com/press-releases/2020-07-22/minio-partners-with-industry-backup-leader-veeam-joins-the-veeam-ready-roster |title=MinIO Partners with Industry Backup Leader Veeam, Joins the “Veeam Ready” Roster |website=www.bloomberg.com |access-date=22 July 2020}}</ref>


=== MinIO Client ===
=== MinIO Client ===
MinIO Client (<code>mc</code>) provides an alternative to the standard UNIX commands (e.g. <code>[[ls]]</code>, <code>[[cat (Unix)|cat]]</code>, <code>[[cp (Unix)|cp]]</code>, <code>mirror</code>, <code>[[diff]]</code>, etc) adding support for an [[Amazon S3]] compatible cloud storage services (AWS Signature v2 and v4).{{fact|date=January 2021}} It works on [[Linux]], [[MacOS|Mac]] and [[Microsoft Windows|Windows]] platforms.{{fact|date=January 2021}}
MinIO Client (<code>mc</code>) provides an alternative to the standard UNIX commands (e.g. <code>[[ls]]</code>, <code>[[cat (Unix)|cat]]</code>, <code>[[cp (Unix)|cp]]</code>, <code>mirror</code>, <code>[[diff]]</code>, etc) adding support for an [[Amazon S3]] compatible cloud storage services (AWS Signature v2 and v4). It works on [[Linux]], [[MacOS|Mac]] and [[Microsoft Windows|Windows]] platforms.<ref>{{Cite web |url=https://reposhub.com/go/utilities/minio-mc.html |title=MinIO Client is a replacement for ls, cp, mkdir, diff and rsync commands for filesystems and object storage |website=reposhub.com |access-date=3 December 2020}}</ref><ref>{{Cite web |url=http://www.smartstorageclouds.com/clientarea/index.php?rp=/knowledgebase/5/MinIO-Client-Complete-Guide-.html |title=MinIO Client Complete Guide |website=www.smartstorageclouds.com |access-date=8 April 2016}}</ref>

MinIO can be managed via three interfaces. The graphical user interface, called MinIO Console is targeted at IT administrators. The command line interface (mc) is targeted at developers. The application programming interface is designed for automation.<ref>{{Cite web |url=https://cloud.ibm.com/docs/cloud-object-storage?topic=cloud-object-storage-minio |title=Using Minio Client |website=IBM |access-date=19 November 2019}}</ref>


=== MinIO Client SDK ===
=== MinIO Client SDK ===
MinIO Client SDK provides an [[Application programming interface|API]] to access any [[Amazon S3]] compatible object storage <ref>{{Cite news|last=Nicolas|first=Philippe|date=2016-07-15|title=The History Boys: Object storage ... from the beginning|language=en|work=The Register|url=https://www.theregister.co.uk/2016/07/15/the_history_boys_cas_and_object_storage_map/}}</ref>server. Language bindings are available for [[Go (programming language)|Go]], [[Java (programming language)|Java]], [[Python (programming language)|Python]], [[JavaScript]], [[Haskell (programming language)|Haskell]], and languages hosted on top of the [[.NET Framework]].
MinIO Client SDK provides an [[API]] to access any [[Amazon S3]] compatible object storage [5] server. Language bindings are available for [[Go]], [[Java]], [[Python]], [[JavaScript]], [[Haskell]], and languages hosted on top of the [[.NET Framework]].<ref>{{Cite web |url=https://aws.amazon.com/marketplace/pp/Bitnami-MinIOR-Helm-Chart-packaged-by-Bitnami/B07WJLY9T7 |title=MinIO(R) Helm Chart packaged by Bitnami |website=AWS Amazon |access-date=28 October 2020}}</ref><ref>{{Cite web |url=https://stackshare.io/stackups/amazon-s3-vs-minio |title=Amazon S3 vs Minio |website=stackshare.io |access-date=23 October 2020}}</ref><ref>{{Cite web |url=https://nicedoc.io/minio/minio-go |title=MinIO Go Client SDK for Amazon S3 Compatible Cloud Storage |website=nicedoc.io |access-date=19 March 2021}}</ref>


==Licensing & users==
== VMware ==
In September 2020, VMware announced that MinIO was a design partner and one of the initial object storage solutions available on their Data Persistence platform making MinIO a key component of VMware’s next generation Tanzu platform.<ref>{{Cite web |url=https://tanzu.vmware.com/solutions-hub/data-management/minio |title=Amazon S3 Compatible, Highly Available Object Storage Solution |website=tanzu.VMware.com |access-date=23 September 2020}}</ref><ref>{{Cite web |url=https://www.vmware.com/content/dam/digitalmarketing/vmware/en/pdf/products/vmw-minio-object-storage-on-cloud-foundation-with-tanzu-solution-brief.pdf |title=MinIO Object Storage on VMware Cloud Foundation with Tanzu |website=VMware.com |access-date=1 December 2020}}</ref>
MinIO is 100% [[open source]] under the [[Apache License|Apache V2 license]].<ref>{{cite web|url=https://github.com/minio/minio/blob/master/LICENSE|website=MinIO License at GitHub|title=MinIO License|access-date=14 February 2021}}</ref>


== License & Users ==
Several companies incorporate MinIO as their object storage layers {{fact|date=January 2021}} including [[Qumulo]].<ref>{{cite web|url=https://qumulo.com/library/how-to/scripting-s3-minio/|title=Scripting Qumulo with S3 via Minio|author=[[Qumulo]]|publisher=Qumulo, Inc.|website=Qumulo|access-date=4 September 2019}}</ref>
MinIO is 100% [[open source]] under the Apache V2 and GNU AGPL v3 license.<ref>{{Cite web |url=https://www.fatalerrors.org/a/an-object-storage-service-based-on-apache-license-v2.0-open-source-protocol.html |title=MinIO: an object storage service based on Apache License v2.0 open source protocol |website=www.fatalerrors.org |access-date=15 September 2020}}</ref><ref>{{Cite web |url=https://silvertonconsulting.com/blog/2021/02/03/the-rise-of-minio-object-storage/ |title=The rise of MinIO object storage |website=silvertonconsulting.com |access-date=3 February 2020}}</ref>
At the 2019 Strata conference, O’Reilly named it the most impactful open-source project.<ref>{{Cite web |url=https://conferences.oreilly.com/strata/strata-ca-2019/public/schedule/topic/2867.html |title=Strata Business Summit |website=conferences.oreilly.com |access-date=28 March 2019}}</ref>
Datanami Editors choice selection for Top Five Open-Source Projects to Watch.<ref>{{Cite web |url=https://www.datanami.com/2019/08/26/minio-enjoying-role-in-emerging-cloud-architecture/ |title=MinIO Enjoying Role in Emerging Cloud Architecture |website=www.datanami.com |access-date=26 August 2019}}</ref>
MinIO powers third party object storage solutions including Nutanix Objects, Seagate’s Lyve Cloud, Qumulo and others.<ref>{{Cite web |url=https://blocksandfiles.com/2019/11/07/nutanix-objects-storage-service/ |title=Nutanix kicks the Buckets into object storage |website=blocksandfiles.com |access-date=7 November 2019}}</ref><ref>{{Cite web |url=https://blocksandfiles.com/2021/02/24/seagate-lyve-cloud-equinix/ |title=Seagate delivers Lyve Cloud object storage-as-a-service via Equinix colos |website=blocksandfiles.com |access-date=24 February 2021}}</ref><ref>{{Cite web |url=https://labs.seagate.com/portfolio/seagate-and-minio-solution-drives-performance/ |title=Support Massive Data Growth Despite Bandwidth Limitations |website=labs.seagate.com |access-date=11 July 2019}}</ref> It is used in Splunk’s DSP product. Public customers include Seagate, Ace Metrix, Box and PRGX.<ref>{{Cite web |url=https://conf.splunk.com/files/2020/slides/PLA1503C.pdf |title=From 1PB to 100PB |website=conf.splunk.com |access-date=11 October 2020}}</ref><ref>{{Cite web |url=https://www.storagenewsletter.com/2020/08/19/minio-subscription-network-launched-globally/ |title=MinIO Subscription Network Launched Globally |website=www.storagenewsletter.com |access-date=19 August 2020}}</ref>


==References==
==References==

Revision as of 22:11, 22 March 2021

MinIO Object Storage
Developer(s)MinIO, Inc
Initial release11 March 2016; 8 years ago (2016-03-11)[1]
Repository
Written inGo
TypeObject storage
LicenseAGPL v3
Websitemin.io Edit this on Wikidata

MinIO is an Amazon S3 compatible object storage suite capable of handling structured and unstructured data including log files, artifacts, backups, container images, photos and videos. The current maximum supported object size is 5TB.[2][3]


History & Development

MinIO's main developer is MinIO Inc, a Silicon Valley based technology startup founded by Anand Babu Periasamy, Garima Kapoor, and Harshavardhana in November 2014.[4][5]

MinIO has published benchmarks to disclose its performance. The benchmarks include comparisons to an Amazon S3 for Presto and Spark, HDFS and also throughput results for the S3Benchmark on HDD and NVMe drives.[6][7]

Architecture

MinIO storage stack has three major components: MinIO Server, MinIO Client, and MinIO Client SDK that can be used by application developers to interact with an Amazon S3 compatible server.[8]

MinIO Server

MinIO cloud storage server is minimal and scalable. It can be bundled along with the application stack, similar to NodeJS, and Redis.[9]

Designed for peta scale workloads MinIO offers features specific to large enterprise deployments, these include inline erasure coding, bitrot protection, encryption, object locking, identity management, active active replication, monitoring, load balancing, tiering, and multi-cloud deployments via gateway mode.[10]

MinIO server is hardware agnostic and can be installed on physical or virtual machines or launched as Docker containers and deployed on container orchestration platforms like Kubernetes, Mesosphere, and Docker Swarm.[11][12]

As a result, MinIO is frequently used in hybrid-cloud deployments as it is capable of running in public clouds, private clouds, private cloud Kubernetes distributions (such as VMware’s Tanzu) and at the edge.[13]

MinIO Client

MinIO Client (mc) provides an alternative to the standard UNIX commands (e.g. ls, cat, cp, mirror, diff, etc) adding support for an Amazon S3 compatible cloud storage services (AWS Signature v2 and v4). It works on Linux, Mac and Windows platforms.[14][15]

MinIO can be managed via three interfaces. The graphical user interface, called MinIO Console is targeted at IT administrators. The command line interface (mc) is targeted at developers. The application programming interface is designed for automation.[16]

MinIO Client SDK

MinIO Client SDK provides an API to access any Amazon S3 compatible object storage [5] server. Language bindings are available for Go, Java, Python, JavaScript, Haskell, and languages hosted on top of the .NET Framework.[17][18][19]

VMware

In September 2020, VMware announced that MinIO was a design partner and one of the initial object storage solutions available on their Data Persistence platform making MinIO a key component of VMware’s next generation Tanzu platform.[20][21]

License & Users

MinIO is 100% open source under the Apache V2 and GNU AGPL v3 license.[22][23] At the 2019 Strata conference, O’Reilly named it the most impactful open-source project.[24] Datanami Editors choice selection for Top Five Open-Source Projects to Watch.[25] MinIO powers third party object storage solutions including Nutanix Objects, Seagate’s Lyve Cloud, Qumulo and others.[26][27][28] It is used in Splunk’s DSP product. Public customers include Seagate, Ace Metrix, Box and PRGX.[29][30]

References

  1. ^ "minio/minio at RELEASE.021-03-17T02-33-02Z". GitHub.
  2. ^ "Minio - Kintohub". www.kintohub.com. Retrieved 1 January 2018.
  3. ^ "How to Build Your Own Object Storage using MinIO". backup.ninja. Retrieved 6 August 2020.
  4. ^ "Why the growing preference for object storage will make the public and private clouds look alike". siliconangle.com. Retrieved 30 September 2020.
  5. ^ "Gluster founder launches cloud storage start-up Minio". www.thehindu.com. Retrieved 17 June 2015.
  6. ^ "Traditional file and block storage vendors are toast – Minio". blocksandfiles.com. Retrieved 24 July 2019.
  7. ^ "MinIO fires fresh salvo in object storage speed wars". blocksandfiles.com. Retrieved 13 November 2019.
  8. ^ "How To Set Up an Object Storage Server Using Minio on Ubuntu 18.04". www.digitalocean.com. Retrieved 13 December 2019.
  9. ^ "Getting started with minio on nestjs". dev.to. Retrieved 24 September 2019.
  10. ^ "Optimizing the Observability Pipeline Through the Private Cloud: MinIO and Cribl". www.brighttalk.com. Retrieved 26 January 2021.
  11. ^ "minio-ansible-pyats-sandbox". developer.cisco.com. Retrieved 3 August 2020.
  12. ^ "MinIO Partners with Industry Backup Leader Veeam, Joins the "Veeam Ready" Roster". www.theregister.com. Retrieved 21 December 2016.
  13. ^ "MinIO Partners with Industry Backup Leader Veeam, Joins the "Veeam Ready" Roster". www.bloomberg.com. Retrieved 22 July 2020.
  14. ^ "MinIO Client is a replacement for ls, cp, mkdir, diff and rsync commands for filesystems and object storage". reposhub.com. Retrieved 3 December 2020.
  15. ^ "MinIO Client Complete Guide". www.smartstorageclouds.com. Retrieved 8 April 2016.
  16. ^ "Using Minio Client". IBM. Retrieved 19 November 2019.
  17. ^ "MinIO(R) Helm Chart packaged by Bitnami". AWS Amazon. Retrieved 28 October 2020.
  18. ^ "Amazon S3 vs Minio". stackshare.io. Retrieved 23 October 2020.
  19. ^ "MinIO Go Client SDK for Amazon S3 Compatible Cloud Storage". nicedoc.io. Retrieved 19 March 2021.
  20. ^ "Amazon S3 Compatible, Highly Available Object Storage Solution". tanzu.VMware.com. Retrieved 23 September 2020.
  21. ^ "MinIO Object Storage on VMware Cloud Foundation with Tanzu" (PDF). VMware.com. Retrieved 1 December 2020.
  22. ^ "MinIO: an object storage service based on Apache License v2.0 open source protocol". www.fatalerrors.org. Retrieved 15 September 2020.
  23. ^ "The rise of MinIO object storage". silvertonconsulting.com. Retrieved 3 February 2020.
  24. ^ "Strata Business Summit". conferences.oreilly.com. Retrieved 28 March 2019.
  25. ^ "MinIO Enjoying Role in Emerging Cloud Architecture". www.datanami.com. Retrieved 26 August 2019.
  26. ^ "Nutanix kicks the Buckets into object storage". blocksandfiles.com. Retrieved 7 November 2019.
  27. ^ "Seagate delivers Lyve Cloud object storage-as-a-service via Equinix colos". blocksandfiles.com. Retrieved 24 February 2021.
  28. ^ "Support Massive Data Growth Despite Bandwidth Limitations". labs.seagate.com. Retrieved 11 July 2019.
  29. ^ "From 1PB to 100PB" (PDF). conf.splunk.com. Retrieved 11 October 2020.
  30. ^ "MinIO Subscription Network Launched Globally". www.storagenewsletter.com. Retrieved 19 August 2020.