-
Notifications
You must be signed in to change notification settings - Fork 2.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
object: virtulhostnames is not required in the endpoint for rgw #14034
Open
thotz
wants to merge
1
commit into
rook:master
Choose a base branch
from
thotz:remove-dns-name-from-endpoint
base: master
Could not load branches
Branch not found: {{ refName }}
Could not load tags
Nothing to show
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
+0
−3
Open
Changes from all commits
Commits
File filter
Filter by extension
Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Are you saying the dns host name is already added to this service name that would be returned here?
What was the bug? Were we returning an invalid domain name with line 353?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm also somewhat confused. Please update the commit description and PR description text to be clear about what problem exists and how this resolves it.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@travis and @BlaineEXE it is not because invalid DNS name.
The
endpoint
ofcephobjectstore
is populated with help ofBuildDNSEndpoint
which combines domain name fromgetDomainName
and port in theobjectstore.spec.gateway
. This approach is used in most of the Rook code base and even for adminsops api for Rook to communicate with RGW.In case of host feature is enabled it returns the domain from rgw DNS name list, but the domain picked may not have the same port as the rgw internal port which is failing for adminsops use case. So the populated endpoint in this case is wrong.
Even if the feature is enabled by default rgw service endpoint will be part of the rgw DNS names so we can pick RGW service endpoint for all the internal communications. As I mentioned earlier by default rgw service endpoint is part of there is no specific need to pick the domain name from the rgw DNS list
I have added this change in the first version based on the assumption that by default
rgw service endpoint
would not be added to rgw DNS names, when vhost feature is enabled. But later we decided to include therook-service-endpoint
to rgw DNS names if not it will break the existing clusters accessThere was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm still struggling to understand this.
However, I do understand this statement, and I don't think the logic makes sense to me:
If the RGW service endpoint exists, I don't think that necessarily means that we should pick it when reporting/selecting the endpoint. From what I understand, the point of adding
rgw dns names
is to allow users to use wildcard addressing, which is not possible for default service endpoints. Only the endpoints added by the user in.spec.hosting.dnsNames
are wildcard-addressable, and those endpoints should be preferred selections for OBCs and CephObjectStoreUsers. This is especially true because the wildcard-addressability is actually supposed to be the S3 default (the older path-style addressing is deprecated).