Alauda Container Platform (ACP) Object Storage with MinIO is an object storage service based on the Apache License v2.0 open-source protocol. It is compatible with the Amazon S3 cloud storage service interface and is ideal for storing large volumes of unstructured data, such as images, videos, log files, backup data, and container/virtual machine images. An object file can be of any size, ranging from a few kilobytes to a maximum of 5 terabytes.
MinIO is built on underlying storage, so please ensure that a storage class has been created in the current cluster. TopoLVM is recommended.
In the left navigation bar, click Storage > Object Storage.
Click Configure Now.
On the Deploy MinIO Operator wizard page, click Deploy Operator at the bottom right.
Once the page automatically proceeds to the next step, it indicates that the Operator deployment was successful.
If the deployment fails, refer to the interface prompts to Clean Up Deployed Information and Retry, and redeploy the Operator.
On the Create Cluster wizard page, configure the basic information.
Parameter | Description |
---|---|
Access Key | Access key ID. A unique identifier associated with a private access key; used with the access key ID to encrypt and sign requests. |
Secret Key | Private access key used in conjunction with the access key ID to encrypt and sign requests, identify the sender, and prevent request tampering. |
In the Resource Configuration area, configure specifications as per the following instructions.
Parameter | Description |
---|---|
Small scale | Suitable for handling up to 100,000 objects, supporting concurrent access of no more than 50 in test environments or data backup scenarios. The CPU resource request and limit are set to 2 cores by default, and the memory resource request and limit are set to 4 Gi. |
Medium scale | Designed for enterprise-level applications requiring storage of 1,000,000 objects and capable of handling up to 200 concurrent requests. The CPU resource request and limit are set to 4 cores by default, and the memory resource request and limit are set to 8 Gi. |
Large scale | Designed for group users with storage needs of 10,000,000 objects and handling up to 500 concurrent requests, suitable for high-load scenarios. The CPU resource request and limit are set to 8 cores by default, and the memory resource request and limit are set to 16 Gi. |
Custom | Offers flexible configuration options for professional users with specific needs, ensuring precise matching of service scale and performance requirements. Note: When configuring custom specifications, ensure that: |
In the Storage Pool area, configure related information as per the following instructions.
Parameter | Description |
---|---|
Instance Number | Increasing the number of instances in a MinIO cluster can significantly enhance system performance and reliability, ensuring high data availability. However, too many instances can lead to the following issues: |
In the Access Configuration area, configure related information as per the following instructions.
Parameter | Description |
---|---|
External Access | When enabled, it supports cross-cluster access to MinIO; when disabled, it only supports access within the cluster. |
Protocol | Supports HTTP and HTTPS; when selecting HTTPS, you need to enter the Domain and import the Public Key and Private Key of the domain name certificate. |
Note: |
Click Create Cluster at the bottom right.
Once the page automatically proceeds to Cluster Details, it indicates that the cluster creation was successful.
If the cluster remains in the creation process, you can click Cancel. After cancellation, the deployed cluster information will be cleaned up, and you can return to the cluster creation page to recreate the cluster.
Log in to the control node of the cluster and use the command to create a bucket.
On the cluster details page, click the Access Method tab to view the MinIO access address, or use the following command to query.
Note:
tenant ns
with the actual namespace minio-system
.kubectl get svc -n minio-system minio | grep -w minio | awk '{print $3}'
Obtain the mc command.
Configure MinIO cluster alias.
IPv4:
IPv6:
Domain Name:
Note:
minio endpoint
.accessKey
and secretKey
.mc --insecure alias set myminio http://12.4.121.250:80 07Apples@ 07Apples@
mc --insecure alias set myminio http://[2004::192:168:143:117]:80 07Apples@ 07Apples@
mc --insecure alias set myminio http://test.minio.alauda:80 07Apples@ 07Apples@
or mc --insecure alias set myminio https://test.minio.alauda:443 07Apples@ 07Apples@
Create a bucket.
Once the bucket is created, you can use the command line to upload files to the bucket or download existing files from the bucket.
Create a file for upload testing. This step can be skipped if uploading an existing file.
Upload files to the bucket.
View files in the bucket to confirm successful upload.
Delete uploaded files.
Note: When adding additional storage pools, the redundancy factor needs to be calculated based on the number of instances in the first storage pool.
Instance Number | Redundancy Factor |
---|---|
4 - 5 | 2 |
6 - 7 | 3 |
>= 8 | 4 |
Storage Pool Overview Parameter | Calculation Formula |
---|---|
Usable Capacity | When the Instance Number ≤ 16, Usable Capacity = Single Storage Volume Capacity × (Instance Number - Redundancy Factor). |
When the number of instances > 16, Usable Capacity = Single Storage Volume Capacity × (Instance Number - 4 × (Instance Number + 15) / 16)). The result of "4 × (Instance Number + 15) / 16)" should be rounded down. | |
Total Capacity | Total Capacity = Instance Numbers × Single Storage Volume Capacity |
Number of failover storage services tolerated | When the Instance Number > 2 × Redundancy Factor, Number of Tolerable Fault Storage Services = Redundancy Factor. |
When the Instance Number = 2 × Redundancy Factor, the number of tolerable fault storage services = Redundancy Factor - 1 |