Install
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.
TOC
Prerequisites
MinIO is built on underlying storage, so please ensure that a storage class has been created in the current cluster. TopoLVM is recommended.
Deploy Operator
-
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.
-
Create Cluster
-
On the Create Cluster wizard page, configure the basic information.
-
In the Resource Configuration area, configure specifications as per the following instructions.
- The CPU resource request is greater than 100 m.
- The memory resource request is greater than or equal to 2 Gi.
- The CPU and memory resource limits are greater than or equal to the resource requests. |
-
In the Storage Pool area, configure related information as per the following instructions.
- Increased resource consumption.
- If a node hosts multiple instances, a node failure may cause multiple instances to go offline simultaneously, reducing overall cluster reliability. Note:
- The minimum number of instances that can be entered is 4.
- If the number of instances is greater than 16, the entered value must be a multiple of 8.
- When adding additional storage pools, the number of instances must be no less than the first storage pool's number of instances. | | Single Storage Volume | Capacity of a single storage volume PVC. Each storage service manages one storage volume. After entering the capacity of a single storage volume, the platform will automatically calculate the storage pool capacity and other information, which can be viewed in the Storage Pool Overview. | | Underlying Storage | The underlying storage used by the MinIO cluster. Please select a storage class that has been created in the current cluster. TopoLVM is recommended. | | Storage Nodes | Select the storage nodes required by the MinIO cluster. It is recommended to use 4-16 storage nodes. The platform will deploy one storage service for each selected storage node. | | Storage Pool Overview | For specific parameters and calculation formulas, please refer to Storage Pool Overview. |
-
In the Access Configuration area, configure related information as per the following instructions.
- When the access protocol is HTTP, pods within the cluster can access MinIO directly via the obtained IP or domain name without configuring IP address and domain name mapping; nodes within the cluster can access MinIO directly via the obtained IP, and if domain name access is required, manual configuration of IP address and domain name mapping is needed; external access can be done directly via the obtained IP.
- When the access protocol is HTTPS, access to MinIO via IP is not possible both inside and outside the cluster. Manual configuration of the mapping between the obtained IP address and the domain name entered during cluster creation is required to access normally via the domain name. | | Access Method |
- NodePort: Opens a fixed port on each compute node host to expose the service externally. When configuring domain name access, it is recommended to use VIP for domain name resolution to ensure high availability.
- LoadBalancer: Uses a load balancer to forward traffic to backend services. Before use, please ensure that the MetalLB plugin is deployed in the current cluster and there are available IPs in the external address pool. |
-
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.
-
Create Bucket
Log in to the control node of the cluster and use the command to create a bucket.
Procedure
-
On the cluster details page, click the Access Method tab to view the MinIO access address, or use the following command to query.
Note:
- Replace
tenant nswith the actual namespaceminio-system. - Example:
kubectl get svc -n minio-system minio | grep -w minio | awk '{print $3}'
- Replace
-
Obtain the mc command.
-
Configure MinIO cluster alias.
-
IPv4:
-
IPv6:
-
Domain Name:
Note:
- Enter the IP address obtained in step 1 for
minio endpoint. - Enter the Access Key and Secret Key created during cluster creation for
accessKeyandsecretKey. - Configuration examples:
- IPv4:
mc --insecure alias set myminio http://12.4.121.250:80 07Apples@ 07Apples@ - IPv6:
mc --insecure alias set myminio http://[2004::192:168:143:117]:80 07Apples@ 07Apples@ - Domain Name:
mc --insecure alias set myminio http://test.minio.alauda:80 07Apples@ 07Apples@ormc --insecure alias set myminio https://test.minio.alauda:443 07Apples@ 07Apples@
- IPv4:
-
-
Create a bucket.
Upload/Download Files
Once the bucket is created, you can use the command line to upload files to the bucket or download existing files from the bucket.
Procedure
-
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.
Related Information
Redundancy Factor Mapping Table
Note: When adding additional storage pools, the redundancy factor needs to be calculated based on the number of instances in the first storage pool.