We changed our name from IT Central Station: Here's why

MinIO OverviewUNIXBusinessApplication

MinIO is #1 ranked solution in top File and Object Storage tools. PeerSpot users give MinIO an average rating of 8 out of 10. MinIO is most commonly compared to Red Hat Ceph Storage: MinIO vs Red Hat Ceph Storage. The top industry researching this solution are professionals from a comms service provider, accounting for 29% of all views.
What is MinIO?

MinIO is a high performance, distributed object storage system. It is software-defined, runs on industry standard hardware and is 100% open source under the Apache V2 license.

MinIO is different in that it was designed from its inception to be the standard in private cloud object storage. Because MinIO is purpose-built to serve only objects, a single-layer architecture achieves all of the necessary functionality without compromise. The result is a cloud-native object server that is simultaneously performant, scalable and lightweight.

While MinIO excels at traditional object storage use cases like secondary storage, disaster recovery and archiving, it is unique at overcoming the private cloud challenges associated with machine learning, analytics and cloud-native application workloads.

MinIO Buyer's Guide

Download the MinIO Buyer's Guide including reviews and more. Updated: January 2022

MinIO Pricing Advice

What users are saying about MinIO pricing:
"This is an open-source solution but I am using the licensed version."

MinIO Reviews

Filter by:
Filter Reviews
Industry
Loading...
Filter Unavailable
Company Size
Loading...
Filter Unavailable
Job Level
Loading...
Filter Unavailable
Rating
Loading...
Filter Unavailable
Considered
Loading...
Filter Unavailable
Order by:
Loading...
  • Date
  • Highest Rating
  • Lowest Rating
  • Review Length
Search:
Showingreviews based on the current filters. Reset all filters
Rebecca Sutter
Vice President, Information Services at Health Communications, Inc.
Real User
Top 20
Offers good object retrieval performance and scalability; but native monitoring tools don't work above a certain bucket size
Pros and Cons
  • "Very good at object retrieval."
  • "The solution lacks documentation."

What is our primary use case?

We host a document store with approximately seven million documents that need to be retained in perpetuity. The documents are used for discovery in legal cases. The document store grows continuously and periodically they have been rehoused due to scalability issues. We selected MinIO because it promises to be a more highly scalable and performant solution than past choices.  We are users of MinIO and I'm the VP of Information Services as well as the company CTO. 

How has it helped my organization?

We're currently running MinIO in parallel to an existing object store as we migrate to it. Object retrieval with MinIO is much improved over the prior solution, updates are simple to apply, and we anticipate that future capacity requirements will be easier to meet.  Our customers are using this solution to retrieve tens of thousands of objects (documents and files) per hour, and MinIO seems to be able to keep up with it.  While we migrated all 7 million objects we are performing a byte-by-byte validation before removing them from the old system - a process that is not expected to be completed before the end of the year. From a management perspective, once we get the object store validated, we're going to be able to set up a seamless synchronization with our offsite data store in Amazon S3 with the built-in functionality for mirroring buckets, which will provide a huge improvement over the existing application.

What is most valuable?

The retrieval performance of objects with MinIO is significantly higher than a lot of the alternatives we investigated. We're able to use  Amazon's SDK to interact with it, and the SDK support is excellent. The included MC tool is not only good at administering MinIO, it is also good for administering our S3 buckets, as it's actually more capable than Amazon's own tool. Updates are also very simple and easy. We've done numerous updates since the deployment and the platform stays online throughout, which is an unexpected bonus. I think in terms of other useful functionality, there are some very good things about it.

What needs improvement?

Improvement could be made in several areas. When implementing a distributed solution, there were no good white papers or tutorials on implementing clusters, so we had to kind a of wing it, and it took us a while to get the clustered implementation working. The clustering documentation is oriented towards containers and Kubernetes, and we're running Linux VMs instead of containers, partly because we run on top of VMware and it's a little easier to manage a VM than it is a container in VMware's platform. We're also using vMotion and we have a cluster of VMware hosts which approximates the functionality of containers without the complexity, plus we have SAN on the backend. Containers actually create a degree of complexity that's unnecessary for our application because we already have a great deal of hardware redundancy in our system. 

