Support evacuation of pilorama #947

Closed
opened 2024-01-31 14:39:41 +00:00 by fyrchik · 2 comments
Owner
  1. Pilorama must be in read-only.
  2. Shards to evacuate to should be chosen according to HRW.
  3. If there are no shards left, evacuate to the container nodes.
    3.1. It is enough to evacuate to 1 other node, this should speed up operation time greatly.
  4. The operation should be interrupt-safe: service restart in the middle of migration should pick an old instance.
  5. The operation should be idempotent.
    5.1. Service restart in the middle of migration should pick the same shard if possible.
    5.2. If service is restarted in the middle of migration, do no excessive work for subsequent invocations. This doesn't include migration over network.
  6. It should be possible to drop any garbage one way or another.
  7. If we write "rebalancer" to use after migration, it should reuse evacuation code (moving pilorama between shards).
  8. (*) Implement asynchronous interface, like for evacuation command.
1. Pilorama must be in read-only. 2. Shards to evacuate to should be chosen according to HRW. 3. If there are no shards left, evacuate to the container nodes. 3.1. It is enough to evacuate to 1 other node, this should speed up operation time greatly. 4. The operation should be interrupt-safe: service restart in the middle of migration should pick an old instance. 5. The operation should be idempotent. 5.1. Service restart in the middle of migration should pick the same shard if possible. 5.2. If service is restarted in the middle of migration, do no excessive work for subsequent invocations. This doesn't include migration over network. 6. It should be possible to drop any garbage one way or another. 7. If we write "rebalancer" to use after migration, it should reuse evacuation code (moving pilorama between shards). 8. (*) Implement asynchronous interface, like for evacuation command.
fyrchik added this to the v0.38.0 milestone 2024-01-31 14:39:41 +00:00
fyrchik added the
frostfs-node
label 2024-01-31 14:39:41 +00:00
fyrchik self-assigned this 2024-01-31 14:39:41 +00:00
fyrchik removed their assignment 2024-02-01 10:29:24 +00:00
dstepanov-yadro was assigned by fyrchik 2024-02-01 10:29:25 +00:00
Author
Owner
See https://git.frostfs.info/fyrchik/frostfs-node/src/branch/evacuate-pilorama

Extended frostfs-cli control shards evacuation start command.

Extended `frostfs-cli control shards evacuation start` command.
Sign in to join this conversation.
No milestone
No project
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: TrueCloudLab/frostfs-node#947
No description provided.