Skip to content

Conversation

@avwsolutions
Copy link

What this PR does / why we need it:

This PR removes Minio as S3 compatible storage backend dependency with a drop-in replacement called Garage. Garage is also used within Nextcloud and also funded by the EU, which makes it great with OpenCTI as an Opensource solution.

Which issue this PR fixes

Does fix Minio dependency on licensing and shows a more open-source friendly alternative, just like Dragonfly is for Redis.

Special notes for your reviewer:

  • Validate if this works, well since it's not a minor update. It can break, when release notes are not read due the change of an underlying dependency and difference in port.
  • Unfortunately Garage isn't an exact copy of Minio, so it does require some additional configuration. For most temporary environments the autosetup feature can be used, but this is strongly not advisable for production environments. This feature can be disabled, so manual configuration is needed.
  • Autosetup is making use of Helm hooks (see, config template) , which are triggered by a post-install, post-upgrade hook. When everything is completed all resources are cleared during the helm deployment.
  • A caveat exists when using the Garage helm chart without persistence. It seems after 'rollover restart' and 'helm upgrade' new garage node Ids (using their CRD) are created and the configured become orphan. For this I'm going to open a bug.

Checklist

  1. Deploy it yourself with the ci-standalone-values.yaml template. You can validate the deployed Garage
kubectl exec -it opencti-ci-minio-0 -- /garage status
kubectl exec -it opencti-ci-minio-0 -- /garage layout show
kubectl exec -it opencti-ci-minio-0 -- /garage bucket info opencti-bucket
  1. Create an artifact

After deployment login to OpenCTI and create an artifact. See example below.

upload-artifact-opencti
  1. Validate if the artifact is stored correctly.
kubectl exec -it opencti-ci-minio-0 -- /garage bucket info opencti-bucket

Should show:

Size:            170.5 kiB (174.6 KB)       # with your expected size
Objects:         1

See example below.

example-garage-bucket-info

@avwsolutions
Copy link
Author

Issue with the CRD have been shared with the maintainers, https://git.deuxfleurs.fr/Deuxfleurs/garage/issues/1276.

@ialejandro ialejandro added the enhancement New feature or request label Jan 2, 2026
@ialejandro
Copy link
Member

I'll test this alternative

@ialejandro ialejandro force-pushed the main branch 2 times, most recently from e6145f5 to ab9bbca Compare January 30, 2026 12:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Evaluating Object Storage Alternatives Due to MinIO Maintenance-Only State

3 participants