There's very little documentation on performance tuning for MinIO and for running it on Linux, which has been problematic because as the object store has grown, we've run into various performance issues. We've done a lot of our own research and some of our own performance tuning on a trial and error basis.  We've had intermittent latency on object retrieval on a sporadic basis, and no way to determine the underlying cause.  There have also been some technical issues. When we added more than 100,000 objects into a single bucket, the web browser interface for viewing buckets became unusable, which means we have no graphical way to search or browse our buckets, and have to rely on programmatic means.

We were initially using Prometheus, which extracts performance and usage data into Grafana for monitoring. That was useful until we exceeded a million objects and then it stopped working correctly. We were unable to get accurate statistics out of the system, and had to come up with a workaround by creating bucket notifications, that can be forwarded to a database. We're using a MySQL cluster for that, aggregating bucket notifications into MySQL and then parsing the JSON data out of MySQL to do our own dashboarding to keep track of performance and utilization issues. It seems to be working, but none of the native interfaces for MinIO work when you exceed a certain bucket size. 

We then had two other issues we ran into: There's a supposedly optional heal function, but in practice that's not exactly the case. It's extraordinarily slow. We started a heal run about two weeks ago, and it's only done about 7% of the documents in the last two weeks and it's still running. Secondly, the SSL implementation was a more complicated than it should be. We had wanted to secure the documents for access, because we use a suite of web services we developed ourselves with the Amazon SDK for providing CRUD operations on objects. We needed to secure it with SSL, but we ultimately found it was a lot simpler to front MinIO with NGINX as a proxy, and keepalived to provide automatic failover, than the solution they had suggested. We came up with our own SSL solution, but it was not easy. 

It would be nice if there was a graphical tool for searching buckets that didn't attempt to display the bucket. We use a product called Couchbase, which is based on CouchDB as a key value pair database for one of our web applications. It has a very nice function for searching buckets by key - something comparable in MinIO would be great. I think also that improving the logging functionality to enable more selective statistics logging the way that bucket notifications work would be very valuable. One step further - outputting statistics data in other formats would also enable better monitoring. Fixing the heal function - or perhaps allowing it to run across the cluster in parallel instead of only on a single node - would be valuable.  

For how long have I used the solution?

1 Year

What do I think about the stability of the solution?

The solution seems to perform fairly well under load. There have been occasional issues with unexpected latency developing and we've been trying to pin that down, but we don't have any tuning documentation to allow us to do that. It's basically been a hit or miss proposition to figure out what's causing the intermittent performance issues. MinIO doesn't seem to require a lot of maintenance. We have a network operation center and they've been able to keep a pretty good eye on it using a workaround we devised. We haven't had any outages so I'd classify it as stable. 

What do I think about the scalability of the solution?

The biggest bugs are in the web browser interface, and the failure of Prometheus when it didn't scale. The web browser interface won't let Prometheus scale correctly in large buckets. But I don't imagine people are typically putting seven million objects in a bucket like we are. That's a lot of objects and the average size of the binary is at least a megabyte. In some cases it's 10 megabytes and they are fairly large binaries to be shuffling around. Those are the major problems, but also the heal function is inordinately slow. Other than that, the application performs fairly well.

Internally, it's the backend for our document system and the content management system.  The document management system is used by our entire staff of approximately 40 people. It's role as a content management system is used externally by our customer base, which is  approximately 10,000 people a day. We have a number of other potential use cases and once we've completed migration from our old object store, we're going to explore those. Presuming they can resolve some of the issues in upcoming releases, it'll have a lot more utility in the organization. Unstructured data has always been a challenge to deal with in content management systems and we have a lot of unstructured data in our business. There's a range of different applications where that's valuable.

How are customer service and technical support?

We haven't taken advantage of the technical support but we have used their support forums and had some responses, but I believe it's a fairly small team at MinIO and I don't think they have a lot of people involved in support yet.

Which solution did I use previously and why did I switch?

Our data was all previously stored in a SQL Server AG cluster, but the performance in moving binary objects in and out of SQL Server is fairly poor, and database backups for multi-terabyte databases within maintenance windows very challenging.  MinIO is an S3 compatible object store that mirrors seamlessly with Amazon and other S3 object stores, and doesn't have the management problems that go with a large SQL Server installation. There are a lot of complexities in managing a large document store in SQL Server because it's not a great solution for storing binary large objects - blobs, as they're known. Programmatically, the .NET support for putting data in and out of SQL Server is quite good, but not the performance. It's slow and backing up such a large database exceeds our backup window. Effectively, we were never able to back up that database. We had to create a process to continuously extract new data out of it and to place it offsite in Amazon, but the backup and restore processes were slow as a result. It created a lot of headaches for our DBA. It was a 10 terabyte database and SQL doesn't deal well with such large databases.

