Proxbase

io.github.virtbase由 GitHub 帳號 virtbase 發布v0.4.0更新於 Oct 24, 2026

Create, test and break real Proxmox VE clusters in QEMU/KVM on the local host.

概覽

AI 產生的概覽

Proxbase 的 MCP 伺服器讓 AI 助理在本機 Linux 上建立、操作並刻意破壞真實的 Proxmox VE 叢集(以 QEMU/KVM 虛擬機執行)。

可以做什麼
  • 建立與銷毀 Proxmox VE 實驗叢集,支援多節點、ZFS 或 Ceph 儲存以及內部網路
  • 啟動與停止叢集、增減節點,並對整個叢集做快照與還原,包括可數秒內還原執行中叢集的即時快照
  • 呼叫 Proxmox API,並在單一節點上執行指令
  • 診斷叢集狀態並回復到快照
  • 注入斷電、節點卡死、拔網路線、網路分割、延遲與封包遺失等故障
適用情境
適合需要可隨時丟棄但貼近真實的 Proxmox VE 環境時使用,例如實驗、展示、CI 整合測試,或借助助理測試高可用性、隔離(fencing)與 Ceph 復原行為。
執行需求
以本機 stdio 程序執行,需要 Linux amd64 主機、/dev/kvm、QEMU 7.2+(qemu-system-x86_64、qemu-img),每節點約 4 GiB 記憶體;節點內再跑虛擬機需要巢狀虛擬化。可透過容器映像或 Go 安裝,未宣告任何憑證。
安裝前請注意
此伺服器會建立與銷毀虛擬機並注入故障,可能刪除叢集狀態與資料。產生的密碼與金鑰以未加密形式存放在其狀態目錄中,Web UI 與 SSH 透過本機轉送埠對外開放。macOS 支援為實驗性,Docker Desktop 沒有 /dev/kvm。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Proxbase,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

Proxbase

[CI] [Go version] [License]

Real Proxmox VE clusters on your Linux machine in about three minutes, for labs, demos and CI.

Proxbase starts every node as a QEMU/KVM virtual machine, installs it from the official Proxmox VE ISO with the automated installer, and joins the nodes into a cluster through the Proxmox API, with ZFS or Ceph storage, internal networks and an API token ready for Terraform or Ansible. No root, no Docker, no manual clicks.

console
$ proxbase create lab --nodes 3…created in 2m56sCluster lab: ready, quorate: yes, switch: runningNODE  VM       CLUSTER  IP           WEB UI                   SSHpve1  running  online   10.10.10.11  https://127.0.0.1:18001  127.0.0.1:18101pve2  running  online   10.10.10.12  https://127.0.0.1:18002  127.0.0.1:18102pve3  running  online   10.10.10.13  https://127.0.0.1:18003  127.0.0.1:18103

Features

  • Real nodes: each node is a VM with its own kernel installed from the stock ISO; nested virtualization lets you run guests inside the cluster.
  • Storage: ZFS pools per node, or hyperconverged Ceph (RBD and CephFS) that waits for HEALTH_OK.
  • Networking without root: several internal networks with roles (corosync link0/link1, Ceph public/cluster, migration), VLAN-aware and L2-only bridges, jumbo frames.
  • Lifecycle: start/stop, add and remove nodes (with Ceph draining), consistent snapshots of the whole cluster, live snapshots that resume a running cluster in seconds, resumable creates.
  • Fault injection: power loss, hung nodes, pulled cables, network partitions, latency and loss, to test HA, fencing and Ceph recovery.
  • Ready for automation: API token and CA export, proxbase env for shells, JSON and the bpg/proxmox Terraform provider, -o json and --progress json for scripts, and a GitHub Action for CI that can cache a ready cluster as a template.
  • For AI agents: proxbase mcp is an MCP server: agents create clusters, call the API, run commands on nodes, diagnose, reset to snapshots and inject faults through tools. A skill teaches them the workflow; in Claude Code: /plugin install proxbase --marketplace virtbase/proxbase.
  • Fast: --golden clones nodes from a cached base image: a 3-node cluster in under a minute (Ceph: 1.5 minutes), with a unique identity per node.
  • Declarative: one YAML file with a JSON schema; every flag overrides a field.
  • Docker Compose: proxbase up runs a cluster in the foreground with clean shutdown and a health check.

