MicroShift is a project that is exploring how OpenShift Kubernetes can be optimized for small form factor and edge computing.
Edge devices deployed out in the field pose very different operational, environmental, and business challenges from those of cloud computing. These motivate different engineering trade-offs for Kubernetes at the far edge than for cloud or near-edge scenarios. MicroShift's design goals cater to this:
- make frugal use of system resources (CPU, memory, network, storage, etc.),
- tolerate severe networking constraints,
- update (resp. rollback) securely, safely, speedily, and seamlessly (without disrupting workloads), and
- build on and integrate cleanly with edge-optimized OSes like Fedora IoT and RHEL for Edge, while
- providing a consistent development and management experience with standard OpenShift.
We believe these properties should also make MicroShift a great tool for other use cases such as Kubernetes applications development on resource-constrained systems, scale testing, and provisioning of lightweight Kubernetes control planes.
To run MicroShift, you need a machine with at least:
- x86_64/AMD64 or ARM64 CPU architecture
- Red Hat Enterprise Linux 8 with Extended Update Support (8.6 or later)
- 2 CPU cores
- 2GB of RAM
- 1GB of free storage space for MicroShift
The system requirements also include resources for the operating system unless explicitly mentioned otherwise.
For production deployments, MicroShift can be run on bare metal hardware or hypervisors supported and certified for the Red Hat Enterprise Linux 8 operating system.
- Edge systems certified for Red Hat Enterprise Linux
- Hypervisors certified for Red Hat Enterprise Linux
To install, configure and run MicroShift, refer to the following documentation:
- Getting Started with MicroShift
- MicroShift Configuration
- MicroShift Behind Proxy
- Load Balancer for User Workloads
- AMQ Broker on MicroShift
- MicroShift Mitigation of System Configuration Changes
- Firewall Configuration
- Debugging Tips
To build MicroShift from source and contribute to its development, refer to the following documentation:
- MicroShift Design
- Enabled OpenShift APIs
- MicroShift Development Environment on RHEL 8
- MicroShift Development Environment in Cloud
- Install MicroShift on RHEL for Edge
- OpenShift CI for MicroShift
- RPM Packages for Development and Testing
- MicroShift Storage Plugin Overview
- MicroShift Network Plugin Overview
Community documentation sources are managed at https://github.com/redhat-et/microshift-documentation and published on https://microshift.io.
To get started with MicroShift, please refer to the Getting Started section of the MicroShift User Documentation.
For information about getting in touch with the MicroShift community, check our community page.