How was the initial setup?

The initial setup involved two people - a network engineer to setup the backend VMware infrastructure, and then the Linux VM deployment which I performed myself. Although I'm the CTO, I'm fairly hands-on because we're a smaller company and I have deep Linux expertise that goes back to the 90s, so I implemented the various nodes and set up all of the information around replication and configuration. My network engineer set up the VMware hosts and tuned the storage backend and a number of other things. It was a collaborative effort.

If we'd had better resources, we probably could have done it in about two weeks. But we had a few false starts and had to basically make it up as we went, so it took about six weeks to get the initial deployment working.

What about the implementation team?

We did not utilize outside vendors.  For mission critical applications we always develop inhouse expertise.

What was our ROI?

Since the product is not technically in production, a ROI can't be computed

What's my experience with pricing, setup cost, and licensing?

We are using the open source version, so we didn't pay anything for it. We are planning to obtain a support contract when it's fully in production - which is to say once all of our documents have been validated, and it's stable in our environment. Looking at the prices, they seem to be fairly comparable to what we've paid for similar products in the past so there's no issue paying for support and product, but we're still at a step beyond the proof of concept stage. That won't be complete until we validate that all the binaries are correct.

In terms of additional costs, a lot of hardware went into this. We're running it on a cluster of VMware servers. There were licensing costs for the VMware host and in addition to that, we're running it on a storage area network on the backend and the storage area networks alone are very expensive. It's a fairly large storage area network too, so we're essentially running it on dedicated hardware. Our investment to date exceeds $200,000.

Which other solutions did I evaluate?

We compared MinIO with a number of other object stores and it offered some performance advantages and a degree of simplicity which was very appealing. We implemented a four server failover cluster and we migrated all of the documents into MinIO which took us about three months. We're currently running a validation process before we remove the old object store by doing a byte by byte comparison of the objects from the old store and the new store. Because it's such a time-consuming process, it's only about 25% done and we anticipate it'll take another three or four months before it's complete.

What other advice do I have?

As the solution evolves, it will become a better product, but right now it has a lot of rough edges. I would not recommend implementing MinIO unless you have sufficient technical expertise. I'm very familiar with non-relational as well as relational databases, and with Linux, which helped during implementation, but not every shop has that skill set available. I was able to extrapolate what it should be doing based on the type of product it is and comparisons with similar technologies that I've dealt with in the past. Without that experience I think it would be difficult. If you're doing a single server implementation, it's very simple but it gets complex very quickly if you're building a clustered server, which is what we were doing.

I rate the solution 7 out of 10. I would rate it higher if the management tools were usable on large buckets, and the quality of the documentation was higher.

Which deployment model are you using for this solution?

On-premises

If public cloud, private cloud, or hybrid cloud, which cloud provider do you use?

Disclosure: I am a real user, and this review is based on my own experience and opinions.
Flag as inappropriate
Staff Engineer at a tech services company with 5,001-10,000 employees
Real User
The user and command line interface are helpful
Pros and Cons
  • "For starters, MinIO has a good user interface. You can access it through the browser and perform operations like creating the object."
  • "The Distributed User Interface (DUI) needs some work. It's hard to view a large set of data on the DUI. It's an issue with the DUI's performance."

What is our primary use case?

Generally speaking, we use MiniIO for storing unstructured or semi-structured data. In my current project, we were using it for the semi-structured data. We also use MinIO as a data link. The data is transformed and loaded onto MinIO. And MinIO is used to rate the statistics based on the data.

So I'll just briefly explain how the entire flow works and how the data comes into the menu. After we transform the data, we input it into MinIO. The raw data is in different formats. It is in a delimited, positional-specific, or some other format. And three types of data—virtual, date and time, and numeric—are being loaded, including all Python and Java date formats and various kinds of normal data. Once we transform the data, we load it onto MinIO.

The development and QA teams are the primary users. They work on MinIO together to load the data. So, for the lower environment, the subsequent systems directly read the data from the menu and then utilize it for visualization. The actual end-customer is not reading the data directly from MinIO.

