Cockpit MicroShift
cockpit-microshift is a Cockpit plugin for guided single-node MicroShift
deployment. It installs onto an existing RHEL host over SSH, or creates a local
libvirt guest first and then applies the same in-guest RPM-based MicroShift
install model.
Quick Start
- RPM install
- Source install
- Open Cockpit
sudo dnf install -y rpm-build
cd /path/to/cockpit-microshift
./build-rpm.sh
sudo dnf install -y ./rpmbuild/RPMS/noarch/cockpit-microshift-*.noarch.rpm
Use the RPM path when you want a package-managed local install.
sudo mkdir -p /usr/share/cockpit/cockpit-microshift
sudo install -m 0644 src/cockpit-microshift/manifest.json /usr/share/cockpit/cockpit-microshift/
sudo install -m 0644 src/cockpit-microshift/index.html /usr/share/cockpit/cockpit-microshift/
sudo install -m 0644 src/cockpit-microshift/create.html /usr/share/cockpit/cockpit-microshift/
sudo install -m 0644 src/cockpit-microshift/overview.html /usr/share/cockpit/cockpit-microshift/
sudo install -m 0644 src/cockpit-microshift/cockpit-microshift.css /usr/share/cockpit/cockpit-microshift/
sudo install -m 0644 src/cockpit-microshift/cockpit-microshift.js /usr/share/cockpit/cockpit-microshift/
sudo install -m 0644 src/cockpit-microshift/cluster-list.js /usr/share/cockpit/cockpit-microshift/
sudo install -m 0644 src/cockpit-microshift/cluster-overview.js /usr/share/cockpit/cockpit-microshift/
sudo install -m 0755 src/cockpit-microshift/microshift_backend.py /usr/share/cockpit/cockpit-microshift/
Use the source path when you are iterating on local plugin files.
sudo systemctl enable --now cockpit.socket
Open https://<host>:9090 and navigate to MicroShift.
Current Support
| Area | Current path |
|---|---|
| MicroShift | 4.21 |
| Architecture | x86_64 |
| Cluster shape | single-node |
| Networking | static host and guest networking |
| Existing target | RHEL host over SSH |
| Local target | libvirt/KVM guest created on the Cockpit host |
| Local storage | directory-backed or logical libvirt pools |
Install Model
The final MicroShift installation follows the Red Hat Build of MicroShift
host-based RPM model. The create-host path is a convenience layer: it creates
a RHEL guest first, waits for SSH, and then runs the same in-guest install flow
used by an existing host.
Operator Screens

First Workflow
- Existing host
- Create host
- Review only
- Choose
Use an existing RHEL host. - Provide SSH host, SSH user, SSH key path, registry authentication, and the repository access mode.
- Review the rendered
config.yaml, request summary, and install plan. - Start the deployment and watch status from the same Cockpit page.
- Choose
Create a local libvirt guest. - Provide a RHEL qcow2 image source, bridge, static IP, gateway, DNS servers, and guest sizing.
- Review cloud-init inputs, guest plan,
virt-installplan, and MicroShift config. - Provision the guest, install MicroShift inside it, and return later for kubeconfig access or cleanup.
- Stay in the create flow until artifact review.
- Inspect
config.yaml, request JSON, install plan, and any create-host provisioning artifacts. - Deploy only after host networking, repository access, firewall intent, and registry authentication match the intended target.
Workflow Shape
Prepare
Confirm Cockpit, SSH access, registry authentication, repository access, and host networking.
Target model readyCreate
Choose an existing host or local libvirt guest, then enter host, network, and MicroShift settings.
Deployment intent capturedReview
Inspect rendered config, install plan, request summary, and create-host provisioning artifacts.
Generated artifacts verifiedInstall
Run the RPM-based install, track status, retrieve kubeconfig details, rebuild, or destroy local guests.
Local state trackedExplore
What The Plugin Covers
- guided MicroShift deployment onto an existing RHEL host over SSH
- optional local libvirt guest creation before the in-guest install
- rendered
config.yaml, request summary, install plan, cloud-init inputs, andvirt-installplan review - deployment status, recent output, kubeconfig retrieval, and local inventory
- destroy and clean rebuild actions for local
create-hostdeployments