Skip to content

Using Berkelium

Berkelium offers multiple interfaces tailored to different scientific workflows.

The Berkelium User Portal is the fastest way to:

  • Monitor live resource consumption (CPU Cores, RAM, GPUs, and active pods).
  • Provision new namespaces for grants and research groups.
  • Download customized kubeconfig connection files.
  • Inspect active pod statuses and decommission stale namespaces.

When provisioning a namespace in the portal:

  • RFC 1123 Rules: Namespace names must be between 2 and 63 characters in length, contain only lowercase alphanumeric characters (a-z, 0-9) or hyphens (-), and must begin and end with an alphanumeric character.
  • Reserved Namespaces: Names must not conflict with cluster system namespaces (e.g., kube-*, *-system, *-operator, cert-manager, monitoring, gatekeeper-*, berkelium-*, etc.) or existing namespaces in the cluster.
  • Examples: bio-genomics, materials-sim, als-beamline, climate-downscaling.

The standard tool for interacting with the Kubernetes API server. Replace <your-namespace> with your provisioned namespace (e.g. bio-genomics):

Terminal window
# Check current namespace and cluster context
kubectl config current-context
# List running pods in your scientific namespace
kubectl get pods -n <your-namespace>
# Describe pod events and errors
kubectl describe pod <pod-name> -n <your-namespace>
Section titled “K9s — Interactive Terminal UI (Recommended CLI Tool)”

For a much faster, keyboard-driven terminal experience—especially when working over SSH—we recommend K9s (GitHub: derailed/k9s).

K9s provides a real-time curses-style terminal dashboard on top of your ~/.kube/config that continually watches your namespace resources and lets you view logs (l), drop into container shells (s), describe resources (d), edit manifests (e), or delete pods (Ctrl+d) with single keystrokes:

Terminal window
# Install on macOS or Linux via Homebrew
brew install derailed/k9s/k9s
# Launch K9s scoped to your research namespace
k9s -n <your-namespace>

Section titled “3. Radar — Visual Cluster Management & Control (Recommended GUI)”

For researchers who prefer a fast, modern browser interface to visually control and inspect their Kubernetes workloads, we recommend Radar (GitHub: skyhook-io/radar).

Radar is an open-source Kubernetes visibility and management tool that runs locally as a single lightweight binary or kubectl plugin using your existing ~/.kube/config and kubelogin OIDC credentials:

  • Interactive Resource & Topology Graph: Visualizes live relationships between your Pods, Batch Jobs, Deployments, Services, PersistentVolumeClaims, and HTTPRoute ingresses.
  • Direct Workload Control: Inspect, edit manifests, restart, scale, or delete pods and jobs in your namespace directly from a clean browser UI.
  • Live Log Streaming & Diagnostics: Stream real-time container logs, inspect scheduling events, monitor CPU/memory metrics, and browse container filesystems to quickly troubleshoot CrashLoopBackOff or OOMKilled failures.
  • Built-in AI MCP Server: Includes a local Model Context Protocol (MCP) server so AI coding assistants (such as Claude Desktop or Cursor) can query live cluster state alongside the Berkelium MCP Endpoint.
Terminal window
# Install on macOS or Linux via Homebrew
brew install skyhook-io/tap/radar
# Or install via shell script (Linux / macOS)
curl -fsSL https://get.radarhq.io | sh
# Launch the Radar UI in your browser using your current ~/.kube/config
kubectl radar

Learn more at radarhq.io.


For automated pipelines (e.g. beamline data ingestion triggering upon detector acquisition):

  • Science IT supports Kubernetes Service Accounts with tightly scoped RBAC role bindings.
  • Submit a consultation ticket at Science IT Support to obtain a machine robot token for your automated acquisition server.