How has it helped my organization?

Earlier, the organization experienced some issues transforming the data and loading it into the technology, so we adopted Spark, and the data was to be loaded onto the menu, MinIO. In terms of the volume, processing speed, and accessibility of data, MinIO was outstanding. First, it worked well for storing large volumes and sizes of data. Second, you can retrieve, load, or transform data with MinIO quite fast. It is a backbone to the organization because it loads the data and stores it after transformation, then all the lower systems can use it.

What is most valuable?

For starters, MinIO has a good user interface. You can access it through the browser and perform operations like creating the object. And inside that, you can make the bucket manually. You can also access it through the command-line interface. Using the command interface, you can perform a complete set of operations — create the bucket, open it, read the data, delete those buckets, etc. — and it is pretty fast 

What needs improvement?

The Distributed User Interface (DUI) needs some work. It's hard to view a large set of data on the DUI. It's an issue with the DUI's performance. One way to improve this would be to allow a large set of data to be directly viewed on the UI. Usually, business people do not access the data through the command-line interface. So the DUI tool could be helpful if MinIO improves its performance and ability to handle a larger sample of data. When you're working with a small set of data, the DUI can download that quite easily. But if the data set is vast, it takes time. It becomes quite challenging to view that or download that data. So maybe introducing a PLI command-line interface could improve the DUI function. That would be very useful for the end-user.

For how long have I used the solution?

I've been working with MinIO for about a year and a half to two years.

What do I think about the stability of the solution?

We have not faced any stability issues or had any problems accessing the data on MinIO that I can recall.

What do I think about the scalability of the solution?

I think scalability-wise, MinIO is quite good. However, we had to do some MinIO cleanup activity on the lower environments. By lower environment, I mean the test or development environments. So we had limited capacity in the lower environments. But overall, we have not faced many issues in terms of scalability. Space was available whenever it was required. On the other hand, we could not automate scalability. We had to perform cleanup activity on the lower environments manually.

How are customer service and support?

I haven't interacted with the MinIO technical support.

How was the initial setup?

I did not help set up MinIO, so I will not be able to answer that question. An in-house DevOps team deployed it. Installing new versions of MinIO does not take much time. The entire deployment process took around two days for us, including deploying the code of different modules or different features. But I don't think the basic setup of MinIO took a very long time. It was installed in 10 minutes or so. The DevOps team, which includes around three to four people, upgrades MinIO from time to time.

What other advice do I have?

I rate MinIO eight out of 10. It has a good UI, and it allows you to use the command line, which has a solid list of operations that you can perform. My advice to anyone who implementing MinIO is to take advantage of the command-line interface. It's pretty good to use. If you use the command line wisely, it is a highly efficient feature.

Which deployment model are you using for this solution?

Private Cloud
Disclosure: I am a real user, and this review is based on my own experience and opinions.
Flag as inappropriate
Learn what your peers think about MinIO. Get advice and tips from experienced pros sharing their opinions. Updated: January 2022.
563,780 professionals have used our research since 2012.
Anton Ushchapovskiy
Software Architect at a transportation company with 10,001+ employees
Real User
Good file management, but has some connection issues
Pros and Cons
  • "MinIO can work with attributes and folders, and it has the ability to use a stream approach for files. I have moments that should work exclusively. It also has some management features you can use, like exclusive locks that you can perform on one record or a collection."
  • "MinIO has behaved strangely in the past. For instance, the application dropped connection to MinIO. It's not too significant, but it loses connection. We're trying to understand exactly what is happening when this happens."

What is our primary use case?

We are a service provider for the financial sector. We make solutions for our biggest town and guys from this town. The government is trying to keep specific information inside the country, so we developed a solution with that goal in mind. 

MinIO was deployed in the center of the Kubernetes cluster, and it's used for keeping files. What's more interesting is how MinIO works with a file. So we used our widget in this instance. For the first approach, we got files from a user proficient system, I believe it's called. We got everything moving on FTP. After that, we put it all into MinIO on our internal partition. So that means transforming and preparing for transfer to the bank. With MinIO, you are preparing a pipeline of folders, where each folder maintains a particular stable file. So for that, we're using MinIO's ability to work with attributes and transfer copies of region files via the stream. As a solution, we use MinIO just like a file keeper. We use characteristics for storage then triple the small source from history 

