Here is the list of Operations managed by CassKop at the Pod operations level, which apply at pod level and can be triggered by specifics pods labels. Status of pod operations are also followed up at rack level.
Some Pods Operations can be triggered automatically by CassKop if :
CassandraCluster.spec.autoPilotis true, that will trigger
upgadesstableoperation in response to cluster events automatically.
decommission operationis special and will be triggered automatically each time we need to ScaleDown a Pod.
removenode operationis also special and may be set manually when needed.
It is also possible to trigger operations "manually", setting some labels on the Pods.
A Cleanup may be automatically triggered by CassKop when it ends Scaling the cluster.
CassKop will set some specific labels on the targeted pods.
We can also set these labels manually, or using the privided plugin (
kubectl casskop cleanup start)
If we want to see labels for each of the pods of the cluster :
Now, to trigger a
cleanup on pod
Automatically, CassKop will detect the change, start the action, and update the status :
podLastOperation appears and we can see that it has correctly executed the cleanup operation on the 2
This operation operates on multiple nodes in the cluster. Use this operation when CassKop add a new datacenter to an existing cluster.
In the background this command is equivalent to set labels on each pods like :
This operation can be triggered with the plugin using simple commands as :
After one of this command, CassKop will do a rolling restart of each rack one at a time avoiding any disruption.