Why do I see wrong s3fs or IAM API endpoints when I create a PVC?
Troubleshoot persistent volume claims that fail with S3FS and IAM endpoint errors.
Virtual Private Cloud Classic infrastructure
This troubleshooting topic applies only to Red Hat OpenShift clusters that run version 3.11.
When you create the PVC, the PVC remains in a pending state. After you run the oc describe pvc <pvc_name> command, you see one of the following error messages:
Bad value for ibm.io/object-store-endpoint XXXX: scheme is missing. Must be of the form http://<hostname> or https://<hostname>
Bad value for ibm.io/iam-endpoint XXXX: scheme is missing. Must be of the form http://<hostname> or https://<hostname>
The s3fs API endpoint for the bucket that you want to use might have the wrong format, or your cluster is deployed in a location that is supported in Red Hat OpenShift on IBM Cloud but is not yet supported by the IBM Cloud Object Storage plug-in.
Complete the following steps:
-
Check the s3fs API endpoint that was automatically assigned by the
ibmcHelm plug-in to your storage classes during the IBM Cloud Object Storage plug-in installation. The endpoint is based on the location that your cluster is deployed to.oc get sc ibmc-s3fs-standard-regional -o yaml | grep object-store-endpointIf the command returns
ibm.io/object-store-endpoint: NA, your cluster is deployed in a location that is supported in Red Hat OpenShift on IBM Cloud but is not yet supported by the IBM Cloud Object Storage plug-in. To add the location to the Red Hat OpenShift on IBM Cloud, post a question in Slack or open an IBM Cloud support case. For more information, see Getting help and support. -
If you manually added the s3fs API endpoint with the
ibm.io/endpointannotation or the IAM API endpoint with theibm.io/iam-endpointannotation in your PVC, make sure that you added the endpoints in the formathttps://<s3fs_api_endpoint>andhttps://<iam_api_endpoint>. The annotation overwrites the API endpoints that are automatically set by theibmcplug-in in the IBM Cloud Object Storage storage classes.oc describe pvc <pvc_name>