MicroShift is Developer Preview software only. For more information about the support scope of Red Hat Developer Preview software, see Developer Preview Support Scope.

Getting started

Red Hat build of MicroShift 4.12

Getting started with MicroShift

Red Hat OpenShift Documentation Team

Abstract

This document provides information to help you get started with MicroShift. You can find topics such as the architecture, Kubernetes overview, and how and where to use MicroShift.

Chapter 1. Understanding Red Hat build of MicroShift

Get an overview of what you can do with Red Hat build of MicroShift, a Kubernetes distribution derived from OpenShift Container Platform that is designed for optimizing small form factor devices and edge computing.

1.1. About Red Hat build of MicroShift

Working with resource-constrained field environments and hardware presents many challenges not experienced with cloud computing. Red Hat build of MicroShift enables you to solve problems for edge devices by:

  • Running the same Kubernetes workloads you run in the cloud, but at the edge.
  • Overcoming the operational challenge of minimal system resources.
  • Addressing the environmental challenges of severe networking constraints such as low or no connectivity.
  • Meeting the physical constraint of hard-to-access locations by installing your system images directly on edge devices.
  • Building on and integrating with edge-optimized operating systems such as Red Hat Enterprise Linux (RHEL) for Edge.

Red Hat build of MicroShift has the simplicity of single-node deployment with the functions and services you need for computing in resource-constrained locations. You can have many deployments on different hosts, creating the specific system image needed for each of your applications.

Chapter 2. Architecture

Learn the specifics of Red Hat build of MicroShift architecture including design intent, how it differs from OpenShift Kubernetes Engine, and API compatibility.

2.1. Architectural design

Red Hat build of MicroShift is a single-node container orchestration runtime designed to extend the benefits of using containers for running applications to low-resource edge environments. Because Red Hat build of MicroShift is primarily a platform for deploying applications, only the APIs and features essential to operating in edge and small form factor computing environments are included.

For example, Red Hat build of MicroShift contains only the following Kubernetes cluster capabilities:

  • Networking
  • Ingress
  • Storage
  • Helm

Red Hat build of MicroShift also provides the following Kubernetes functions:

  • Orchestration
  • Security

To optimize your deployments, use Red Hat build of MicroShift with a compatible operating system, such as Red Hat Enterprise Linux (RHEL) for Edge. Using Red Hat build of MicroShift and Red Hat Enterprise Linux (RHEL) for Edge together forms Red Hat Device Edge. Virtual machines are handled by the operating system in Red Hat build of MicroShift deployments.

Figure 2.1. Red Hat build of MicroShift as part of Red Hat Device Edge.

<Red Hat build of MicroShift is tasked with only the Kubernetes cluster services networking

The following operational differences from OpenShift Kubernetes Engine can help you understand where Red Hat build of MicroShift can be deployed:

2.2. Key differences from OpenShift Kubernetes Engine

  • Devices with Red Hat build of MicroShift installed are self-managing
  • Compatible with RPM-OStree-based systems
  • Uses only the APIs needed for essential functions, such as security and runtime controls
  • Enables a subset of commands from the OpenShift CLI (oc) tool
  • Does not support workload high availability (HA) or horizontal scalability with the addition of worker nodes

Figure 2.2. Red Hat build of MicroShift differences from OpenShift Kubernetes Engine.

<Red Hat build of MicroShift is tasked with only the Kubernetes cluster capabilities of networking

Figure 2 shows that OpenShift Kubernetes Engine has the same cluster capabilities as Red Hat build of MicroShift, and adds the following:

  • Install
  • Over-the-air updates
  • Cluster Operators
  • Operator Lifecycle Manager
  • Monitoring
  • Logging
  • Registry
  • Authorization
  • Console
  • Cloud Integration
  • Virtual Machines (VMs) through OpenShift Virtualization

In OpenShift Kubernetes Engine and other OpenShift Container Platform deployments, all of the components from the operating system through the cluster capabilities work as one comprehensive unit, with full cluster services for a multi-node Kubernetes workload. With Red Hat build of MicroShift, functions such as over-the-air-updates, monitoring, and logging, are performed by the operating system.

2.3. Red Hat build of MicroShift OpenShift APIs

In addition to standard Kubernetes APIs, Red Hat build of MicroShift includes a small subset of the APIs supported by OpenShift Container Platform.

APIAPI group

Route

route.openshift.io/v1

SecurityContextConstraints

security.openshift.io/v1

2.4. Red Hat build of MicroShift Kubernetes APIs

The Kubernetes API is fully accessible within Red Hat build of MicroShift and can be managed with the kubectl command-line tool or the OpenShift Container Platform CLI tool (oc). The oc binary is compatible with kubectl and offers a set of features that can be used with Red Hat build of MicroShift. Installing both tools to use with Red Hat build of MicroShift can help you access all of the resources you need to work with your deployments.

Legal Notice

Copyright © 2023 Red Hat, Inc.
The text of and illustrations in this document are licensed by Red Hat under a Creative Commons Attribution–Share Alike 3.0 Unported license ("CC-BY-SA"). An explanation of CC-BY-SA is available at http://creativecommons.org/licenses/by-sa/3.0/. In accordance with CC-BY-SA, if you distribute this document or an adaptation of it, you must provide the URL for the original version.
Red Hat, as the licensor of this document, waives the right to enforce, and agrees not to assert, Section 4d of CC-BY-SA to the fullest extent permitted by applicable law.
Red Hat, Red Hat Enterprise Linux, the Shadowman logo, the Red Hat logo, JBoss, OpenShift, Fedora, the Infinity logo, and RHCE are trademarks of Red Hat, Inc., registered in the United States and other countries.
Linux® is the registered trademark of Linus Torvalds in the United States and other countries.
Java® is a registered trademark of Oracle and/or its affiliates.
XFS® is a trademark of Silicon Graphics International Corp. or its subsidiaries in the United States and/or other countries.
MySQL® is a registered trademark of MySQL AB in the United States, the European Union and other countries.
Node.js® is an official trademark of Joyent. Red Hat is not formally related to or endorsed by the official Joyent Node.js open source or commercial project.
The OpenStack® Word Mark and OpenStack logo are either registered trademarks/service marks or trademarks/service marks of the OpenStack Foundation, in the United States and other countries and are used with the OpenStack Foundation's permission. We are not affiliated with, endorsed or sponsored by the OpenStack Foundation, or the OpenStack community.
All other trademarks are the property of their respective owners.