Skip to content
buddy-cluster.dev

The panel, screen by screen

This page is a map of the panel: what each screen is for and what it shows. For how to actually do something, use the Guides. Most sections below link to the guide that covers it.

Dashboard

The screen you land on. It answers “is everything OK?” before it offers you anything to do.

  • Needs attention lists everything that actually wants your action right now — an offline node, a software update, an app update, anything else the panel has noticed — each one linking straight to the screen that resolves it. When there’s nothing to show, it says so plainly.
  • Four summary cards — Nodes, Kubernetes, Storage, Apps — give a one-glance count for each area and click through to it.
  • An Exposure card mirrors the Exposure screen’s own status: whether your cluster is set up to be reachable from the Internet, and if so, whether it currently is.
  • Recent activity shows the last few completed or failed operations, the same information the Activity panel keeps.

The first time you open the panel with nothing configured yet, this screen is replaced by a single “get started” button into master setup: see Run the setup.

Nodes — the list

One row per machine in your cluster:

ColumnWhat it tells you
Namethe machine’s name, and whether it’s the master or a worker
Statuswhether it’s online, and whether Kubernetes considers it ready
Versionsits software version, flagged if it’s behind the rest of the cluster
Alertscompact icons for a firmware update, a pending reboot, or something the panel expected to find and didn’t
Last seenhow long ago the panel last heard from it

Click a row to open that machine’s own detail screen. See Add your first node and Remove a node.

Node detail

Opening a node from the list takes you to a screen just for that machine, with its name, role, online status and Kubernetes-readiness in the header, and five tabs underneath.

Overview

Opens on a set of health cards — one for the node’s connection to the rest of the cluster, one for its Kubernetes membership — each showing a plain status and, when something needs fixing, a guided one-click repair action that walks through the fix and confirms afterward that it worked, rather than leaving you with a bare “not ready.”

Below that sits the node’s facts: hostname, operating system, processor type, memory, disks and firmware; its software version; its address on the cluster’s own private network; and when it was last seen. Anything the panel expected to find on this node and didn’t shows here as a warning. An observed state line for each area the panel keeps track of — storage, network, Kubernetes membership, its package list — shows how long ago that area was last checked.

Storage

This node’s own devices and pools: the physical disks attached to it, and any storage pools it holds, each with a usage bar. A disk that’s empty and ready offers Prepare, the same action covered in Prepare a disk and create a storage. A pool card shows a short id as its title, with the full location available on hover.

OS Packages

This node’s installed system-software inventory: searchable, with an update action. This tab is also where the distinction between two kinds of update is kept clear: routine software packages update here as an OS update, while a Raspberry Pi’s own firmware update is a separate, clearly labelled action on the Maintenance tab, so a firmware notice is never mistaken for a pending package update, or the other way around.

Maintenance

The node’s day-to-day upkeep actions: software updates, reboot, shutdown, and, on a Raspberry Pi, firmware and the migration-to-SSD launcher. Fully covered in Maintain a node.

Activity

This node’s own slice of the Activity log: every task and operation that ran on it, each row expandable to its full output. A Clear log action removes everything eligible in one step, instead of one row at a time.

Storage

One page, three tabs, for capacity across the whole cluster:

  • Pools (the default tab) — one card per pool: which node holds it, its filesystem, a capacity/used/free usage bar, and whether it’s shared over the network. Any storages drawn from it are listed inline.
  • Devices — the disks the panel has found, grouped by node. A disk that’s empty and ready offers Prepare; a disk that already holds a pool from a previously removed and re-added node offers Adopt instead, so its data is recovered rather than treated as blank.
  • Storages — the size-limited volumes your apps actually use: name, tier (kept on one node, or shared across the cluster), access mode, size and status, with the app it’s bound to if any.

A header strip totals capacity, allocated and free space across the whole cluster. See Prepare a disk and create a storage and Run an app on a storage.

Exposure

Everything about publishing something to the Internet, in one header, one status line, and two tabs. The status line answers “am I reachable?” first, before anything else, whether that’s connected and reachable, not reachable yet, or a specific service needing attention.

  • Published services — a table, one row per published service: its public name, what it points at inside the cluster, when it last synced, and the health of its certificate and (if you’re using one) its tunnel. Stop publishing is right there on the row.
  • Configuration — your connection method and provider details, and the destructive actions that remove them.

Two guided flows live behind this screen: the one-time readiness setup (getting your connection ready to publish anything at all) and the repeatable publish flow (adding one more service). See Get your connection ready, Publish a service and Manage and remove published services.

Cluster

Cluster-wide operations that aren’t specific to one node:

  • Kubernetes — the status of the Kubernetes layer underneath your cluster, the version each machine is running, access to the advanced Kubernetes dashboard for anyone who wants it, and the guided cluster-wide upgrade. See Upgrade Kubernetes.
  • Agent — the version of Buddy’s own node software running on each machine, and the guided update that brings them all to the same version. See Keep the cluster updated.