MinIO's use case varies from project to project. In that case, guys from the company used MinIO as a solution for their particular system. It wasn't my decision to use MinIO. For my company, we use another approach because I work at Russian Post. It's a specific company with government contracts, and we have a lot of work requirements about what solutions we can use.

What is most valuable?

MinIO can work with attributes and folders, and it has the ability to use a stream approach for files. I have moments that should work exclusively. It also has some management features you can use, like exclusive locks that you can perform on one record or a collection. 

What needs improvement?

MinIO has behaved strangely in the past. For instance, the application dropped connection to MinIO. It's not too significant, but it loses connection. We're trying to understand exactly what is happening when this happens. Maybe the team at MinIO should work on this error because, at this time, it's unclear why this happens.

For how long have I used the solution?

We've used MinIO for three months. We made two solutions in MinIO and used it to keep the bank's files and write up payment systems. 

What do I think about the stability of the solution?

I've never had trouble with the equipment, especially with DUI surges. I had connectivity issues, but it's not a problem with MinIO. The general lot level was not so high, and it didn't present any problems. Since we're not getting so many requests, we keep it all in MinIO and process it.

What do I think about the scalability of the solution?

I think MinIO is not so hard to scale. Our guys are using part of this scale to replicate data, and this process was not very hard to scale. Right now, we have two teams using it. We make a solution for the financial part, and the other guys make one for customer data. And two teams were enough for that time. It was 10 or 12 developers.

How are customer service and support?

I've never had to call MinIO support

How was the initial setup?

Guys from DevOps helped us, so setting up MinIO was not so difficult.

Which other solutions did I evaluate?

Compared to SAS, MinIO is more straightforward from the developer side. It's easier to work with API. Most file solutions are similar when it comes to storage and how they work with ChAS SCP and Java. And when I compare, I'm trying to understand what the goal is and what level the developer should be working on with one of the solutions. I think MinIO is easier to use compared to Java API or for working this fast.

What other advice do I have?

I rate MinIO seven out of 10. I say seven because I've worked with finance and require consistency and work with exclusive locks. From the standpoint of a coder or a developer, it's a good solution that's easy to use, connect, and prepare requests with. It doesn't require a lot of complex skills, and it's easy to put into your application. 

For people considering MinIO, I generally recommend understanding what level of consistency you want when working with these files. Also, you want to consider what kind of file reporting procedure you need, like streaming or batch processing. And, if you want some locks, like exclusive locks, then maybe you don't want MinIO. But for other sites, it's suitable.

Disclosure: I am a real user, and this review is based on my own experience and opinions.
Flag as inappropriate
Product Owner at a tech company with 1,001-5,000 employees
Real User
Top 20
Great compatibility with different kinds of storage and easy to use
Pros and Cons
  • "The solution has good compatibility with different kinds of storage."
  • "We had minor bugs occasionally."

What is our primary use case?

A multi-tenant data space solution that in our case, consumes and stores large amounts of traffic sensor data for multiple cities worldwide. 

Right from the start the data-space solution we were building was supposed to be cloud native & cloud agnostic, hence instead of interacting with AWS-S3 using SDK we were using minIO as a gateway over AWS-s3 store. 

We're long-standing customers of MinIO. I was a senior member of the technical staff with the team who built the data-space solution.

How has it helped my organization?

While being well suit for kubernates, MinIO also made solution cloud agnostic in storage operations.  

For one of the customer due to regulatory constraints, we had to deploy the product on-prem with no access to AWS or open internet. MinIO out-of-the-box supports NFS share (volume) object store. It meant that rather than having to look out for or move to a new product we could stick with MinIO and adapt to newer environment requirements. Secondly, the APIs are quite well documented, including the setup onto Kubernetes clusters and we were able to reduce our ops efforts.

What is most valuable?

The solution has good compatibility with different kinds of storage and that was a major feature for us. 

We were using Presto, a query engine, which out-of-the-box connects to MinIO. 

MinIO provides APIs which have extensive documentation. 

The solution also has a good UI. During the development phase team sometimes needed to go through the data structure to see how data was getting stored. The UI helped us to debug the data quickly.

MinIO is easy to understand, simple to implement and provides a good feature set. 

What needs improvement?

There is nothing major that needs to be improved. 

