Project

General

Profile

Actions

Idea #15641

open

[keep-balance] [SDKs] rendezvous by volume UUID instead of server UUID

Added by Tom Clegg about 5 years ago. Updated 9 months ago.

Status:
New
Priority:
Normal
Assigned To:
-
Category:
-
Target version:
Start date:
Due date:
Story points:
-
Release:
Release relationship:
Auto

Description

When distributing data across multiple volumes in a cloud environment, rendezvous hashing should be based on volume ID:
  • all keepstore servers access all volumes
  • client/proxy uses rendezvous hash to sort/choose from the volume(s) in cluster config, and connects to the keepstore server(s) that have access to the chosen volumes
  • keepstore uses rendezvous hash to sort/choose from the volumes it has access to
  • keep-balance uses rendezvous hash to choose preferred volume(s) where a blob should be stored, and when pulling/trashing, chooses a random/arbitrary keepstore from the ones that have write access to the relevant volume

(Current code uses rendezvous to select a server, and sorts/chooses volumes in random/arbitrary order. This causes unnecessary bottlenecks between clients and buckets (one writable bucket per server / one writing server per bucket) and excessive keepstore-to-backend probing (multiple writable buckets per server).)


Related issues

Related to Arvados - Feature #13647: [keepstore] Load cluster configuration fileResolvedTom Clegg07/11/2019Actions
Related to Arvados - Feature #14714: [keep] keep-balance uses cluster config fileResolvedEric Biagiotti09/26/2019Actions
Actions #1

Updated by Tom Clegg about 5 years ago

  • Description updated (diff)
Actions #2

Updated by Tom Clegg about 5 years ago

  • Related to Feature #13647: [keepstore] Load cluster configuration file added
Actions #3

Updated by Tom Clegg about 5 years ago

  • Subject changed from [keep-balance] rendezvous by volume UUID instead of server UUID to [keep-balance] [SDKs] rendezvous by volume UUID instead of server UUID
Actions #4

Updated by Tom Clegg about 5 years ago

  • Related to Feature #14714: [keep] keep-balance uses cluster config file added
Actions #5

Updated by Tom Clegg about 5 years ago

  • Related to Idea #13648: [Epic] Use one cluster configuration file for all components added
Actions #6

Updated by Peter Amstutz almost 5 years ago

  • Related to deleted (Idea #13648: [Epic] Use one cluster configuration file for all components)
Actions #7

Updated by Peter Amstutz almost 2 years ago

  • Release set to 60
Actions #8

Updated by Peter Amstutz 9 months ago

  • Target version set to Future
Actions

Also available in: Atom PDF