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
Run node cleanup after scaling the ScyllaCluster #1294
Conversation
@zimnx to validate the logic: |
It's executed once on every node except last one that joined, only when Operator is done with scaling. Edit: |
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.
Left a few comments. Very nice job overall!
@@ -433,13 +434,13 @@ func TestStatefulSetForRack(t *testing.T) { | |||
Kind: "ScyllaCluster", | |||
Name: "basic", | |||
UID: "the-uid", | |||
Controller: pointer.Bool(true), | |||
BlockOwnerDeletion: pointer.Bool(true), | |||
Controller: pointer.Ptr(true), |
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.
Shouldn't these changes be in a separate commit? They're not directly related to this feature.
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.
extracted
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 assume they could technically even ship separately (but the bar is lower until we get a new CI)
7d1f6ce
to
fc4c472
Compare
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.
Thanks, lgtm now
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.
scanned through the important parts, got a few question before I go through the rest, thanks!
d18639a
to
79b1c0d
Compare
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.
round 2
progressingMessages = append(progressingMessages, fmt.Sprintf("Waiting for ScyllaCluster %q to rollout.", naming.ObjRef(sc))) | ||
} | ||
|
||
if len(progressingMessages) != 0 { |
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.
note: being discussed on the proposal - #1300 (comment)
88e6b3a
to
f0cdcd8
Compare
What's the latest with this PR? I see most / all conversations marked as 'outdated' - can we resolve those that were and move forward? |
It's waiting for @tnozicka feedback about review remarks resolution and approval. |
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.
thanks for the updates
/lgtm
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.
/lgtm
Running node cleanup after scaling a cluster allows to avoid the accumulation of unnecessary data on the node disks. When nodes are added or removed from the cluster, they gain or lose some tokens, which can result in files stored on the node disks still containing data associated with lost tokens. Over time, this can lead to a build-up of unnecessary data and cause disk space issues. By running node cleanup after scaling, these files can be cleared, freeing up disk space. Scylla Operator was extended with controllers responsible for executing a cleanup on nodes after horizontally scaling.
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.
/lgtm
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: tnozicka, zimnx The full list of commands accepted by this bot can be found here.
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
Operator v1.10 runs cleanups [1] on each of the old nodes after adding a new one like it is recommended by the Scylla documentation [2]. So, cover this functionality with the functional test. [1] scylladb/scylla-operator/pull/1294 [2] https://opensource.docs.scylladb.com/stable/operating-scylla/ \ procedures/cluster-management/add-node-to-cluster.html
Operator v1.10 runs cleanups [1] on each of the old nodes after adding a new one like it is recommended by the Scylla documentation [2]. So, cover this functionality with the functional test. [1] scylladb/scylla-operator/pull/1294 [2] https://opensource.docs.scylladb.com/stable/operating-scylla/ \ procedures/cluster-management/add-node-to-cluster.html
Operator v1.10 runs cleanups [1] on each of the old nodes after adding a new one like it is recommended by the Scylla documentation [2]. So, cover this functionality with the functional test. [1] scylladb/scylla-operator/pull/1294 [2] https://opensource.docs.scylladb.com/stable/operating-scylla/ \ procedures/cluster-management/add-node-to-cluster.html
Operator v1.10 runs cleanups [1] on each of the old nodes after adding a new one like it is recommended by the Scylla documentation [2]. So, cover this functionality with the functional test. [1] scylladb/scylla-operator/pull/1294 [2] https://opensource.docs.scylladb.com/stable/operating-scylla/ \ procedures/cluster-management/add-node-to-cluster.html
Running node cleanup after scaling a cluster allows to avoid the
accumulation of unnecessary data on the node disks. When nodes are added
or removed from the cluster, they gain or lose some tokens, which can
result in files stored on the node disks still containing data
associated with lost tokens. Over time, this can lead to a build-up of
unnecessary data and cause disk space issues. By running node cleanup
after scaling, these files can be cleared, freeing up disk space.
Scylla Operator was extended with controllers responsible for executing
a cleanup on nodes after horizontally scaling.
Fixes #1317