Environment
- Yugabyte Platform - All Versions
Issue
- Adding non-standard endpoints is not directly supported now.
- We get the below error on the Yugabyte Anywhere UI
"Request failed with status code 500".
- Also, We can see the below error logs in the application logs.
Caused by: java.net.URISyntaxException: Illegal character in hostname at index 32: https://yugabyte-backup-staging.[240b:c0e0:102:553e:b4c2:2::]:30000
at java.net.URI$Parser.fail(URI.java:2847)
at java.net.URI$Parser.parseHostname(URI.java:3386)
at java.net.URI$Parser.parseServer(URI.java:3235)
at java.net.URI$Parser.parseAuthority(URI.java:3154)
at java.net.URI$Parser.parseHierarchical(URI.java:3096)
at java.net.URI$Parser.parse(URI.java:3052)
at java.net.URI.<init>(URI.java:588)
at com.amazonaws.services.s3.internal.S3RequestEndpointResolver.convertToVirtualHostEndpoint(S3RequestEndpointResolver.java:75)
Resolution
Overview
While validating credentials and host base, YBA uses virtual hosted-style access. This works for default endpoints like s3.amazonaws.com, where the bucket is appended as a prefix to the host base for generating the connection URL. But while validating non-standard endpoints (Like Openstack or MinIO), It throughs UnknownHostException because the connection URL's DNS resolution fails.
So, To fix this issue, We need to enable Path Style Access in Yugabyte Anywhere.
Steps
1. Log in to Yugabyte Anywhere UI
2. Go to the below link.
<yugaware-server-ip>/features.
3. And enable enablePathStyleAccess Flag
4. Now we should be able to add the S3 backup configuration.
NOTE:
We enable this flag for a web session. Reloading the web session or opening a new window, resets the flag. So once this flag is enabled, We will have to add the configuration without reloading the window.
Comments
0 comments
Please sign in to leave a comment.