Huawei OceanStor Pacific Object Storage and Red Hat OpenShift
Interoperability Test Report
Axians Global
All Rights Reserved
Executive Summary
Axians Global (“Axians”) assessed the interoperability of Red Hat OpenShift with Huawei OceanStor Pacific Object Storage Service solution. The goal of the assessment is to validate that Red Hat OpenShift is interoperable with Huawei OceanStor Pacific Object Storage Service.
In the assessment, Axians has determined that Red Hat OpenShift will function with Huawei OceanStor Pacific Object Storage Service for the following scenarios:
Test Scenario | Storage Involved | Result |
OpenShift & OceanStor Pacific Object Storage Service Basic Function | OceanStor Pacific Object Storage Service | Passed |
In this document, you will find details on the above test cases and the captured output. The procedures conducted in the tests are referenced from standard online documentation from Red Hat OpenShift and Huawei.
1.Environment Configuration
1.1 Networking diagram
Figure 1.1 Huawei OceanStor Pacific Object Storage Service Function Compatibility Test Networking 1
1.2 Hardware and Software Configuration
1.2.1 Storage Configuration
Table 1-1 Huawei storage configuration table
Name | Model | Version | Quantity |
Storage | Huawei OceanStor Pacific Object Storage Service (Hereinafter referred to as “the storage” as well) | 8.1 | 1 |
1.2.2 Matching Hardware Configuration
Table 1-2 Hardware Configuration
Name | description | Usage | Quantity |
Ethernet switch | Huawei CE6865 | Ethernet switches for service and management networking. | 2 |
1.2.3 Test Software and Tools
Table 1-3 Test Software and Tool List
Software Name | Version | Quantity |
VMWare ESXi | 6.7 | 1 |
Red Hat OpenShift | 4.16 | 1 |
Huawei COSI Driver software | 1.0.0 | 1 |
2.OceanStor Pacific Object Storage Service Interconnection with Red Hat OpenShift
2.1 Install Huawei COSI through Helm
Test Purpose | To verify that the Huawei COSI plug-in can be installed through Helm |
Test Networking | Huawei OceanStor Pacific Object Storage Service Function Compatibility Test Networking 1 |
Prerequisites | 1. Red Hat OpenShift is running normally. 2. The storage system is running normally. 3. The network between the storage and OpenShift is connected correctly. |
Test Procedure | 1. Import the image to the work nodes. 2. Creating the SecurityContextConstraints resource. 3. Start the Huawei COSI plug-in service. |
Expected Result | 1. In step 3, the status of Huawei COSI plug-in service is running. |
Test Results | 1. Import the image to the work nodes. 2. Creating the SecurityContextConstraints resource. 3. The status of Huawei COSI plug-in service is running. |
Test Conclusion | Passed |
2.2 Create, query and delete BucketClass
Test Purpose | To verify that the BucketClass can be created, queried and deleted successfully. |
Test Networking | Huawei OceanStor Pacific Object Storage Service Function Compatibility Test Networking 1 |
Prerequisites | 1. Red Hat OpenShift is running normally. 2. The storage system is running normally. 3. The network between the storage and OpenShift is connected correctly. 4. Huawei COSI plug-in is configured and started normally. |
Test Procedure | 1. Create and configure StorageClass config file and create BucketClass. 2. Run the oc get bucketclass command to query the BucketClass. 3. Run the oc gdelete bucketclass command to delete the BucketClass. |
Expected Result | 1. In step 1, the BucketClass is created successfully. 2. In step 2, the BucketClass is queried successfully. 3. In step 3, the BucketClass is deleted successfully. |
Test Results | 1. The BucketClass is created successfully. 2. The BucketClass is queried successfully. 3. The BucketClass is deleted successfully. |
Test Conclusion | Passed |
2.3 Create, query and delete Dynamic Bucket
Test Purpose | To verify that the COSI plug-in can create, query, and delete dynamic buckets. |
Test Networking | Huawei OceanStor Pacific Object Storage Service Function Compatibility Test Networking 1 |
Prerequisites | 1. Red Hat OpenShift is running normally. 2. The storage system is running normally. 3. The network between the storage and OpenShift is connected correctly. 4. Huawei COSI plug-in is configured and started normally. |
Test Procedure | 1. Create and configure BucketClaim config file, set the deletion policy to Delete, and then create BucketClaim. 2. Run the oc get bucketclaim command to query the BucketClaim. 3. Run the oc get bucket command to query the Bucket. 4. Run the oc delete bucketclaim command to delete the BucketClaim and Bucket. |
Expected Result | 1. In step 1, the BucketClaim and Bucket are created successfully. The bucket is successfully created on the storage device. 2. In step 2, the BucketClaim is queried successfully. 3. In step 3, the Bucket is queried successfully. 4. In step 4, the BucketClaim and Bucket are deleted successfully. The bucket is successfully deleted on the storage device. |
Test Results | 1. The BucketClaim is created successfully. The bucket is successfully created on the storage device. 2. The BucketClaim is queried successfully. 3. The Bucket is queried successfully. 4. The BucketClaim and Bucket are deleted successfully. The bucket is successfully deleted on the storage device. |
Test Conclusion | Passed |
2.4 Create, query and delete Static Bucket
Test Purpose | To verify that the COSI plug-in can create, query, and delete static buckets. |
Test Networking | Huawei OceanStor Pacific Object Storage Service Function Compatibility Test Networking 1 |
Prerequisites | 1. Red Hat OpenShift is running normally. 2. The storage system is running normally. 3. The network between the storage and OpenShift is connected correctly. 4. Huawei COSI plug-in is configured and started normally. |
Test Procedure | 1. Create a bucket on the storage device. 2. Create and configure Bucket config file, set the deletion policy to Delete, and then . Bucket. 3. Run the oc get bucket command to query the Bucket. 4. Create and configure BucketClaim config file, and then create BucketClaim. 5. Run the oc get bucketclaim command to query the BucketClaim. 6. Run the oc get bucket command to query the Bucket. 7. Run the oc gdelete bucketclaim command to delete the BucketClaim and Bucket. |
Expected Result | 1. In step 1, the bucket is successfully created on the storage device. 2. In step 2, the Bucket is created successfully. 3. In step 3, the Bucket is queried successfully 4. In step 4, the BucketClaim is created successfully. 5. In step 5, the BucketClaim is queried successfully 6. In step 6, the bucketClaim information is set to the bucket. 7. In step 7, the BucketClaim and Bucket are deleted successfully. The bucket on the storage device is reserved. |
Test Results | 1. The bucket is successfully created on the storage device. 2. The Bucket is created successfully. 3. The Bucket is queried successfully. 4. The BucketClaim is created successfully. 5. The BucketClaim is queried successfully. 6. The bucketClaim information is set to the bucket. 7. The BucketClaim and Bucket are deleted successfully. The bucket is successfully deleted on the storage device. |
Test Conclusion | Passed |
2.5 Create, query and delete BucketAccessClass
Test Purpose | To verify that the BucketAccessClass can be created, queried and deleted successfully. |
Test Networking | Huawei OceanStor Pacific Object Storage Service Function Compatibility Test Networking 1 |
Prerequisites | 1. Red Hat OpenShift is running normally. 2. The storage system is running normally. 3. The network between the storage and OpenShift is connected correctly. 4. Huawei COSI plug-in is configured and started normally. |
Test Procedure | 1. Create and configure StorageAccessClass config file, and then create BucketAccessClass. 2. Run the oc get bucketaccessclass command to query the BucketAccessClass. 3. Run the oc delete bucketaccessclass command to delete the BucketAccessClass. |
Expected Result | 1. In step 1, the BucketAccessClass is created successfully. 2. In step 2, the BucketAccessClass is queried successfully. 3. In step 3, the BucketAccessClass is deleted successfully. |
Test Results | 1. The BucketAccessClass is created successfully. 2. The BucketAccessClass is queried successfully. 3. The BucketAccessClass is deleted successfully. |
Test Conclusion | Passed |
2.6 Create, query and delete BucketAccess
Test Purpose | To verify that the BucketAccess can be created, queried and deleted successfully with COSI plug-in |
Test Networking | Huawei OceanStor Pacific Object Storage Service Function Compatibility Test Networking 1 |
Prerequisites | 1. Red Hat OpenShift is running normally. 2. The storage system is running normally. 3. The network between the storage and OpenShift is connected correctly. 4. Huawei COSI plug-in is configured and started normally. 5. BucketClaim and BucketAccessClass have been created using the COSI plug-in. |
Test Procedure | 1. Create and configure StorageAccess config file, and then create BucketAccess. 2. Run the oc get bucketaccess command to query the BucketAccess. 3. Run the oc delete bucketaccess command to delete the BucketAccess. |
Expected Result | 1. In step 1, BucketAccess and a secret containing credential information are successfully created on the host. A user is successfully created on the storage device and a bucket policy is created for the user on the bucket. 2. In step 2, the BucketAccess and Secret are queried successfully. 3. In step 3, the BucketAccess and Secret are deleted successfully. The user on the storage device and the bucket policy on the bucket are deleted. |
Test Results | 1. The BucketAccess is created successfully. A user is successfully created on the storage device. A bucket policy is created for the user on the bucket. 2. The BucketAccess is queried successfully. The Secret is queried successfully. 3. The BucketAccess is deleted successfully. The Secret is deleted successfully. The user on the storage device is deleted. The bucket policy on the bucket is deleted. |
Test Conclusion | Passed |
2.7 Mount the credential secret object to the specified directory of the Pod.
Test Purpose | To verify that the Pod can be created, queried and deleted successfully |
Test Networking | Huawei OceanStor Pacific Object Storage Service Function Compatibility Test Networking 1 |
Prerequisites | 1. Red Hat OpenShift is running normally. 2. The storage system is running normally. 3. The network between the storage and OpenShift is connected correctly. 4. Huawei COSI plug-in is configured and started normally. 5. A credential secret has been created using the COSI plug-in. |
Test Procedure | 1. Create and configure Pod config file, and then create Pod. 2. Run the oc get Pod command to query the Pod. 3. Checking Information in the Pod Mount Path. 4. Run the oc delete Pod command to delete the Pod. |
Expected Result | 1. In step 1, the Pod is created successfully. 2. In step 2, the Pod is queried successfully. The Pod is in the running state. 3. In step 3, the information about the mounted file is the same as the secret of the credential. 4. In step 4, the Pod is deleted successfully. |
Test Results | 1. The Pod is created successfully. 2. The Pod is queried successfully. The Pod is in the running state. 3. The information about the mounted file is the same as the secret of the credential. The files mounted in a pod. Bucket information of the secret credential. 4. The Pod is deleted successfully. |
Test Conclusion | Passed |
3.Reference
3.1 Red Hat OpenShift Platform 4.16 Documentation
OpenShift Container Platform | Red Hat Product Documentation