While using some of the advance features of MinIO we encountered the minor bugs but they generally get fixed in version upgrades. 

I would like to see some kind of graphical representation of underlined data on MinIO UI. Like size, document type etc.

For how long have I used the solution?

I've been using this solution for a year and a half.

What do I think about the stability of the solution?

Setting up MinIO on Kubernetes has its own perks. In terms of stability, Kubernetes took care of most things like spinning up new pod/node when existing one is down. More over MinIO itself is quite a stable application with less of application crashing instances and hardly any downtime in any of our environments. 

What do I think about the scalability of the solution?

With high availability configuration it's easy to scale when running on Kubernetes.  

From a development team perspective, we have around eight users for either the console or API. From the application perspective, we had Presto, the query engine with connecting with system user.

How are customer service and support?

Because the solution is open source we used the community to find solution of most of the problems we ran into.  

How was the initial setup?

The initial setup was quite a straightforward process. The documentation which was provided in the Helm chart repository, was quite comprehensive and easy to access. The DevOps team carried out the deployment. Deploying the helm chart with default configuration doesn't take much time, it's a single line command. But if you want to do high availability production grade setup, then it might take couple of days.

What about the implementation team?

Inhouse team set it up & maintaining it.

What's my experience with pricing, setup cost, and licensing?

The solution is free for personal use but for large organizations/ commercial use, seems there are some charges involved. 

What other advice do I have?

If you want to go with MinIO setup, I suggest using a Kubernetes-based setup using helm chart because it's quite easy to manage and will less of a learning curve. 

I rate the solution eight out of 10. 

Which deployment model are you using for this solution?

Private Cloud

If public cloud, private cloud, or hybrid cloud, which cloud provider do you use?

Disclosure: I am a real user, and this review is based on my own experience and opinions.
Flag as inappropriate
Renich Bon Ćirić
FOSS Consultant & Creative Commons Musician at EVALinux
Real User
Low memory footprint and helpful community channels
Pros and Cons
  • "Nice web interface, easy to use, with a low memory footprint."
  • "With problems, visibility is hard because everything is in containers. Difficult to get to the logs in order to figure out what the problem was."

What is our primary use case?

We were trying to implement on object-storage a distributable solution and the main use was for cryptocurrency mining. The cryptocurrency uses block storage or different storage for crypto mining.

How has it helped my organization?

With MinIO, we managed to go forward with our cryptocurrency mining project. 

What is most valuable?

The ease of use, the low memory footprint, and the community is quite helpful as well. The web interface is also pretty nice.

What needs improvement?

At the time, they were rewriting their documentation and they had two versions of it: legacy. found at https://docs.min.io/, and the current, which has 3 versions at the time; one of them being: https://docs.min.io/minio/bare...

Some of the information was in one and some was in the other. There wasn't just one place to go and look for whatever you required. They still appear to have a warning on top of the "baremetal docs".

For how long have I used the solution?

I've been using it for the last six months or so.

What do I think about the stability of the solution?

We've had a few crashes because of excessive use. We struggled a little to learn where the problem was. Everything was in containers and it sometimes made visibility hard to get to the logs so we could figure out exactly what the problem was. 

What do I think about the scalability of the solution?

It seems to be pretty scalable because you just need to add more nodes for instances of MinIO and it connects automatically.

How are customer service and support?

We did not use paid support, but the community communication channels, mainly Flat.

How would you rate customer service and support?

Positive

Which solution did I use previously and why did I switch?

We were using OpenStack, Shift, and Keystone. They provided an optic-storage solution, but it's fairly complicated to install and to maintain and to upgrade. Performance wasn't great either because of our type of setup, so we decided to check MinIO out, and the managers liked it. We ended up implementing.

How was the initial setup?

I deployed MinIO myself. Deployment is pretty easy and straightforward. The one thing that takes more time is the tuning because it's made to be very automatic, so you don't have to mess a lot with the configuration. But in the end, you need to tweak it. So, installation was easy. It took two hours, maybe less. Tuning probably took a few days.

What about the implementation team?

We deployed it in-house. 

What was our ROI?

That is not my area, but I am sure it is high. The service works fine and the deployment cost was minimal.

What's my experience with pricing, setup cost, and licensing?

We went with the open source version. I wouldn't know what to tell you about licensing. That said, I think the open source version is quite good and has everything one needs.

Which other solutions did I evaluate?

