Skip to content
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

[Platform] Allow onprem nodes to be reused after releasing them #5703

Closed
WesleyW opened this issue Sep 16, 2020 · 0 comments
Closed

[Platform] Allow onprem nodes to be reused after releasing them #5703

WesleyW opened this issue Sep 16, 2020 · 0 comments
Assignees
Labels
area/platform Yugabyte Platform priority/high High Priority

Comments

@WesleyW
Copy link
Contributor

WesleyW commented Sep 16, 2020

The original commit to #4320 deleted the node from the universe_details_json completely when releasing onprem nodes. This made it so replacements needed to be done through the "Edit universe" flow. Instead, when an onprem node is released, the universe should keep an entry for the node and just clear the IP associated with it so a new node can be added later. The released node itself should have in_use set to false so that it can be deleted or used in another universe.

@WesleyW WesleyW added the area/platform Yugabyte Platform label Sep 16, 2020
@WesleyW WesleyW self-assigned this Sep 16, 2020
@streddy-yb streddy-yb added the priority/high High Priority label Sep 21, 2020
iSignal pushed a commit that referenced this issue Sep 23, 2020
…m from universe metadata

Summary:
1. This diff aligns the OnPrem release node + re-add node flow to VM universes - releasing a node should
not clear the universe metaedata for that node. To re-add the node, use the "Node -> Actions -> Add"
flow instead of the "Edit Universe" flow.

2. Fixes bug introduced in D8405

3. Fixes bug introduced in https://phabricator.dev.yugabyte.com/D9097 - #5791 - releasing a node instance should only attempt to shut down processes on that node.

4. During an add node, we were not running the selection logic in NodeManager::pickNodes to select nodes from the onprem provider.

Test Plan:
1. Create an onprem universe, release node, verify that an entry still remains in the universe nodes page. Verify that the node shows up as not in use on the provider node instances page. Verify that data is deleted from a node when it is released.

2. Verify that a newly created universe can pick up a released node.

3. Verify that a newly created universe can pick up a combination of new nodes and released nodes.

Reviewers: arnav, daniel, ram, wesley

Reviewed By: ram

Subscribers: kannan, jenkins-bot, yugaware

Differential Revision: https://phabricator.dev.yugabyte.com/D8825
iSignal pushed a commit that referenced this issue Sep 25, 2020
… not delete them from universe metadata

Summary:
1. This diff aligns the OnPrem release node + re-add node flow to VM universes - releasing a node should
not clear the universe metaedata for that node. To re-add the node, use the "Node -> Actions -> Add"
flow instead of the "Edit Universe" flow.

2. Fixes bug introduced in D8405

3. Fixes bug introduced in https://phabricator.dev.yugabyte.com/D9097 - #5791 - releasing a node instance should only attempt to shut down processes on that node.

4. During an add node, we were not running the selection logic in NodeManager::pickNodes to select nodes from the onprem provider.

Test Plan:
1. Create an onprem universe, release node, verify that an entry still remains in the universe nodes page. Verify that the node shows up as not in use on the provider node instances page. Verify that data is deleted from a node when it is released.

2. Verify that a newly created universe can pick up a released node.

3. Verify that a newly created universe can pick up a combination of new nodes and released nodes.

Reviewers: arnav, wesley, daniel, zyu

Reviewed By: daniel, zyu

Subscribers: zyu, jenkins-bot, yugaware

Differential Revision: https://phabricator.dev.yugabyte.com/D9441
@iSignal iSignal closed this as completed Sep 25, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/platform Yugabyte Platform priority/high High Priority
Projects
None yet
Development

No branches or pull requests

3 participants