openSUSE MicroOS

Micro Service OS built by the openSUSE community

Designed to host container workloads with automated administration & patching. Installing openSUSE MicroOS you get a quick, small environment for deploying Containers, or any other workload that benefits from Transactional Updates. As rolling release distribution the software is always up-to-date.

Documentation System Requirements Downloads Report a Bug

Philosophy

Is predictable

  • Is not altered during runtime
  • Will run the same artifacts consistently on every boot

Is scalable

  • Eliminates efforts in configuring individual instances during runtime
  • Can be rolled out easily repeatedly with predictable outcome

Is reliable

  • Automated recovery from faulty updates

Atomic Updates

Transactional Updates

Unique

By using btrfs with snapshots MicroOS uses a very space efficient way to store the file system’s history. All the configuration files in /etc are part of the snapshot and the rollback.

Flexible

  • No new package format is needed, use standard openSUSE RPMs
  • No size limitation, neither for partitions nor the operating system
  • Easy to enhance

Rollback

MicroOS is an Immutable OS, rollback is simple

  • Immutable: No changes on disk
  • Rollback by rebooting to an old BTRFS snapshot

Secure Updates

  • Get your updates via HTTPS
  • Packages and repositories are signed by our build system
  • Packages are verified
  • No updates are done in case of dependency conflicts
  • No waste of space: Filesystem snapshots get deleted in case of unsuccessful updates

Workloads

Applications are installed in containers rather than the root filesystem:

  • Isolated from the core filesystem
  • Reduced ability for malicious applications to compromise the system
  • New installation without reboot
  • Update in atomic way possible (create new, kill old)
  • Easy rollback
Documentation Registry

Debugging

Debugging Toolbox Container

  • Launches privileged container
  • Root filesystem available below /media/root
  • zypper to install the necessary tools, available without reboot
  • Persistent between usages

Memory

  • minimum 1 GB physical RAM
  • additional memory is needed for your workload, and to use some advanced YaST installation scenarios (eg. Remote Install)

Storage

  • / (root) partition: 5 GB available disk space minimum, 20 GB maximum
  • /var partition: 5 GB available disk space minimum, 40 GB or more recommended
  • increasing based on the needs of your container workloads