Quick start

Requirements: Linux on amd64 with /dev/kvm, QEMU 7.2+ (qemu-system-x86_64, qemu-img) and about 4 GiB RAM per node. Nested virtualization is needed for guests inside the nodes.

bash
go install github.com/virtbase/proxbase/cmd/proxbase@latest   # or see docs/install.mdproxbase doctor                                               # checks KVM, QEMU, memory, portsproxbase create lab --nodes 3

Then open https://127.0.0.1:18001 (user root, password from proxbase env lab), or:

bash
proxbase ssh lab pve2 -- pvecm statuseval "$(proxbase env lab)"            # PROXMOX_VE_ENDPOINT, PROXMOX_VE_API_TOKEN, …proxbase destroy lab --yes            # removes everything

Usage

bash
proxbase create ceph --nodes 3 --storage ceph       # hyperconverged Cephproxbase create fast --nodes 3 --golden             # clone from a cached base imageproxbase create -f examples/networks.yaml           # separate networks and VLANsproxbase node add lab --count 1                     # grow the clusterproxbase node remove lab pve2                       # shrink it againproxbase stop lab && proxbase snapshot save lab baseproxbase snapshot restore lab base && proxbase start labproxbase env lab --format terraform                 # provider block for bpg/proxmoxproxbase fault partition lab pve3                   # isolate a node, then: fault clearproxbase status lab --check                         # exit code for CI and health checksclaude mcp add proxbase -- proxbase mcp             # let an AI agent drive proxbaseproxbase upgrade                                    # install the latest release

In GitHub Actions:

yaml
- id: pve  uses: virtbase/proxbase@v0          # KVM, QEMU, cache, create; outputs endpoint, api-token, env-file- env: {PVE_ENV: "${{ steps.pve.outputs.env-file }}"}  run: . "$PVE_ENV" && go test ./... -tags integration- if: always()  run: proxbase destroy ci --yes

A cluster file looks like this (everything has a default):

yaml
apiVersion: proxbase.virtbase.com/v1alpha1kind: Clustername: labnodes:  count: 3  defaults: {cpus: 4, memory: 4G, dataDisks: [{size: 32G}]}networks:  - {name: cluster, cidr: 10.10.10.0/24, roles: [corosync]}storage:  zfs: [{name: tank, raid: single}]

Documentation

Topic
Getting startedFirst cluster, web UI, credentials
InstallationPackages, Homebrew, container image, verifying releases
ConfigurationEvery field, default and limit
Networking · Storage · LifecycleHow it works and what to expect
Fault injection · Golden imagesBreaking the cluster on purpose, faster creates
CI and automation · MCP serverGitHub Action, JSON progress, AI agents
Docker · CLI reference · Troubleshooting
ArchitecturePackages, create flow, state on disk
ExamplesReady-to-use cluster files for common setups

Status and limits

Proxbase is young; the file format may change before v1.0. It is tested with Proxmox VE 9.2 on Debian 13 (QEMU 10.0, AMD). Clusters need a Linux host with KVM: macOS builds are experimental and Docker Desktop has no /dev/kvm. Nodes are reachable from the host through forwarded ports on 127.0.0.1; host-reachable bridge networking is designed but not implemented. Proxbase builds labs: it stores generated passwords and keys unencrypted in its state directory.

Contributing

Issues and pull requests are welcome; see CONTRIBUTING.md and the code of conduct. Report security issues privately as described in SECURITY.md.

License

Apache-2.0

來源:README.md,提交 e75a820

工具

0
SourceWeft 曾在隔離沙箱中以無憑證方式啟動該軟體包一次,以列出其工具,但未能完成:該軟體包類型無法在沙箱中執行。

版本歷史

4
  1. v0.4.0最新Oct 23, 2026
  2. v0.3.0Oct 22, 2026
  3. v0.2.2Oct 22, 2026
  4. v0.2.1Oct 11, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分