InfraMedia¶
Flussonic InfraMedia (hereinafter InfraMedia) is the operating system of media server appliances. It is a Linux with an immutable root, shipped as a single image together with the application, plus a management daemon that configures the machine over HTTP.
Its purpose is to turn a server into a finished appliance that runs without administration. The machine is configured not by a person at a console but by the application the appliance exists for, through the configurator API.
How the system is built is described on the technical architecture page, installation on the installation page, updates and rollback on the firmware update page.
Why an immutable system¶
The system and executable files of InfraMedia cannot be changed while the machine is in service: the root is assembled from prepared squashfs images and mounted read-only. Everything else follows from that.
- The machine in the rack is exactly what was shipped. A system file cannot be modified or swapped, so the edits accumulated over years that nobody remembers cannot happen either. Two machines of the same version are the same machine.
- The operating system and the application arrive as one delivery. They are built and tested together, and the seam between them belongs to the vendor, not to operations.
- Their versions are still separate. The application lives in a layer of its own, so updating it without touching the system is routine, and the other way round as well.
- An update lands whole or not at all. The new version is placed beside the running one and switched on by a single line in the loader. There is no half-updated state, and a rollback is that same line put back.
- No external repositories are needed. In service the machine installs no packages: everything it has arrived in the image.
What the system is made of¶
| Part | Purpose |
|---|---|
| Base layer | Linux with systemd, the management daemon, the web interface, kernel modules |
| Kernel and initrd | a kernel built for the target machine and the early boot script |
| Configurator | the management daemon: an HTTP API that configures the machine through systemd |
| Web interface | machine overview, interfaces, system, updates, power |
| Application layer | the media server (Mcaster, for example) as a layer of its own above the base |
postgres layer |
a shared component for the products that need a database |
Two versions¶
The operating system carries its own version number and the server firmware carries another. The firmware is InfraMedia of one version plus the application of another; both are recorded inside the boot file and shown in the machine's interface. The operating system number does not move because the application has been updated.
Documentation map¶
This documentation will help you: