Skip to content

vmcluster: support storage node pools#2313

Open
AndrewChubatiuk wants to merge 1 commit into
masterfrom
support-storage-pools
Open

vmcluster: support storage node pools#2313
AndrewChubatiuk wants to merge 1 commit into
masterfrom
support-storage-pools

Conversation

@AndrewChubatiuk

@AndrewChubatiuk AndrewChubatiuk commented Jun 22, 2026

Copy link
Copy Markdown
Contributor

fixes #741

Adds pools to VMCluster, allowing to run multiple isolated groups of vmstorage nodes (and optionally dedicated vminsert nodes) within a single cluster. Each pool is queried by vmselect as a named storage group, enabling multi-retention.

Each entry in spec.pools has a name, an optional vmstorage override (merges onto the top-level spec.vmstorage), and an optional vminsert override (merges onto the top-level spec.vminsert).
When any pool is defined, the top-level vmstorage StatefulSet is not deployed; pools replace it entirely.
The top-level vminsert Deployment is deployed as a shared insert only when no pool defines its own dedicated vminsert.
vmstorage.retentionPeriod inside a pool overrides the cluster-level spec.retentionPeriod for that pool, enabling per-pool retention.

Pool resources are named vm<component>-<cluster>-<pool> (e.g. vmstorage-prod-hot).
An app.kubernetes.io/pool=<name> label is added to both the StatefulSet/Deployment selector and pod template labels, keeping per-pool selectors disjoint.

@cubic-dev-ai cubic-dev-ai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

3 issues found across 9 files

Reply with feedback, questions, or to request a fix.

Fix all with cubic | Re-trigger cubic

Comment thread api/operator/v1beta1/vmcluster_types.go
Comment thread internal/controller/operator/factory/vmcluster/vmcluster_pools.go
Comment thread internal/controller/operator/factory/vmcluster/vmcluster_pools.go
@AndrewChubatiuk AndrewChubatiuk force-pushed the support-storage-pools branch 2 times, most recently from cdeed73 to e6a9c61 Compare June 22, 2026 10:15

@cubic-dev-ai cubic-dev-ai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

1 issue found across 10 files

Reply with feedback, questions, or to request a fix.

Fix all with cubic | Re-trigger cubic

Comment thread api/operator/v1beta1/vmcluster_types.go Outdated
@AndrewChubatiuk AndrewChubatiuk force-pushed the support-storage-pools branch from e6a9c61 to 49538a8 Compare June 22, 2026 11:24

@cubic-dev-ai cubic-dev-ai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

2 issues found across 17 files

Reply with feedback, questions, or to request a fix.

Fix all with cubic | Re-trigger cubic

Comment thread internal/controller/operator/factory/vmcluster/vmcluster_pools.go
Comment thread api/operator/v1beta1/vmcluster_types.go
@AndrewChubatiuk AndrewChubatiuk force-pushed the support-storage-pools branch from 49538a8 to 1d48e0f Compare June 22, 2026 12:06

@cubic-dev-ai cubic-dev-ai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No issues found across 17 files

Re-trigger cubic

@AndrewChubatiuk AndrewChubatiuk force-pushed the support-storage-pools branch from f70ad28 to 67e105c Compare June 22, 2026 13:26
@AndrewChubatiuk AndrewChubatiuk force-pushed the support-storage-pools branch from 67e105c to 7016ee6 Compare June 23, 2026 03:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Multiple statefulsets for vmstorage nodes on vmcluster

1 participant