We were using OpenStack Swift at the time. It's kind of difficult to deploy and manage in standalone mode. Also, the performance isn't as good. 

What other advice do I have?

I would rate this solution a nine out of ten.

There were two huge users, but at points, there were many sporadical users. So basically, the two users were consuming 80% or 90% of the resources, while the rest of the users, maybe ten of them, working just indirectly.

The premise required a bit of maintenance, which I was responsible for. They tried to update very often. In fact, every two weeks they tried to make a release or they urged you to check if there were any new releases. At the time, given the nature of cryptocurrency mining, we were using MinIO extensively.

My advice would be to go through the manual slowly to understand every aspect of MinIO. That helps you grasp how it works and how it needs to be installed and what the requirements are. They have very good representation.

Which deployment model are you using for this solution?

On-premises
Disclosure: I am a real user, and this review is based on my own experience and opinions.
Flag as inappropriate
MahdiSharifi
Technical Lead and Senior Java Developer at Novin High-Tech Solutions
Real User
Top 5
Easy to manage and has a powerful API
Pros and Cons
  • "The most valuable feature is the ease of management and administration."
  • "The monitoring capability is really bad and needs to be improved."

What is our primary use case?

We are a solution provider and I am working on a project that is using MinIO for storage.

What is most valuable?

The most valuable feature is the ease of management and administration. I do not have a system administrator in my project, so the simplicity of management is important to me.

What needs improvement?

The monitoring capability is really bad and needs to be improved. There are no monitoring tools available and there are several metrics that I would like to keep track of. Without good usage monitoring, it will be very hard to use in production.

In my opinion, the monitoring feature should be added to minIO in order to give administrators efficient data including bucket information(size, load on it, requests …), the CPU usage, running/ stuck/blocked threads, queue of thread pools, free/max heap percent, request per object in buckets and ...

I think providing REST API for monitoring and configuration makes it easier to use.

If I can set up MinIO to run as a service then it will be more stable.

Enhancing the user interface with more options would be a nice improvement.

For how long have I used the solution?

I have been using MinIO for two years.

What do I think about the stability of the solution?

It is a stable product and I use it every day. If I were able to set it up as a service then the stability would be improved.

What do I think about the scalability of the solution?

MinIO is scalable, although we do not rely on that right now. In the future, we will be expanding it. At this time, we have a team of five developers who are using MinIO.

How are customer service and technical support?

I have not needed support to this point, as I seek help in the community when I have issues. Furthermore, because we are located in Iran and under sanctions, were are not able to purchase technical support.

Which solution did I use previously and why did I switch?

I used to use Red Hat Ceph Storage, but it is more complex than MinIO and very difficult to manage because I do not have a system administrator on my team.

How was the initial setup?

The initial setup is very simple. It took me about 15 minutes to deploy five instances that had Java on it.

What about the implementation team?

I can easily deploy this solution using the command prompt.

What's my experience with pricing, setup cost, and licensing?

This is an open-source solution but I am using the licensed version.

Which other solutions did I evaluate?

When I began this project, I researched several options for storage that were alternatives to Red Hat Ceph. I found that MinIO is the best choice for this project because of the API support.

What other advice do I have?

My advice for anybody who is implementing MinIO is to visit the website and view the documentation. It is very complete and is helpful. 

This is a good product choice for startups that don't have a system administrator. It has a good API and it's easy to use. My main complaint is about the lack of monitoring tools.

I would rate this solution a nine out of ten.

Which deployment model are you using for this solution?

Private Cloud
Disclosure: I am a real user, and this review is based on my own experience and opinions.
Francisco Capllonch Alcover
senior software Engineer at a tech vendor with 11-50 employees
Real User
Top 20
Provides an excellent approach to development and testing environments
Pros and Cons
  • "Good interface and a good approach to development and testing environments."
  • "Documentation could be improved."

What is our primary use case?

Our primary use case of this solution is for the microservices architecture built with .NET Core. I'm a senior software engineer and we are customers of MinIO

How has it helped my organization?

The solution has provided the company with a super approach in development and testing environments which is what we were looking for. 

What is most valuable?

The solution has a good interface. We initially used several commands for configuring in the Docker Compose to create the default bucket and to make it public. It was pretty easy to use and fulfilled our requirements. It's quite powerful.

What needs improvement?

