Transitioning from Hitachi Content Platform (HCP) to MinIO has never been easier, thanks to our HCP-to-MinIO tool. Developed to support our customers' evolving storage needs, this tool is freely available on
Customers often migrate from HCP to MinIO for several compelling reasons, particularly when optimizing for AI-driven applications:
Modern Application Requirements: MinIO is Kubernetes-native and built for the cloud operating model, which means that it inherently supports most modern application stacks for analytics, statistical analysis and AI/ML workloads.
Performance at Scale: MinIO efficiently handles mixed object sizes, from very small to very large, ensuring optimal performance for data-intensive AI operations.
Flexibility: Software-defined, S3-compatible object storage offers greater flexibility and cloud neutrality compared to dedicated storage appliances.
During migration, it's recommended to write exclusively to MinIO and not to HCP. This approach ensures you start as you plan to go on: using MinIO as your primary object store. Here’s the process:
Initial Read Operations: While migrating, getobject
calls are directed to MinIO. If an object isn't found, it's read from HCP. Once all objects are copied, this fallback can be removed.
Preserving Metadata: The tool retains the modified timestamps of objects during the migration.
After downloading the HCP-to-MinIO tool the first step is to create a temporary directory for the results of the list command in Step 2:
$ mkdir /tmp/data
Next, set the following environment variables:
$ export MINIO_ACCESS_KEY=<Your-MinIO-Access-Key>
$ export MINIO_SECRET_KEY=<Your-MinIO-Secret-Key>
$ export MINIO_ENDPOINT=https://<Your-MinIO-IP-Address>:9000
$ export MINIO_BUCKET=newbucket # optional, if unspecified HCP bucket name is used
The list
command generates a list of objects stored in HCP and saves it to a local file. This file can be split into smaller lists and processed in parallel by multiple client machines to speed up the migration.
Here is the command:
hcp-to-minio list --auth-token --namespace-url --host-header --namespace-url --dir
And an example of what it might look like:
$ hcp-to-minio list --auth-token "HCP bXl1c2Vy:3f3c6784e97531774380db177774ac8d" --host-header "HOST:s3testbucket.tenant.hcp.example.com" --namespace-url "https://hcp-vip.example.com" --dir "/tmp/data"
The migrate
command uses the list generated in the first step to transfer objects from HCP to MinIO.
The command:
hcp-to-minio migrate --namespace-url --auth-token --host-header --data-dir --bucket --input-file
The example:
$ hcp-to-minio migrate --namespace-url https://finance.europe.hcp.example.com --auth-token "HCP bXl1c2Vy:3f3c6784e97531774380db177774ac8d" --host-header "s3testbucket.sandbox.hcp.example.com" --data-dir /mnt/data --bucket s3testbucket --input-file /tmp/data/to-migrate.txt
The HCP-to-MinIO tool is designed to help you move to a modern, scalable object storage solution. Download the tool from