Add shard labels to the configuration #722

Open
opened 2023-10-05 12:25:19 +00:00 by fyrchik · 2 comments
Owner

There are 2 options here (not mutually exclusive):

  1. Add shard ID to the config and remove auto generation.
  2. Add a list of labels to the shard.

Rationale:

  1. Working with control service can be a pain: imagine 8 shards, 4 of which share the same SSD (metabase). To remove SSD we need to list shards, pick ugly identifiers by hand and provide them to a command. After this issue it will be possible to provide a single label.
  2. Looking is grafana is not as pleasant as it could be. If we had labels, we could easier see what shards are slower. From @dstepanov-yadro
There are 2 options here (not mutually exclusive): 1. Add shard ID to the config and remove auto generation. 2. Add a list of labels to the shard. Rationale: 1. Working with control service can be a pain: imagine 8 shards, 4 of which share the same SSD (metabase). To remove SSD we need to list shards, pick ugly identifiers by hand and provide them to a command. After this issue it will be possible to provide a single label. 2. Looking is grafana is not as pleasant as it could be. If we had labels, we could easier see what shards are slower. From @dstepanov-yadro
fyrchik added the
config
discussion
frostfs-node
labels 2023-10-05 12:25:19 +00:00
fyrchik added the
enhancement
label 2023-10-05 12:40:41 +00:00
fyrchik added this to the vNext milestone 2023-10-05 12:41:17 +00:00
fyrchik modified the milestone from vNext to v0.39.0 2024-03-20 11:44:46 +00:00
Author
Owner

We already calculate REAL id for SIGHUP handling

func calculateShardID(info shard.Info) string {


I believe new id can be just the hash of this one.

We already calculate REAL id for SIGHUP handling https://git.frostfs.info/TrueCloudLab/frostfs-node/src/commit/c09c70161395b5d34dc4ea128fc63877e5d1f773/pkg/local_object_storage/engine/control.go#L365 I believe new id can be just the hash of this one.
Author
Owner

Another reason to get rid of update shard ID: it is currently done in single thread for all shards, so in case bbolt db takes too long time to open (there are some setting that affect startup time after crash), node startup time may increase.

Another reason to get rid of update shard ID: it is currently done in single thread for all shards, so in case bbolt db takes too long time to open (there are some setting that affect startup time after crash), node startup time may increase.
fyrchik modified the milestone from v0.39.0 to v0.40.0 2024-05-14 14:11:36 +00:00
fyrchik modified the milestone from v0.40.0 to v0.41.0 2024-06-01 09:19:46 +00:00
fyrchik modified the milestone from v0.41.0 to v0.42.0 2024-06-14 07:06:46 +00:00
fyrchik modified the milestone from v0.42.0 to v0.43.0 2024-07-23 06:34:43 +00:00
fyrchik modified the milestone from v0.43.0 to v0.44.0 2024-09-30 11:51:35 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
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#722
No description provided.