We had some issues with the initial configuration which I think could be improved by working on the documentation. I had to search different sources to get what I needed. 

The MinIO client was hard to automatize, we had to include some scripting on startup of the client container so that the buckets were setup with the read/write permissions and to make it public and accessible

For how long have I used the solution?

I've been using this solution for two years. 

What do I think about the stability of the solution?

We haven't had any issues with stability. 

What do I think about the scalability of the solution?

The way we deployed the test environment was to have just one instance for every container so every user was able to run their own test environment and we didn't need to scale. There were somewhere between 20 and 30 users, product owners and testers. The solution didn't require any maintenance. Expanding use will depend on the amount of information they have to store. 

How was the initial setup?

In the test environment we were using Terraform scripts with the commands for the MinIO Client to set up the MinIO, and all the containers were deployed to a Nomad Ecosystem. We used the continuous deployment to deploy and create the test environments with Azure DevOps. There were three back end developers and two DevOps people that helped with deployment but I did most of it, configuring the continuous integration and deployment of the project. 

The most difficult part of the setup was to configure the MinIO Client, because I'm used to working with Windows and the Docker containers were running on a Linux container. I had to figure out the commands, create the bucket and make it public. It took a bit of research and documentation was an issue.

What other advice do I have?

The solution was intended for private cloud, but we also had an on-premise installation which meant we could manually install the MinIO in every computer required. For on-premise installations, we could install MinIO and just change the connection string of the service using that MinIO. I recommend the solution, it's quite simple to implement and is very powerful because if you need to run the storage in your computer it's as simple as having a container of MinIO. 

I rate this solution eight out of 10. 

Which deployment model are you using for this solution?

Private Cloud
Disclosure: I am a real user, and this review is based on my own experience and opinions.
Flag as inappropriate
PRATIK MISHRA
Senior Engineer- Cloud/Big Data System Software Research at Samsung Electronics
Real User
Top 20
Bit rot protection and beautifully designed interface.
Pros and Cons
  • "The features that I have found most valuable with MinIO is its coding bit rot protection and how it distributes the workload over all the servers."
  • "The only downside I see is that you do not have a complete picture of an object."

What is our primary use case?

I was using MinIO for my own research and some other work which I cannot disclose.

How has it helped my organization?

MinIO has brought more scalability, use of computing resources, and it can lead towards higher cost savings for companies.

What is most valuable?

The features that I have found most valuable with MinIO is its coding bit rot protection and how it distributes the workload over all the servers. I observed that the workload is very even in all the nodes.

What needs improvement?

I like the interface. It's beautifully designed and it's great. It's one of the best platforms I've seen and it is highly compatible. The only downside I see is that you do not have a complete picture of an object.

Additionally, a feature I would like to see in the next release would be if they can include an uneven disk structure. Then you can use an uneven number of disks and create a bunch of tickets by a factor of two. If I could use an odd number of disks, that would be better, it would give me more flexibility.

What do I think about the stability of the solution?

MinIO can sometimes crash because of the dependency in underlying OS software layers. Of course it crashes depending on the file system. There is a heavy dependence on the node's file system, that is another issue.

MinIO requires ongoing maintenance by the staff. Their interface is pretty good, it just needs a software upgrade.

What do I think about the scalability of the solution?

MinIO should be easy to scale. It's an evenly scaling system.

I have plans to increase the usage.

How was the initial setup?

The initial setup was simple.

You just need one person to do that part of the small cluster and I had a pretty small cluster so it didn't take much time - maybe half a day.

What other advice do I have?

My advice to anyone considering using MinIO would be to first check if the open source version works for you. It probably should be able to. It has an S3 plugin so quite easily you can have interoperability between the public and private cloud or a hybrid setup. That is one advantage of the system. So if you need a private enterprise working as a public cloud, then MinIO is one of the best solutions I've seen so far.

I was using it for my personal work and MinIO it's a high-performance object storage system. So when you need high performance, you should go to MinIO.

On a scale of one to ten, I would rate MinIO an eight.

In the current market, when you have so many options for objects storage, MinIO is completely open source and an all inclusive package offering you both stability and scalability and its most attractive feature is the S3 plugin which is very similar to AWS.

Which deployment model are you using for this solution?

On-premises
Disclosure: I am a real user, and this review is based on my own experience and opinions.
Flag as inappropriate