Choosing between S3 or MinIO

We are still in the process of planning our migration from a Native installation to a Tutor installation.

Because of our prior investment in S3, a lot of our data is stored in it. We would like to keep accessing it through Tutor.

I’ve looked at the following plugins:
GitHub - overhangio/tutor-minio: MinIO plugin for Tutor (MinIO officially supported)
GitHub - hastexo/tutor-contrib-s3: This is an experimental Tutor plugin. You should not consider it ready for production use at this point. (S3 still in experimental phase)

Correct me if I am wrong, but I was under the false assumption that Tutor was not supporting S3? Looking at both plugins, I realized that the problem is that the parameters are simply just not setup by default. Right?

I haven’t tried any of the two plugins yet, I intend to try them both, but I have a question about the MinIO plugin.

In the tutor-minio documentation, there is a reference to the following:

  • MINIO_GATEWAY (default: null)

This is an experimental feature to run the MinIO server as a gateway to another object storage solution, such as S3 or Azure.

Right now, I just can’t figure out what I should use as a value for MINIO_GATEWAY if I want to use S3. An example would be really helpful.

Do I need to specify an endpoint in AWS?
Do I need to specify a service (S3 or Azure)?
Is it a boolean?

Based on the documentation from MinIO

and the plugin patch in

I tend to believe the answer is simply s3.

Can anyone confirm? Thanks.

I realized that the problem is that the parameters are simply just not setup by default. Right?

Correct. That is the common denominator between tutor-contib-s3 and tutor-minio plugins. But in your case, connecting with an external service, the approach taken by these two plugins is different:

  • tutor-minio runs a service (a container) with MinIO in it, which you can use as your S3 service inside Tutor or you can use it as a gateway to an external S3 provider.

  • tutor-contrib-s3 doesn’t run any service and just sets the parameters so that Tutor works directly with an external S3 provider. Also it provides a bit more flexibility in setting things like addressing style, signature versions, etc.

1 Like

Your understanding of the MinIO plugin and its API is 100% correct. It looks like you have now fully mastered the dark art of Tutor plugins!

1 Like