-
-
Notifications
You must be signed in to change notification settings - Fork 7
feat: HBase resolvable endpoints #1159
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
base: main
Are you sure you want to change the base?
Conversation
hbase/stackable/patches/2.6.1/0005-Allow-overriding-ipc-bind-port-and-use-alternative-p.patch
Outdated
Show resolved
Hide resolved
hbase/stackable/patches/2.6.1/0005-Allow-overriding-ipc-bind-port-and-use-alternative-p.patch
Outdated
Show resolved
Hide resolved
hbase/stackable/patches/2.6.1/0005-Allow-overriding-ipc-bind-port-and-use-alternative-p.patch
Outdated
Show resolved
Hide resolved
hbase/stackable/patches/2.6.1/0005-Allow-overriding-ipc-bind-port-and-use-alternative-p.patch
Outdated
Show resolved
Hide resolved
rpcServices = createRpcServices(); | ||
useThisHostnameInstead = getUseThisHostnameInstead(conf); | ||
+ useThisPortInstead = getUseThisPortInstead(conf); | ||
+ useThisInfoPortInstead = conf.getInt("hbase.info.port" , this.infoServer != null ? this.infoServer.getPort() : -1); |
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.
Do we want to pull hbase.info.port
into a constant for consistency? For the same reason, we might want to split it into master/regionserver variants?
Also, directionally.. for RPC ports we follow the existing RPC hostname convention of "leave the existing key as the advertised port, introduce a new key for overriding the bound port". I agree that overriding the advertised port instead makes more sense in isolation (and is consistent with kafka et al), but we should probably try to be consistent (both with the rest of our patch and with existing HBase code).
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.
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.
hbase.info.port
is now hbase.master.bound.info.port
and hbase.regionserver.bound.info.port
.
We are not touching MASTER_INFO_PORT
(= "hbase.master.info.port"): is that you meant with "leave the existing key as the advertised port, introduce a new key for overriding the bound port"?
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 looking at it now.. MASTER_INFO_PORT
is bound (in HRegionServer.putUpWebUI()
), MASTER_BOUND_INFO_PORT
/useThisInfoPortInstead
is advertised. That's.. backwards, at least compared to their names.
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.
So
public static final String MASTER_BOUND_INFO_PORT = "hbase.master.bound.info.port";
should be renamed to something like:
public static final String MASTER_ADVERTISED_INFO_PORT = "hbase.master.advertised.info.port";
as MASTER_INFO_PORT
is already the bound one?
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.
That would be one way, yeah. But as I said above, I think we should try to be consistent about whether the "old" property (MASTER_INFO_PORT
) is for the bound or advertised port.
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've endeavoured to make that change in a separate patch: ee7ea2e
hbase/stackable/patches/2.6.1/0005-Allow-overriding-ipc-bind-port-and-use-alternative-p.patch
Outdated
Show resolved
Hide resolved
hbase/stackable/patches/2.6.1/0005-Allow-overriding-ipc-bind-port-and-use-alternative-p.patch
Outdated
Show resolved
Hide resolved
hbase/stackable/patches/2.6.1/0005-Allow-overriding-ipc-bind-port-and-use-alternative-p.patch
Outdated
Show resolved
Hide resolved
hbase/stackable/patches/2.6.1/0005-Allow-overriding-ipc-bind-port-and-use-alternative-p.patch
Outdated
Show resolved
Hide resolved
…ort-and-use-alternative-p.patch Co-authored-by: Natalie Klestrup Röijezon <[email protected]>
…ort-and-use-alternative-p.patch Co-authored-by: Natalie Klestrup Röijezon <[email protected]>
Description
fixes: stackabletech/hbase-operator#641
Warning
Merge this at the same time as stackabletech/hbase-operator#639, otherwise tests will break!
Definition of Done Checklist
Note
Not all of these items are applicable to all PRs, the author should update this template to only leave the boxes in that are relevant.
Please make sure all these things are done and tick the boxes
TIP: Running integration tests with a new product image
The image can be built and uploaded to the kind cluster with the following commands:
See the output of
bake
to retrieve the image tag for<image-tagged-with-the-major-version>
.