canonical / canonical/microceph

RFE: support mult. rgw frontends per node

Open
#667 2 comments 0 reactions 0 assignees View on GitHub
enhancement
Dominant language
Go
Stars
396
Forks
74
Avg merge
2d 20h
Merged PRs (30d)
7

Description

### Problem

On high core-count nodes, a single RGW daemon doesn;t always scale throughput linearly. In throughput testing we see per-daemon contention / limited core utilisation. Running multiple RGW daemons per physical node is a common way to scale RGW capacity, but MicroCeph currently doesnt support his

### Proposal

Add support to run N RGW daemons per node, each with its own frontend bind address/port.

* Each instance binds to a unique port (e.g. base port + index).
* Provide a predictable naming scheme for daemons (e.g. `rgw..`).
* TLS material should be shared across RGW daemons

### UI / frontend ideas

Could req. the user run `microceph enable rgw` mult. times with distinct ports, or provide a `microceph enable rgw --num N` flag where N daemons would be spawned with ports starting from a base port

Contributor guide

Open the contributing guide

Research direction

No files, tests, or entry points are named. Start by locating the RGW enable path and how daemon ports, names, and TLS material are represented; done means multiple RGW daemons can run per node with unique predictable ports and shared TLS material.

Written by the indexing model from the issue text.

Assessment

Tech stack
go
Domain
distributed-systems
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.