Skip to content

docs(kubernetes): Proxmox substrate in next/ with capmox v0.9.2, two troubleshooting rows - #792

Draft
Marian Koreniuk (themoriarti) wants to merge 1 commit into
cozystack:mainfrom
themoriarti:docs/proxmox-capmox-0.9.2
Draft

Marian Koreniuk (themoriarti) wants to merge 1 commit into
cozystack:mainfrom
themoriarti:docs/proxmox-capmox-0.9.2

Conversation

@themoriarti

@themoriarti Marian Koreniuk (themoriarti) commented Nov 7, 2026 •

Copy link
Copy Markdown
Contributor

What this PR does

Docs for the Proxmox VE substrate, from a live upgrade of capmox v0.7.7 → v0.9.2 on a management cluster (cozystack/cozystack#5243, which depends on cozystack/cozystack#4902).

next/kubernetes/proxmox-substrate.md (new). next/ had no Proxmox substrate page: it was added straight to v1.7/, so promoting next/ at the next release would drop it. This is the v1.7 page brought to what main will ship once cozystack/cozystack#5243 is merged:

  • support matrix: capmox v0.9.2 (API v1alpha2 as the storage version, v1alpha1 still served), in-cluster IPAM v1.1.1, Cluster API core v1.13.7;
  • the verify command reads the v1alpha2 status (ipAddresses is now a list keyed by net), and a note that kubectl returns v1alpha2, which has no status.ready, so readiness is the Ready condition;
  • "Limitations (v1.7)" → "Limitations", the ref points at /docs/next/kubernetes.

v1.7/kubernetes/proxmox-substrate.md and next/: two troubleshooting rows, both seen on the test cluster and both true for the shipped capmox v0.7.7:

  • capmox manager OOMKilled while it provisions a worker. capmox reads the bootstrap Secret through its controller-runtime cache, so it keeps every Secret of the management cluster in memory. On the test cluster that was 1236 Secrets / 87 MB of JSON (706 of them Helm release revisions), and both v0.7.7 and v0.9.2 were killed at the 256Mi limit with a working set of 232–255 MiB.
  • cannot reserve …B of memory … 0B available memory left. capmox subtracts the configured memory of every non-template VM on the node, stopped ones included. Three stopped 20 GiB VMs were enough to block a 126 GiB node that had 91 GiB free. Under v0.7.7 the failed clone is not retried.

Measured on the test cluster during the upgrade (one worker created and deleted, two runs per version; seconds from scale-up):

v0.7.7 v0.9.2
VM running (InfrastructureReady) 131 ¹ / 11 26 / 11
node Ready 193 ¹ / 89 94 / 89
delete → VM destroyed 11 / 16 16 / 16

¹ about two minutes of waiting for the static IP from IPAM v1.0.3.

Keep this a draft until cozystack/cozystack#5243 is merged: the next/ page describes it. The two v1.7 rows could go in on their own if you prefer to split.

Built locally with the deploy-preview command from netlify.toml (Hugo 0.164.0 extended, HUGO_ENV=preview, npm install && ./hack/download_openapi.sh && hugo --gc --minify --buildFuture && ./hack/mirror_latest.sh public): it succeeds, and both /docs/next/kubernetes/proxmox-substrate/ and /docs/v1.7/kubernetes/proxmox-substrate/ render. The Netlify deploy preview of this PR failed 38 s after it started and its log is not public, so I cannot tell why; it may need a re-run from the Netlify side.

…troubleshooting rows

next/ had no Proxmox substrate page, so the next release would have lost it.
The copy describes main once cozystack/cozystack#5243 lands: capmox v0.9.2,
in-cluster IPAM v1.1.1, Cluster API core v1.13.7, the v1alpha2 status fields
in the verify commands. Both versions get two troubleshooting rows found on a
live cluster: capmox OOMKilled by its cluster-wide Secret cache, and the
memory check that counts stopped VMs.

Assisted-by: LLM
Signed-off-by: Marian Koreniuk <moriarti@cp.if.ua>
@netlify

netlify Bot commented Nov 7, 2026 •

Copy link
Copy Markdown

❌ Deploy Preview for cozystack failed.

Name Link
🔨 Latest commit 690b075
🔍 Latest deploy log https://app.netlify.com/projects/cozystack/deploys/6aefa4d07eb6df733e443a13

@coderabbitai

coderabbitai Bot commented Nov 7, 2026

Copy link
Copy Markdown
Contributor

Important

Draft PR not reviewed

Draft PRs are not automatically reviewed by default.

  • Trigger a manual review

To automatically review draft PRs, update your CodeRabbit configuration:

reviews:
  auto_review:
    drafts: true
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

Share

This branch has not been deployed

No deployments
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.

1 participant